xss跨站基本知识
XSS跨站
XSS跨站定义
跨站点脚本攻击,简称XSS,是指攻击者利用网站存在的漏洞,通过在网站中注入恶意脚本代码,从而使得用户在访问该网站时受到攻击。这些恶意脚本代码通常是JavaScript 代码,它们可以窃取用户的敏感信息,如用户名、密码等,并将这些信息发送到攻击者的服务器。和用户交互的地方均有可能产生跨站漏洞。
XSS跨站原理
XSS攻击的本质是利用Web应用程序中的漏洞,向网页注入恶意脚本代码,然后将这些代码嵌入到网页中,当其他用户访问这个网页时,恶意脚本将会被执行。
攻击者通常会在Web应用程序的输入框、评论框、搜索框等可输入内容的地方输入特定的脚本代码,这些代码可以被Web应用程序直接插入到网页中,导致网页上的所有用户都会受到攻击。
1 | 是前端漏洞,感觉和SQL注入差不多,只不过注入的是js语句。js脚本能实现什么,XSS就能实现什么。 |
XSS跨站前提条件
1、浏览器内核版本(IE、或其他高版本浏览器禁用js脚本)。
2、js代码的编写。
XSS详解
XSS跨站分类
1、反射型(危害较小,后端语言进行数据处理)
(1)、需要用户(被攻击者)去触发,相当于一次交互的过程。
(2)、!! 发包 x=xiaodi=>x.php(根据代码类型返回相应的处理结果,返回的不一定是php脚本执行结果)=>回包
(3)、只能自己排除其他漏洞后猜测。
2、存储型(危害大)–也是后端语言数据处理
(1)、如留言板、评论区等,攻击者填入数据(js脚本)后,会存储到数据库,那么我下一次访问也会显示(查询数据库)。攻击会一直持续到数据被删除为止。
(2)、!! 发包 x=xiaodi=>x.php(根据代码类型返回相应的处理结果,返回的不一定是php脚本执行结果)=>写到数据库的某个表=>x.php=>回显。
(3)、只能自己排除其他漏洞后猜测。
3、DOM型(是反射型的一种,大部分可以看作直接给前端处理,没有给后端)–js前端语言数据处理
(1)、DOM就是在操作网站的标签或者属性,是提前预写好的,DOM可以结合前面两个。
(2)、!! 发包 x=xiaodi=>x.php(根据代码类型返回相应的处理结果,返回的不一定是php脚本执行结果)=>本地浏览器的静态前端代码=>x.php(注意:若还有其他数据给x.php才继续后续操作,否则传给前端后直接回显)=>回包。
(3)、可以通过代码自己发现。
DOM型介绍以及重温前后端的区别:27:00
三种XSS的区别(建议多刷):35:00
1 | 以下形象的解释搬运自小迪安全 |
XSS跨站危害
● 1、盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号
● 2、控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
● 3、盗窃企业重要的具有商业价值的资料
● 4、非法转账
● 5、强制发送电子邮件
● 6、网站挂马
● 7、控制受害者机器向其它网站发起攻击(重定向语句)
● 8、窃取cookie的sessionid,冒充登录。
XSS攻击利用到最大就需要自己有台服务器用于窃取信息,还要利用一点社工,骗取别人点击恶意的链接。
XSS跨站攻击方式
XSS与cookie
就是诱使目标点击/登录某个页面,在他进入页面的一瞬间取得其cookie。这样我们便可以进入到对方的后台。
cookie:类似于身份信息,用于验证身份。
XSS与cookie(听讲知识点):54:00
XSS平台的使用:1:03:00
kali搭建BeEF联系XSS跨站
如何发现XSS跨站
1、工具扫
2、自己搭建平台XSS跨站攻击演示(略微提了一嘴如何发现):1:25:00
cookie与session
1、cookie存在浏览器 session 存在服务器
2、要管理员登录到后台的时候盗取的cookie才是真正的管理员cookie,否则只是普通用户的cookie。
3、cookie储存到本地,存活时间较长,小中型网站使用;session(占用服务器资源) 也称为会话,存储到服务器,存活时间较短,大型网站使用。
4、cookie是用户的身份证,session是服务器的用户身份核查表
5、它们都是用户凭据。
6、盗取cookie、会话(session)劫持。
小总结
1、XSS实现的条件较为苛刻,既要浏览器版本满足,要有漏洞,对方的浏览器不会拦截,对方有登陆过且留下痕迹,而且要对方触发。
2、需要配合一定社工。
3、发现存在这个漏洞可以尝试去用一下。
4、主要是对方管理员要经常登录。