无影(TscanPlus)
是基于webview2
环境,所以在有些使用场景上相对受限,比如一些windows服务器或者linux命令行等,而且图形化占用资源相对较高,现在刚好正值无影(TscanPlus)
正式版上线一年左右,Star数量恰好2k,应广大师傅需求便有了这版TscanClient
。
TscanClient
是无影(TscanPlus)
的命令行版本,保留了无影(TscanPlus)
的核心功能,包括端口扫描、URL指纹识别、POC漏洞验证、弱口令破解、目录扫描、JS敏感信息收集、子域名枚举以及网络资产测绘等功能模块。
TscanClient
与无影(TscanPlus)
可以共享配置文件config.yaml
和数据库 config.db
,且命令行版本能支持更多平台和系统,使用更加灵活便捷。
功能特点
-
多功能集成:提供端口扫描、漏洞验证、弱口令检测等多种安全检测功能,与 无影(TscanPlus)
相同也可以对接nuclei、afrog、xray等三方poc检测,一站式解决安全评估需求 -
高性能扫描:采用高并发设计,支持大规模目标快速扫描(启发式扫描) -
精准识别:集成丰富的指纹库和POC库,准确识别Web应用和常见漏洞 -
可定制化:支持自定义扫描策略,灵活配置扫描参数 -
跨平台兼容:命令行版本支持更多操作系统平台,使用更加灵活 -
资源共享:与TscanPlus共享配置文件和数据库,实现数据互通 -
友好输出:结果展示清晰直观,支持分离进度条显示,方便结果分析
核心功能模块
TscanClient 包含以下八个核心功能模块:
-
端口扫描 -
URL指纹识别 -
POC漏洞验证 -
弱口令破解 -
目录扫描 -
JS敏感信息收集 -
子域名枚举 -
网络资产测绘
适用场景
-
内网安全评估和资产梳理 -
外部渗透测试前的信息收集 -
企业安全基线检查 -
安全漏洞应急响应 -
自动化安全扫描流程 -
服务器环境下的批量扫描任务
软件下载
Github下载:https://github.com/TideSec/TscanPlus
参数详解与使用示例
各功能模块的使用
命令行格式:
TscanClient -m port,url,poc,crack,dir,js,domain,cyber [参数]
其中-m
是最重要的功能选择参数,控制是否开启端口扫描(port)、web探测(url)、Poc检测(poc)、密码破解(crack)、目录枚举(dir)、JS敏感信息(js)、子域名枚举(domain)、空间测绘(cyber)
八大功能。
多功能的联动等同于无影(TscanPlus)
的项目管理,当八项功能都开启时,会以下面的流程进行检测,前一项检测的所有结果都会输入给下一项检测作为输入。
空间测绘(cyber) -> 子域名枚举(domain) -> 端口扫描(port) -> 密码破解(crack) -> web探测(url) -> Poc检测(poc) -> 目录枚举(dir) -> JS敏感信息(js)
扫描结果:
1、TscanClient
在根目录下会产生TscanClient.txt
的日志文件,包含所有的日志和过程结果
2、TscanClient
还会将八大功能模块的结果分别存放在独立的txt文档中,方便结果查看。
3、TscanClient
还会把所有结果保存到config.db
中,该文件可以替换到无影(TscanPlus)
的配置目录下,使用无影(TscanPlus)
打开再利用。
除各单项功能外,最常用的几种组合模式:
1、端口扫描 -m port,poc,crack
2、web探测 -m url,poc,dir,js
3、子域名枚举 -m domain,port,url,poc
注意:如果资产太多,尽量不要开启太多功能,以免耗时太久或耗尽CPU资源。
通用参数
|
|
|
---|---|---|
-pr |
|
Default |
-m |
|
port,url,poc |
-o |
|
TscanClient.txt |
-no |
|
false |
-nocolor |
|
false |
-proxy |
|
|
通用参数使用示例:
# 使用默认端口进行ip扫描,同时开启指纹匹配poc和弱口令自动破解TscanClient -h 192.168.1.1/24# 对URL地址批量进行扫描,并进行poc检测和目录检测TscanClient -m url,poc,dir,js -uf urls.txt#对子域名进行枚举,并对发现的子域名进行端口扫描、poc检测、url指纹识别TscanClient -m domain,port,url,poc -d example.com# 指定项目名称并开启多个模块TscanClient -pr MyProject -m port,url,poc -h 192.168.1.1# 指定自定义输出文件TscanClient -h 192.168.1.1 -o scan-results.txt# 禁用彩色输出和结果保存TscanClient -h 192.168.1.1 -nocolor -no
端口扫描参数(port模块)
|
|
|
---|---|---|
-h |
192.168.1.1 ,192.168.1.1/24 |
|
-hn |
192.168.1.1/24 |
|
-p |
22 或1-65535 或22,80,3306 |
|
-pa |
-pa 3389 |
|
-hf |
|
|
-portf |
|
|
-t |
|
600 |
-nosmart |
|
false |
-si |
|
1,254 |
-sp |
|
icmp,80 |
-time |
|
3 |
-np |
|
false |
端口扫描使用示例:
# 扫描主机,使用默认端口和线程TscanClient -m port -h 192.168.1.1/24# 扫描单个主机的指定端口TscanClient -m port -h 192.168.1.1 -p 80,443,3306# 扫描C段网络上的常用Web端口,设置更高线程数TscanClient -m port -h 192.168.1.0/24 -p 80,443,8080,8443 -t 1000 # 使用主机列表文件进行扫描TscanClient -m port -hf hosts.txt -p 22,80,443# 在默认端口基础上添加自定义端口TscanClient -m port -h 192.168.1.1 -pa 8080,9000
Web应用扫描参数(url模块)
|
|
|
---|---|---|
-u |
|
|
-uf |
|
|
-cookie |
|
|
-wt |
|
10 |
-proxy |
|
|
-finger |
|
tiny |
Web应用扫描使用示例:
# 指定URL进行Web指纹识别TscanClient -m url -u http://example.com # 从文件加载URL列表并选择全量指纹TscanClient -m url,poc -uf urls.txt -finger all# 设置Cookie进行认证扫描TscanClient -m url -u http://example.com -cookie "session=123456"# 通过代理进行扫描TscanClient -m url,poc -u http://example.com -proxy http://127.0.0.1:8080 # 增加Web请求超时时间TscanClient -m url,poc -u http://example.com -wt 10
POC漏洞验证参数(poc模块)
|
|
|
---|---|---|
-pocpath |
无影(TscanPlus) 一样,仅支持xray 1.0 格式的Poc |
|
-pocname |
-pocname weblogic |
|
-full |
|
false |
-num |
|
20 |
-poclevel |
|
1+2+3+4+5 |
-poclist |
|
false |
-pd |
|
false |
POC漏洞验证使用示例:
# 对目标进行默认POC验证TscanClient -m poc -u http://example.com # 使用指定POC检测漏洞,在检测到Poc时打印请求和响应数据包TscanClient -m poc -u http://example.com -pocname weblogic -pd# 使用自定义POC路径TscanClient -m poc -u http://example.com -pocpath /path/to/pocs# poc不匹配指纹,会检测所有内置pocTscanClient -m poc -u http://example.com -full# 调整POC并发数和级别TscanClient -m poc -u http://example.com -num 50 -poclevel 1+2 # 打印所有可用POC列表TscanClient -poclist
弱口令检测参数(crack模块)
|
|
|
---|---|---|
-br |
|
1 |
-s |
|
all |
-user |
|
|
-pwd |
|
|
-c |
|
whoami |
-userf |
|
|
-pwdf |
|
|
弱口令检测使用示例:
# 对SSH服务进行弱口令检测TscanClient -m crack -h 192.168.1.1 -p 22 -s ssh# 使用自定义字典进行MySQL密码破解TscanClient -m crack -h 192.168.1.1 -p 3306 -s mysql -userf users.txt -pwdf pass.txt# 增加爆破线程数TscanClient -m crack -h 192.168.1.1 -p 3389 -s rdp -br 5# 指定用户名和密码进行爆破TscanClient -m crack -h 192.168.1.1 -p 22 -s ssh -user root,admin -pwd 123456,password # 爆破成功后执行命令TscanClient -m crack -h 192.168.1.1 -p 22 -s ssh -c "id"
子域名枚举参数(domain模块)
|
|
|
---|---|---|
-d |
|
|
-df |
|
|
-dc |
|
|
-api |
|
false |
子域名枚举使用示例:
子域名枚举时默认是开启API查询的,但API的key需要在config.yaml
文件中手动配置,也可把无影(TscanPlus)
的配置文件拷贝过来直接使用。
# 对单个域名进行子域名枚举TscanClient -m domain -d example.com # 对多个域名进行子域名枚举,并启用api检索,api的key需自行在config.yaml文件中配置TscanClient -m domain -d example.com,example.org -api# 使用自定义字典进行子域名枚举TscanClient -m domain -df domains.txt -dc /path/to/subdomains.txt# 子域名枚举后进行指纹识别和漏洞扫描TscanClient -m domain,url,poc -d example.com
目录扫描参数(dir模块)
|
|
|
---|---|---|
-u |
|
|
-uf |
|
|
-ds |
|
|
-dd |
|
|
目录扫描使用示例:
# 对目标URL进行目录扫描TscanClient -m dir -u http://example.com# 使用自定义字典进行目录扫描TscanClient -m dir -u http://example.com -dd /path/to/dirlist.txt # 设置目录扫描线程数TscanClient -m dir -u http://example.com -ds 50
JS敏感信息收集(js模块)
|
|
|
---|---|---|
-u |
|
|
-uf |
|
|
-cookie |
|
|
-wt |
|
10 |
-proxy |
|
|
JS敏感信息收集使用示例:
./TscanClient -m js -u https://example.com -wt 10
此命令对example.com进行JS文件敏感信息收集,Web请求超时10秒。
空间测绘参数(cyber模块)
|
|
|
---|---|---|
-ck |
|
|
空间测绘使用示例:
空间测绘API的key需要在config.yaml
文件中手动配置,也可把无影(TscanPlus)
的配置文件拷贝过来直接使用。
# 查询特定域名的资产TscanClient -m cyber -ck domain="example.com"# 查询特定IP段的资产TscanClient -m cyber -ck ip="192.168.1.0/24"# 查询特定服务的资产TscanClient -m cyber -ck service="nginx"# 空间测绘后进行进一步扫描TscanClient -m cyber,port,poc -ck domain="example.com"
批量扫描示例
# 对C段进行全面扫描TscanClient -h 192.168.1.0/24 -m port,url,poc,crack# 从URL文件加载并进行全面扫描TscanClient -uf target-urls.txt -m url,poc,dir,js
综合扫描示例
# 端口扫描+指纹识别+POC检测+弱口令破解TscanClient -h 192.168.1.0/24 -p 1-65535 -t 1000 -m port,url,poc,crack# 全功能扫描TscanClient -h 192.168.1.0/24 -d example.com -m port,url,poc,crack,dir,js,domain,cyber
与TscanPlus的关系
TscanClient 是 TscanPlus 的命令行版本,两者共享核心功能和检测引擎:
-
TscanClient 与 TscanPlus 共享配置文件 config.yaml 和数据库 config.db -
TscanClient 具有更好的跨平台兼容性,支持更多操作系统环境 -
TscanClient 适合自动化脚本集成和服务器环境使用 -
TscanPlus 提供图形界面,更适合需要可视化展示的环境
使用注意事项
-
扫描前请确保已获得授权,未经授权的扫描行为可能违反法律法规 -
建议先使用较小的线程数和端口范围进行测试,避免对目标系统造成过大负载 -
针对生产环境进行扫描时,建议在非业务高峰期进行 -
使用代理进行扫描时,请确保代理配置正确且稳定
更多信息可参考 TscanPlus 项目:https://github.com/TideSec/TscanPlus
原文始发于微信公众号(Tide安全团队):无影v2.7.5-命令行版上线
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论