实训5 Web漏洞利用
-
实验目的
了解SQL注入的概念和基本原理。
了解XSS跨站的概念和基本原理。
了解上传漏洞的概念和基本原理。
掌握通过SQL注入进行攻击的基本方法。
掌握通过XSS跨站进行攻击的基本方法。
掌握通过上传漏洞进行攻击的基本方法。
-
实验准备及注意事项
1.硬件:装有Windows操作系统的计算机1台。
2.软件:中国菜刀、phpStudy、DVWA。
3.严格按照实验步骤进行实验,实验结果以截图的形式进行保留。
-
背景知识
DVWA(Damn Vulnerable Web Application)是randomstorm的一个开源项目。一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程。
DVWA共有十个模块,分别是:
1.Brute Force(密码破解)
2.Command Injection(命令行注入)
3.CSRF(跨站请求伪造)
4.File Inclusion(文件包含)
5.File Upload(文件上传)
6.Insecure CAPTCHA (不安全的验证码)
7.SQL Injection(SQL注入)
8.SQL Injection(Blind)(SQL盲注)
9.XSS(Reflected)(反射型跨站脚本)
10.XSS(Stored)(存储型跨站脚本)
-
实验准备 安装部署phpStudy+DVWA漏洞演练平台
-
实验任务1 密码登录绕过
1、打开Brute Force界面,测试登陆框是否存在注入,提交敏感字符测试程序是否报错。在登录界面上输入用户名admin’(使用敏感字符‘)。
2、仔细观察登录系统时地址栏中的sql语句,在用户名密码提交界面上通过注入逻辑语句使登录判断失效,进入受保护页面。
adm
-
实验任务2 命令注入
1、打开Command Injection界面,在该界面提供一个命令行执行环境,输入ip地址返回ping命令的结果。
2、window和linux系统都可以用&&在同一行执行多条命令,尝试注入附加命令使目标主机(延时)关机。
&
-
实验任务3 跨站请求伪造
csrf全称为:Cross-site request forgery,是一种常见的web攻击。在场景中,攻击者会伪造一个请求(通常是一个链接),然后欺骗目标用户点击,用户一旦点击,攻击也就完成了。
1、打开CSRF界面,可在New password和Confirm new password处正常修改登录口令。
4、此时可诱骗其他用户点击该链接,通过伪造身份提交密码修改,直接跳转到修改密码成功的页面,成功把密码修改为123。
-
实验任务4 SQL注入
1、打开SQL Injection界面,该界面的功能是通过输入User ID查询Username。
2、输入1提交,将正常返回查询结果。
3、输入1’提交,将返回一个错误。
4、猜测使用的sql语句可能是:select First name and Surname from 表名 where id='输入的id'。
5、输入1' union select 1,database()#提交,得到数据库名称。
6、输入1' union select 1,table_name from information_schema.tables where table_schema='dvwa'#,得到数据库中的表名。
7、输入1' union select 1,column_name from information_schema.columns where table_name='users'#,得到users表的列名。
8、输入1' union select 1,concat(user,password) from users#,得到users表的所有用户名和密码。
-
实验任务5 跨站攻击
1、打开XSS(DOM)界面,点击Select按钮,修改地址栏中的default属性为<script>alert('XXX')</script>,回车后命令被执行。
2、打开XSS(Reflected)界面,点击Submit,修改地址栏中的name=<script>alert('XXX')</script>。
3、利用在线短链接生成器(https://www.985.so/)伪造该链接,将短链接发送给小伙伴,命令被执行。
4、打开XSS(Stored)界面,在message栏中填入<script>alert('XXX')</script>,提交后内容被存入数据库,之后每次进入该页面命令都会被执行。