XSS跨站脚本攻击
xss也算一种注入,是一种跨站脚本注入,
区别:
SQL注入是通过用户可控参数进行SQL注入SQL语句会带入到数据库中执行,受害者服务器的数据库
XSS 攻击目标是用户的浏览器,通常去攻击浏览器的cookie,也就是登录凭证,xss也就是盗取用户的cookie,用别人的cookie去登录别人的账号。
xss的步骤:
1.
XSS的三种类型与区分
1.反射性
也就是通过让用户点击事先准备好的URL,之后保存用户的cookie,之后用用户的cookie去登陆了网站,事先xss攻击
2.存储型
会把用户输入的数据存储在服务器端中,这种xss攻击可以持久化,并且更加稳定。
3.DOM型xss
HTML DOM定义了访问和操作HTML文档的标准方法。意思就是修改html的文档代码,在你打开文档的时候,就会自动执行代码中的内容,其本质和反射型是一样的。
对于cookie的简单应用
首先我们打开dvwa靶场
如何配置靶场这里就不会再做说明
进入到dvwa靶场,首先我们打开F12找到存储
之后我们输入账号和密码
admin password
之后发现我们的浏览器中存在了cookie
我们复制所需的cookie sotkhv8mjp2frq8utf81ckk336
删除浏览器中的cookie再次登录发现无法进入index.php
之后我们重新进入到页面中直接点击登录
我们发现系统会给我们一个新的cookie我们将之前复制的cookie的值带入到浏览器中
#########
上述用户名密码是因为我手贱点到了保存密码,但是又不想修改了
###########
我们加入cookie之后直接进入index.php页面
index.php页面是一个必须要有验证登录的页面,加入你登录成功了,服务器给你发放的cookie就可以通过验证
########
之后我们来学习存储型
打开我们的靶场
当我们在输入框中输入root 的时候,页面中也会显示root,思路来了,这时候我们在输入框中输入我们事先准备好的恶意代码,那么我们的浏览器就会执行这个代码。
例如我们使用JavaScript中的标签
<script>alert(document.cookie);</script>
在这个代码中alert这个的作用是弹出对话框
当我们在输入框中输入这个就可以弹出我们的cookie
这就是我们cookie xss漏洞的简单使用
接下来是存储型的xss注入漏洞,首先是打开靶场
我们在框中输入这个恶意代码
之后我们每点开一次都能够执行一次恶意代码
我们可以看到我们的代码存储在了数据库中,每次执行都可以被访问
抓包查看,代码已经被内嵌进去了
最大的好处:就在于攻击者不需要和用户交互
接下来是dom的xss攻击我们首先分析靶场
在我们点击了select之后,页面就会变成这样
多了一个English
原理上我们只需要把内容抓包写在English的位置上,我们就可以实现xss的注入攻击
在我们抓包之后,我们可以看到这个
我们只需要修改default就可以对目标进行xss的注入
首先我们在网页中查看代码
我们为了更清楚的看到这个lang的值,我们打开调试器,打个断点,发现了lang的值是English,那么我们大胆一点,把值改成恶意代码即可完成xss的注入
例如这样,就是进行了xss的注入攻击
#######################
接下来我们说一个重要一些的
首先是打开靶场我们发现了这个地方是存在xss漏洞的
http://192.168.6.127/DVWA-master/vulnerabilities/xss_r/?name=lethe#
之后我们重新构建一个页面我们这里构建一个简单的PHP页面
建立好之后我们把这个页面用Apache挂起来
挂起之后假设这个页面的地址是http://192.168.6.127/lethe.php之后我们可以用地址代替lethe完成替换,拼接成一个完整的URL
http://192.168.6.127/DVWA-master/vulnerabilities/xss_r/?name=http://192.168.6.127/lethe.phphttp://192.168.6.127/DVWA-master/vulnerabilities/xss_r/?name=
再对后面的数据进行url编码即可得到了一个跳转网页的时候回把你cookie保存的xss漏洞链接
http://192.168.6.127/DVWA-master/vulnerabilities/xss_r/?name=%E2%80%8B%0Ahttps%3A%2F%2F2.zoppoz.workers.dev%3A443%2Fhttp%2F192.168.6.127%2Flethe.php%0A%0A%E2%80%8B