情报信息收集能力

news/2024/12/23 23:51:20 标签: c++

在这里插入图片描述

红队专题-Web渗透之资产思路框架知识整理 钓鱼社工

  • 钓鱼自动化
  • zip域名
  • ARP欺骗
  • 快捷方式
  • Tools
    • burpsuite
      • App 抓包
    • ffuf
      • 模糊测试
      • QingScan
    • Wireshark
    • Cloud
      • CF
    • En-Decode
      • ffffffff0x
    • Info
      • dirb
      • dirmap
      • dirsearch
      • dnsenum
        • 使用测试
          • 常规使用
            • 使用字典文件进行dns查询
            • 子域名暴力查询部分
            • C类IP地址
            • IP块
      • HQLmap
      • masscan
        • 0x01 选项
        • 0x03 配置文件格式
        • windows 10 错误解决
      • nmap
    • OneForAll-master
      • ones
      • subDomainsBrute
      • sublist3r
      • theHarvester
      • weakfilescan
      • wydomain
  • 登录框
    • 口令缺陷
    • 浏览器准备
    • actuator
  • Goby
    • 学校站点的信息搜集
    • 操作系统探测
    • 国外大佬的信息收集(侦查)过程
    • 工具 | 批量获取域内桌面文件
    • 组合多位师傅的渗透测试十三字典,强烈建议收藏
    • 常见的web框架特征(二)
  • webpack下加密方法提取思路
    • 一个扫描常见敏感目录的burpsuite插件
    • 干货 | Burpsuite的使用tips总结
    • 实战 | ChatGPT在渗透中的利用
  • 密码重置
    • 邮箱替换
    • 验证码回复
  • 滑动验证码
  • 分类
    • 被动侦查-第三方服务打点
    • 主动访问-工具打点
      • 社工钓鱼
  • 00 网络空间组件检索平台/引擎
    • 安恒 sumap
    • Zoomeye 钟馗之眼 语法
    • Fofa
    • Shodan
    • 奇安信 hunter 鹰图平台
    • 三六零 Quake
    • 知道创宇 zoomeye 钟馗之眼
  • 01 搜索引擎
    • Google hack
      • github API 密钥、令牌和密码
    • 工具
      • ThunderSearch 闪电搜索器
  • 02 组织查询
      • 备案
      • whois信息
    • C段网站
  • 常见 服务器系统版本
  • 03 域名
    • 在线子域名爆破
    • 查子域
    • VirusTotal:
      • 域名信息收集工具 dnsenum
        • theHarvester
        • Layer
        • 子域名收集 DiscoverSubdomain
        • 子域名信息搜集工具 wydomain
        • 目标域名、DNS收集 subDomainsBrute
  • 04 IP
  • 05 旁站
    • 同ip网站
    • 站长之家
    • Web of Webscan
  • 06 指纹识别
    • 360
    • 云悉
  • 工具包
    • ObserverWard
    • Glass(镜)
    • Fav-up
    • ehole棱洞
    • 端口
      • 同服旁站/服务/banner识别 (cms、framework、OA、VPN、路由、中间件)
        • Glass
        • whatweb
      • url采集、webfile结构、备份扫描、文件目录遍历、未授权访问、logo
        • weakfilescan
        • dirsearch
        • Dirbuster
        • gobuster
        • Caesa
        • wpscan
  • 07 API提取
    • API 接口安全
    • Aakian
    • GitNacosConfig
  • 08 敏感信息泄露
    • 文件及路径
  • 09 小程序
      • 敏感信息泄露
        • github
        • 云泄露利用检测Tools
  • 自动化收集大厂 过滤
  • 运营商
    • 1 收集可能存在sql注入的url
      • 7KBscan
  • 路径 后缀
  • 公司架构
  • 产品规格
    • 网站标题
  • 全国省市县分布
      • 国外脆弱
  • 开源网络情报(OSINT)
  • 内网信息收集
  • 渗透测试-会话劫持-登陆劫持天涯论坛
  • 分类
  • 工具
  • 小白鼠
      • 先端口转发一下 防止小白鼠掉线
          • echo "1" > /proc/sys/net/ipv4/ip_forward 重启网络服务或主机后效果不再。
    • 知识引用
      • 新建标签页 打开wireshark
        • start
          • 正好看到以前发的帖子
          • 用这个号点击 逛一逛
      • stop
        • 另存为 Pcap格式
      • 停掉欺骗
          • 切换到所在文件夹 cd Desktop
        • 安装 ferret
        • 重放 自动生成hamster.txt文件
    • 开启代理端
      • 忘了路径
      • 搜索
      • 39个
      • 完成
    • 另一种方法 (推荐)网段实时劫持更新
  • 参考文章
    • 红队钓鱼邮件自动化工具

钓鱼自动化




该工具来自于Github:https://github.com/A10ha/EmailSender

有一个自己的私密邮件服务器,以防止在攻防演练中被溯源。


1、支持腾讯企业邮、网易企业邮、阿里企业邮、自建邮服SMTP授权账号。

2、批量发送钓鱼邮件,可暂停发送,可重置发送。

3、伪造发件人名称与发件人邮箱。

4、解析EML邮件原文文件,快捷利用邮件原文生成钓鱼邮件。

5、快捷邮件正文HTML代码编辑预览,快速本地调试邮件内容。

6、设置监听服务器,监听接收受害者是否打开邮件,适用于应急演练场景。

7、本地日志记录,自动创建本地日志目录,记录全量日志以及错误日志。

8、正文图片Base64编码插入,可用于插入钓鱼网页二维码等图片。



1、在PyCharm中打开源码包,并按照软件提示进行相关配置。



2、在 EmailReader.py 文件中填入你的邮件服务器地址及相关信息。



3、使用Pyinstaller进行exe打包。



接下来你可以进行合法使用了,以下是软件主界面:



在这里插入图片描述

zip域名

https://forum.butian.net/share/2086
邮件可信其二内容可信

.zip域名钓鱼链接
https://mp.weixin.qq.com/s/nIwFgy0crAR6eBv6dhU09Q


.zip顶级域名

合法的正斜杠字符 U+002F (/)和字符 U+2044 () 和 U+2215 ()

URL:https://google.com@bing.com 实际上会将用户带到bing.com。
根据 2016 年的 Chromium 错误报告,主机名中允许使用 Unicode 字符 U+2044 () 和 U+2215 (),但不会被浏览器视为正斜杠。这两个 unicode 字符都类似于合法的正斜杠字符 U+002F (/)。

如果我们制作一个像这样的 url:

https://google.com∕gmail∕inbox@bing.com
    
    

https://github.com/kubernetes/kubernetes/archive/refs/tags/v1.27.1.zip
我们把上面的网址,把https://后面的正斜杠全部换成U+2215(∕)斜杠,@在v.1.27.1.zip前加上运算符。

https://github.com/kubernetes/kubernetes/archive/refs/tags/@v1.27.1.zip

ARP欺骗



https://mp.weixin.qq.com/s/WyFPxxjSLF-diSUA-cTRZA
简析ARP欺骗

快捷方式


快捷方式钓鱼手法鉴赏


https://mp.weixin.qq.com/s/KRyzFaF5lfSHuQvBRppDAQ



在攻击者的角度,其也会利用快捷方式文件进行钓鱼攻击,甚至部分APT组织将LNK文件作为其投递的主要载荷。


快捷方式除了可以设置一些特殊的属性,
例如“目标”、“起始位置”、“备注”,

它还具备几个显而易见的特点:
1、支持带参数执行任意目标文件;
2、支持显示目标文件的图标;
3、支持设置文件启动方式;
4、文件名和后缀名可以完全自定义。

很明显这些特点是为了帮助用户更好地管理和使用快捷方式,但是利用这些特性,黑客也可以方便的进行网络钓鱼欺骗。

双击快捷方式导致命令执行

复杂利用手段分析

修改文件大小

修改文件图标
修改文件指向显示

攻击者可以通过修改快捷方式文件结构来任意控制目标指向的显示:
EnvironmentVariableDataBlock中的TargetAnsi及TargetUnicode,LinkTargetIDList结构中的第五个ItemID。


微软的官方介绍文档自行研究:https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-shllink/ae350202-3ba9-4790-9e9e-98935f4ee5af。
修改快捷方式文件LinkTargetIDList结构的ItemID
修改快捷方式文件EnvironmentVariableDataBlock中的TargetAnsi及TargetUnicode

Internet快捷方式
一种用于连接到互联网上的资源或网站的快捷方式,它同样支持任意图标修改、文件名和后缀名完全自定义。
与普通快捷方式相比,Internet快捷方式文件后缀名为.URL,并且支持与网页相关的属性设置。

还可以将url设置成file路径去执行文件,例如:URL=file:\\\\\\C:\\Users\\xxx.exe

欺骗伪造
除了url属性外,Internet快捷方式还支持很多其他的属性,攻击者可以通过IconFile、IconIndex来控制文件图标的显示,有个好消息是,由于微软取消了Internet快捷方式的远程ico引用,目前只能显示当前电脑中已存在的图标,不过即使如此攻击者仍然可以构建欺骗性很强的钓鱼文件。



很多APT组织的主力攻击手段(例如:海莲花、响尾蛇等)

Tools

burpsuite

 burpsuite 
  https://github.com/gh0stkey/HaE
  
  
  
  Burp Collaborator
  dnslog平台通过dns/http外带方式
  得到当前用户权限
  确定站库分离/是否出网
  
  外带出来的进程中发现有无Defender
  Burp Collaborator会将返回的Base64自动转为小写,而Base64又是区分大小写的,所以咱这里不能正常解码,换个dnslog平台就好了
  echo "xxxx" | base64 -d
  
  
  
Burpsuite抓包测试时可以用%20或+号来替代空格,如果直接用空格可能执行失败,浏览器会自动转URL编码,但Burpsuite不会
  
  
  
log2j

fastjson

shiro


sniff BurpSuite2022.3.2 jpy jython.jar


CO2
J2EEScan
Log4Shell Everywhere
Active Scan++
Autorize
Turbo Intruder
Software Vulnerability Scanner
Burp Bounty, Scan Check Builder
Decompressor
WSDL Wizard 
CSRF Scanner
CSRF Token Tracker
Additional Scanner Checks 
XSS Validator
SQLiPy Sqlmap Integration

G:\Hack\sniff\Burp\BurpSuite-Extensions\captcha-killer-modified-0.16-jdk8.jar
Burp验证码识别插件
G:\Hack\sniff\Burp\BurpSuite-Extensions\wooyun-payload-master\WooyunSearch\target\WooyunSearch-1.0-SNAPSHOT-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\APIKit-main\target\APIKit-1.0-SNAPSHOT-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\BurpBountyPro2.4\BurpBountyPro.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\BurpFastJsonScan\BurpFastJsonScan-1.0.6.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\BurpFastJsonScan-main\target\BurpFastJsonScan-2.2.2.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\BurpShiroPassiveScan-master\target\BurpShiroPassiveScan-1.0-SNAPSHOT.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\bypasswaf-master\bypasswaf.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\fastjsonScan-main\FastjsonScan.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\Fastjson-Scanner-master\fastjson_scan.py
G:\Hack\sniff\Burp\BurpSuite-Extensions\J2EEScan-master\target\J2EEScan-2.0.1-dev-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\JWT4B-master\target\JWT4B-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\log4j2burpscanner-main\target\log4j2burpscanner-0.18.6-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\log4j2Scan\log4j2Scan.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\shiroPoc-master\target\shiroPoc-0.5-SNAPSHOT-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\Struts2-RCE-master\struts_ext_v2.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\wooyun-payload-master\WooyunSearch\target\WooyunSearch-1.0-SNAPSHOT-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\BurpCrypto-0.1.9.1-full.jar
burpsuite加密插件的集合,支持AES / RSA / DES / ExecJs(在burpsuite中执行JS加密代码)
G:\Hack\sniff\Burp\BurpSuite-Extensions\burp-log4shell.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\BurpShiroPassiveScan-1.7.6.jar
对BurpSuite传进来的每个不同的域名+端口的流量进行一次shiro检测
G:\Hack\sniff\Burp\BurpSuite-Extensions\chunked-coding-converter-0.4.0.jar
一键分块传输编码,实现文件上传,命令执行,sql注入等漏洞的WAF绕过功能
G:\Hack\sniff\Burp\BurpSuite-Extensions\FastjsonScan.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\Fiora-v0.1-jar-with-dependencies.jar
漏洞PoC框架的图形版
G:\Hack\sniff\Burp\BurpSuite-Extensions\gason-0.9.6.jar
sqlmap.jar的gui版,使用gason插件+SqlMap测试SQL注入漏洞
G:\Hack\sniff\Burp\BurpSuite-Extensions\HackBar.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\HaE-2.1.3.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\log4j2burpscanner-0.18.2-jdk8.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\Log4j2Scan-0.10-SNAPSHOT-01.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\Log4JScan-1.0.0-SNAPSHOT-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\LoggerPlusPlus.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\passive-scan-client-0.3.0.jar
流量转发插件,用来拓展Burp的第三方功能 将正常访问网站的流量与提交给被动扫描器的流量分开,互不影响
G:\Hack\sniff\Burp\BurpSuite-Extensions\shiroPoc-0.5-SNAPSHOT-jar-with-dependencies.jar
G:\Hack\sniff\Burp\BurpSuite-Extensions\SpringScan_JDK8.jar 
G:\Hack\sniff\Burp\BurpSuite-Extensions\WooyunSearch-1.0-SNAPSHOT-jar-with-dependencies.jar



App 抓包

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ffuf

模糊测试

扫描二级域名


譬如我们想扫描baidu.com的子域名,可以使用**FUZZ.**baidu.com

FUZZ将会被替换为字典里的内容

字典 subdomains-top1million-110000.txt 

ffuf -u http://FUZZ.baidu.com -w subdomains-top1million-110000.txt

QingScan

漏洞挖掘工具 
缝合怪扫描

https://gitee.com/songboy/QingScan

在这里插入图片描述

Wireshark

抓包嗅探 wireshark

Cloud

CF

https://wiki.teamssix.com/cf/

https://github.com/teamssix/cf/releases


cf config


cf alibaba perm
./cf alibaba perm



cf alibaba ecs ls


cf alibaba ecs exec -b


https://zhuanlan.zhihu.com/p/540129832


 






En-Decode

ffffffff0x

加解密/编解码  
ctf  CryptionTool改进 
 https://github.com/ffffffff0x/BerylEnigma

Info

dirb

dirmap

dirsearch

python dirsearch.py -u http://xxxx -w 指定字典
  python dirsearch.py -u http://xxxx -r 递归目录(跑出目录后,继续跑目录下面的目录)
  python dirsearch.py -u http://xxxx --random-agents 使用随机UA 
选项:
-h、 --帮助显示此帮助消息并退出
强制性的:
-u URL,--URL=URL URL目标
-L URLIST,--url list=URLIST
URL列表目标
-e扩展,--EXTENSIONS=扩展
用逗号分隔的扩展列表(示例:php、asp)
字典设置:
-w单词列表,--WORDLIST=单词列表
-l、 --小写
-f、 --力延伸
强制扩展每个单词列表条目(如
DirBuster公司)
常规设置:
-s DELAY,--DELAY=延迟
请求之间的延迟(浮点数)
-r、 --递归Bruteforce
--抑制空,--抑制空
--scan subdir=SCANSUBDIRS,--scan subdr=SCANSUB DIRS
扫描给定-u|--url的子目录(分隔
以逗号表示)
--exclude subdir=EXCLUDESUBDIRS,--exclude subsdir=EXCRUDESUBDIR
递归过程中排除以下子目录
扫描(用逗号分隔)
-t螺纹计数,--threads=螺纹计数
线程数
-x EXCLUDESTATUSTODES,--exclude status=EXCLUDESATUSTODES
排除状态代码,用逗号分隔(例如:301,
500)
-c COOKIE,--COOKIE=COOKIE
--ua=用户代理,--用户代理=用户代理
-F、 --遵循重定向
-H标题,--header=标题
要添加的标题(例如:--header“Referer:
example.com“--header”用户代理:IE“
--随机代理,--随机用户代理
连接设置:
--timeout=超时连接超时
--ip=ip将名称解析为ip地址
--proxy=HTTPPROXY,--http proxy=HTTPPROXY
Http代理(示例:localhost:8080
--最大重试次数=最大重试次数
-b、 --按主机名请求
默认情况下,dirsearch将通过IP请求速度。
这将按主机名强制请求
报告:
--简单报告=简单输出文件
仅找到路径
--纯文本报告=PLAINTEXTOUTPUTFILE
找到具有状态代码的路径
--json报告=JSONOUTPUTFILE

dnsenum

# DNSenum简介
DNSenum是一款dns查询工具。
它能够通过Google或字典文件猜测可能存在的域名,
并对一个网段进行反向查询。
它不仅可以查询网站的主机地址信息,域名服务器和邮件交换记录,
还可以在域名服务器上执行axfr(区域传送)请求,
然后通过Google脚步得到扩展域名信息,
提取子域名并查询,
最后计算IP地址并执行whois查询,执行反向查询,把地址写入文件。 


# 参数选项
-h来查询全部命令
```cpp
 dnsenum VERSION:1.2.6
Usage: dnsenum [Options] <domain>
[Options]:
Note: If no -f tag supplied will default to /usr/share/dnsenum/dns.txt or
the dns.txt file in the same directory as dnsenum.pl
GENERAL OPTIONS:
  --dnsserver   <server>
                        Use this DNS server for A, NS and MX queries.
  --enum                Shortcut option equivalent to --threads 5 -s 15 -w.
  -h, --help            Print this help message.
  --noreverse           Skip the reverse lookup operations.
  --nocolor             Disable ANSIColor output.
  --private             Show and save private ips at the end of the file domain_ips.txt.
  --subfile <file>      Write all valid subdomains to this file.
  -t, --timeout <value> The tcp and udp timeout values in seconds (default: 10s).
  --threads <value>     The number of threads that will perform different queries.
  -v, --verbose         Be verbose: show all the progress and all the error messages.
GOOGLE SCRAPING OPTIONS:
  -p, --pages <value>   The number of google search pages to process when scraping names,
                        the default is 5 pages, the -s switch must be specified.
  -s, --scrap <value>   The maximum number of subdomains that will be scraped from Google (default 15).
BRUTE FORCE OPTIONS:
  -f, --file <file>     Read subdomains from this file to perform brute force. (Takes priority over default dns.txt)
  -u, --update  <a|g|r|z>
                        Update the file specified with the -f switch with valid subdomains.
        a (all)         Update using all results.
        g               Update using only google scraping results.
        r               Update using only reverse lookup results.
        z               Update using only zonetransfer results.
  -r, --recursion       Recursion on subdomains, brute force all discovered subdomains that have an NS record.
WHOIS NETRANGE OPTIONS:
  -d, --delay <value>   The maximum value of seconds to wait between whois queries, the value is defined randomly, default: 3s.
  -w, --whois           Perform the whois queries on c class network ranges.
                         **Warning**: this can generate very large netranges and it will take lot of time to perform reverse lookups.
REVERSE LOOKUP OPTIONS:
  -e, --exclude <regexp>
                        Exclude PTR records that match the regexp expression from reverse lookup results, useful on invalid hostnames.
OUTPUT OPTIONS:
  -o --output <file>    Output in XML format. Can be imported in MagicTree (www.gremwell.com)

 常用选项:
–enum 相当于–threads 5 -s 15 -w.
-v 详细显示所有进度和所有错误消息,加上-v会很慢,会动态的进行记录扫描,产生消息过多
-w 执行whois查询
-o [file] 以XML格式输出到指定文件中,方便之后查询
-t/ --timeout 超时设置,可以提高速度但可能会影响查询结果 

使用测试
常规使用
 
dnsenum -enum xxxx.com

在这里插入图片描述

基本的域名IP信息。

IN:INTERNET,表示资源都在Internet上

 A记录代表"主机名称""IP"地址的对应关系, 
 作用是把名称转换成IP地址,意思是说该主机的IP对应之意!

DNS使用A记录来回答"某主机名称所对应的IP地址是什么?"
主机名必须使用A记录转译成IP地址,
网络层才知道如何选择路由,并将数据包送到目的地.
你要知道的是A就代表了将域名转换成ip,现在好多的工具都有这个功能。 

在这里插入图片描述

对baidu进行区域传送,结果基本为refused,
现在绝大部分dns服务器对区域传送进行了严格的限制

 Scraping baidu.com subdomains from Google:                                                                                                
___________________________________________                                                                                               
                                                                                                                                          
Error GETing http://www.google.com/ncr:
Can't connect to www.google.com:80 (Network is unreachable) at /usr/bin/dnsenum line 971. 

dnsenum进行Google脚步搜索, 未连接到Google自然就无法使用这个功能。

使用字典文件进行dns查询
 dnsenum --noreverse -f /usr/share/dnsenum/dns.txt sina.com

在这里插入图片描述

子域名暴力查询部分
 Brute forcing with /usr/share/dnsenum/dns.txt:                                                                                            
_______________________________________________                                                                                           
                                                                                                                                          
11.baidu.com.                            60       IN    CNAME    jpaasmatrix.e.shifen.com.                                                
jpaasmatrix.e.shifen.com.                60       IN    CNAME    domain-offline.baidu.com.
domain-offline.baidu.com.                60       IN    A        182.61.62.50
a.baidu.com.                             5713     IN    CNAME    asp.e.shifen.com.
asp.e.shifen.com.                        10       IN    A        112.80.248.124
abc.baidu.com.                           434      IN    CNAME    www.a.shifen.com.
www.a.shifen.com.                        71       IN    A        180.101.49.11
www.a.shifen.com.                        71       IN    A        180.101.49.12
act.baidu.com.                           60       IN    CNAME    eopa.n.shifen.com.
eopa.n.shifen.com.                       92       IN    A        180.101.49.193
eopa.n.shifen.com.                       92       IN    A        180.101.49.192

CNAME(别名):
用于将DNS域名的别名映射到另一个主要的或规范的名称 。

意思就是通过CNAME将你访问的没有IP地址的域名间接的变成访问另外一个主机。

比如你要访问xxx.baidu.com实际访问的时候,
就变成了访问ww1.xxx.cn.w.xxxx.com,它只是起到一个映射的功能。

C类IP地址

在这里插入图片描述

IP块

在这里插入图片描述

由于dnsenum会使用反向查询IP地址,所以使用–noreserve跳过这个过程以加快查询速度。

HQLmap

cd HQLmap
And launch the project :

python HQLmap.py
Usage is then displayed :

Usage: HQLmap.py [options]

Options:
  -h, --help            show this help message and exit
  --url=URL             qURL to pentest
  --cookie=COOKIE       Cookie to test it
  --param=PARAM         Param to test
  --postdata=POSTDATA   Postdata (POST Method)  
  --message=BLIND_HQLI_MESSAGE
                        Message appearing while Blind HQLi
  --tables              Tries to gather as much tables as possible (With
                        Bruteforce)
  --T=TABLE             Name of the table you want to get
  --table_name_file=FILE_TABLE
                        DB file for name of tables
  --columns             Tries to gather as much columns as possible (With
                        Bruteforce)
  --C=COLUMN            Name of the column you want to get
  --column_name_file=FILE_COLUMN
                        DB file for name of columns
  --check               Check if host is vulnerable
  --user                Tries to get user() from dbms
  --count               Get count of specified table(s)
  --dump                Dump specified table(s) / column(s)
  --results             Enumerate results after session
  --verbose             Verbose mode
  
  
  选项:
-h、 --帮助显示此帮助消息并退出
--url=url qURL到pentest
--cookie=cookie cookie来测试它
--param=要测试的param参数
--postdata=postdata postdata(POST方法)
--消息=BLIND_HQLI_message 盲HQL时出现信息
--tables尝试收集尽可能多的表(使用
残暴)
--T=要获取的表的名称
--table_name_file=file_table
表名称的DB文件
--columns尝试收集尽可能多的列(使用
残暴)
--C=要获取的列的列名称
--column_name_file=file_column
列名称的DB文件
--check检查主机是否易受攻击
--user尝试从dbms获取user()
--count获取指定表的计数
--dump转储指定的表/列
--results在会话后枚举结果
--详细详细模式
python HQLmap.py --url="http://localhost:9110/ropeytasks/task/search?q=test&search=Search" --param=q --cookie="JSESSIONID=D50C4AD5BA0F05FA426CF660D9E069B7" --check
python HQLmap.py --url="http://localhost:9110/ropeytasks/task/search?q=test&search=Search" --param=q --cookie="JSESSIONID=A101D5D76A260E9ECD2E10ADE9DF0E47" --T=User --results --dump --postdata="username=Test&password=Test!!!"
$ python HQLmap.py --url="http://localhost:9110/ropeytasks/task/search?q=test&search=Search" --param=q --cookie="JSESSIONID=D50C4AD5BA0F05FA426CF660D9E069B7" --tables
https://github.com/PaulSec/HQLmap

masscan


# 介绍
masscan是一种Internet规模的端口扫描程序,可用于对
       Internet或内部网络。虽然默认传输速率仅为100
       数据包/秒,它可以可选地高达2500万个数据包/秒,速度
       足以在3分钟内扫描Internet的一个端口。


# 0x00 常用参数

```python
 masscan <IP地址/范围> -p端口选项 


masscan --ports 1-10000 192.168.26.131 --adapter-ip 192.168.26.1
--adapter-ip 指定发包的ip地址

--adapter-port 指定发包源端口

--adapter-mac 指定发包的源MAC地址

--router-mac 指定网关MAC地址

--exclude IP地址范围黑名单,防止masscan扫描

--excludefile 指定IP地址范围黑名单文件

--includefile,-iL 读取一个范围列表进行扫描

--wait 指定发包后的等待时间 

0x01 选项
<ip / range>:假定命令行上没有前缀“-”的任何内容
            是IP地址或范围。有三种有效格式。首先是
            单个IPv4地址,例如“ 192.168.0.1”。第二个范围是
            “ 10.0.0.1-10.0.0.100”。第三个是CIDR地址,例如“ 0.0.0.0/0”。在
            必须至少指定一个目标。可以指定多个目标。这个
            可以指定为多个选项,以空格分隔,也可以分隔
            以逗号作为单个选项,例如10.0.0.0/8,192.168.0.1。 

        •--range <ip / range>:与上述目标范围规格相同,不同之处在于
            一个命名参数而不是一个未命名参数。

        •-p <端口,--ports <端口>:指定要扫描的端口。一个
            可以指定端口,例如-p80。可以指定端口范围,例如-p
            20-25。可以指定端口/范围的列表,例如-p80,20-25。 UDP端口
            也可以指定,例如--ports U:161,U:1024-1100。

        •--banners:指定应抓取横幅,例如HTTP服务器版本
            部分,HTML标题字段等。仅支持一些协议。

        •--rate <packets-per-second>:指定所需的传输速率
            包。这可以是非常小的数字,例如0.1,用于在
            每101个速率,对于10000000这样的非常大的数字,
            尝试以每秒1000万个数据包的速度进行传输。以我的经验,Windows
            每秒可以处理25万个数据包,而最新版本的Linux可以
            每秒可以处理250万个数据包需要PF_RING驱动程序达到25
            百万个数据包/秒。

        •-c <文件名>-conf <文件名>:读取配置文件。格式
            配置文件的说明如下。

        •--resume <文件名>:与--conf相同,只是一些选项是自动的-
            临时设置,例如--append-output。配置文件格式
            如下所述。

        •--echo:不运行,而是将当前配置转储到文件中。这个
            然后,可以将文件与-c选项一起使用。此输出的格式为
            在下面的“配置文件”下进行介绍。

        •-e <ifname>-adapter <ifname>:使用命名的原始网络接口,例如
            “ eth0”或“ dna1”。如果未指定,则找到的第一个网络接口带有
            将使用默认网关。

        •--adapter-ip <IP地址>:使用此IP地址发送数据包。如果没有指定
            确定,则将使用绑定到网络接口的第一个IP地址。
            可以指定一个范围,而不是一个IP地址。注意:的大小
            范围必须是2的偶数幂,例如1248161024等。
            礼服。

        •--adapter-port <端口>:使用此端口号作为源发送数据包。如果
            如果未指定,则会在4000060000范围内选择一个随机端口。
            此端口应由主机防火墙(如iptables)过滤,以防止
            主机网络堆栈不会干扰到达的数据包。代替
            单端口,可以指定一个范围,例如40000-40003。注意:的大小
            范围必须是2的偶数幂,例如上面的示例
            总共4个地址。

        •--adapter-mac <mac-address>:使用此作为源MAC ad-发送数据包
            连衣裙。如果未指定,则绑定到网络的第一个MAC地址位于-
            将使用接口。

        •--router-mac <mac地址>:将数据包作为destina-发送到此MAC地址
            tion。如果未指定,则为网络接口的网关地址
            将被ARPed。

        •--ping:指示扫描应包括ICMP回显请求。这可能
            包含在TCP和UDP扫描中。

        •--exclude <ip / range>:将IP地址或范围列入黑名单,以防止其
        被扫描。这会覆盖任何目标规范,从而保证
        该地址/范围不会被扫描。与普通格式相同
        目标规范。

        •--excludefile <文件名>:在同一tar中读取排除范围列表
        得到上面描述的格式。这些范围会覆盖所有目标,从而防止
        他们被扫描。

        •--append-output:使输出追加到文件,而不是覆盖
        文件。

        •--iflist:列出可用的网络接口,然后退出。

        •--retries:每隔1秒发送一次的重试次数。注意
        由于此扫描程序是无状态的,因此无论是否回复,都会发送重试
        已经收到。

        •--nmap:打印帮助,而不是这些选项的nmap兼容性替代品。

        •--pcap-payloads:从libpcap文件中读取包含数据包的数据包,并
        提取UDP有效负载,并将这些有效负载与目标相关联
        港口。这些有效负载将在通过以下方式发送UDP数据包时使用
        匹配目标端口。每个端口仅记住一个有效负载。 Sim‐
        与--nmap-payloads类似。

        •--nmap-payloads <文件名>:以与nmap相同的格式读取文件
        文件nmap-payloads。它包含UDP有效负载,以便我们可以发送有用的UDP
        包而不是空包。与--pcap-payloads类似。

        •--http-user-agent <user-agent>:将现有的user-agent字段替换为
        执行HTTP请求时的指示值。

        •--open-only:仅报告打开的端口,不报告关闭的端口。

        •--pcap <文件名>:将收到的数据包(但不传输的数据包)保存到
        libpcap格式的文件。

        •--packet-trace:打印发送和接收的那些数据包的摘要。这是
        在低速率下很有用,例如每秒几个数据包,但会淹没
        终端机率很高。

        •--pfring:强制使用PF_RING驱动程序。如果出现以下情况,程序将退出
        PF_RING DNA漂移器不可用。

        •--resume-index:扫描中的暂停点。

        •--resume-count:退出前要发送的最大探测数。这是
        与--resume-index一起使用可将扫描切碎并分成多个
        实例,尽管--shards选项可能更好。

        •--shards <x> / <y>:在实例之间拆分扫描。 x是此扫描的ID,
        而y是实例总数。例如,--shards 1/2告诉
        实例发送每个其他数据包,并从索引0开始。
        --shards 2/2发送其他所有数据包,但从索引1开始,因此它
        与第一个示例不重叠。

        •--rotate <时间>:旋转输出文件,将其重命名为当前时间
        图章,将其移动到单独的目录中。时间以数量指定
        秒,例如“ 3600”一个小时。或者,可以指定时间单位,例如
        “每小时”,“或6小时”或“ 10分钟”。时间在均匀边界上对齐,因此
        如果指定为“ daily”,则文件将每天在午夜旋转。

        •--rotate-offset <时间>:时间的偏移量。这是为了适应时间-
        区域。

        •--rotate-dir <目录>:旋转文件时,这指定哪个目录
        尝试将文件移动到。一个有用的目录是/ var / log / masscan。

        •--seed <integer>:整数作为种子随机数生成器的种子。用一个
        不同的种子将导致数据包以不同的随机顺序发送。在-
        可以指定字符串时间,而不是整数,使用
        本地时间戳记,自动生成不同的随机扫描顺序。
        如果未指定种子,则时间为默认值。

        •--regress:运行回归测试,成功返回“ 0”,失败返回“ 1”。

        •--ttl <num>:指定传出数据包的TTL,默认为255。

        •--wait <seconds>:指定发送完成后的秒数
        在退出程序之前等待接收数据包。默认值为10秒
        onds。可以将字符串永久指定为永不终止。

        •--offline:实际不传输数据包。这对低费率很有用
        和--packet-trace以查看可能传输了哪些数据包。要么,
        它与--rate 100000000一起使用以比较快速传输的基准
        会工作(假设零开销驱动程序)。 PF_RING慢20%
        比离线模式下的基准测试结果要高。

        •-sL:不执行扫描,而是创建一个随机地址列表。
        这对于导入其他工具很有用。选项--shard,--re
        sume-index和--resume-count对于此功能很有用。

        •--interactive:在控制台上实时显示结果。没有效果
        如果与--output-format--output-filename一起使用。

        •--output-format <fmt>:指示输出文件的格式,可以是
        xml,二进制,grepable,列表或JSON。选项--output-filename必须
        指定。

        •--output-filename <filename>:将结果保存到的文件。如果pa
        rameter --output-format未指定,则默认为xml
        用过的。

        •-oB <文件名>:将输出格式设置为二进制并将输出保存在
        给定的文件名。这等效于使用--output-format--out-
        put-filename参数。然后可以使用--readscan选项读取
        二进制文件。二进制文件的大小比其XML等效项小,但是
        需要一个单独的步骤才能转换回XML或其他可读格式。

        •-oX <文件名>:将输出格式设置为XML并将输出保存在
        给定的文件名。这等效于使用--output-format xml和
        --output-filename参数。

        •-oG <文件名>:将输出格式设置为grepable并将输出保存在
        给定的文件名。这等效于使用--output-format grepable
        和--output-filename参数。

        •-oJ <文件名>:将输出格式设置为JSON并将输出保存在
        给定的文件名。这等效于使用--output-format json和
        --output-filename参数。

        •-oL <文件名>:将输出格式设置为简单列表格式并保存
        以给定的文件名输出。这等效于使用--output-format
        list--output-filename参数。

        •--readscan <binary-files>:从-oB选项中读取-oB选项创建的文件
        扫描,然后根据其他格式以其他格式之一输出它们
        需求线参数。换句话说,它可以采用
        输出并将其转换为XML或JSON格式。
 
0x03 配置文件格式
 配置文件使用与命令行上相同的参数名称,但是不带-前缀,并且名称和值之间带有=号。前任足够的配置文件可能是: 

    # targets
           range = 10.0.0.0/8,192.168.0.0/16
           range = 172.16.0.0/14
           ports = 20-25,80,U:53
           ping = true

           # adapter
           adapter = eth0
           adapter-ip = 192.168.0.1
           router-mac = 66-55-44-33-22-11

           # other
           exclude-file = /etc/masscan/exludes.txt

默认情况下,程序将从文件/ etc / mass中读取默认配置
可以/masscan.conf。这对于系统特定的设置很有用,例如
--adapter-xxx选项。这对于排除的IP地址也很有用,这样您就可以
可以跳过整个危险的地址(例如那些危险的地址),扫描整个Internet
归国防部所有,不要犯任何意外错误。

CONTROL-C行为
当用户按下ctrl-c时,扫描将停止,并且当前的状态
扫描将保存在文件“ paused.conf”中。可以使用
--resume选项:

            # masscan --resume paused.conf

该程序不会立即退出,但会等待默认的10秒
从Internet接收结果并保存结果,然后完全退出。
可以使用--wait选项更改此时间。

简单的例子
以下示例扫描所有专用网络以查找Web服务器,并打印所有
打开找到的端口。

            # masscan 10.0.0.0/8 192.168.0.0/16 172.16.0.0/12 -p80 --open-only

下面的示例扫描整个Internet的DNS服务器,获取它们的
版本,然后将结果保存在XML文件中。

            # masscan 0.0.0.0/0 --excludefile no-dod.txt -pU:53 --banners --output-filename dns.xml

您应该能够将XML导入数据库等。

以下示例读取名为bin-test.scan的二进制扫描结果文件并
将结果打印到控制台。

           #masscan --readscan bin-test.scan

以下示例读取名为bin-test.scan的二进制扫描结果文件
创建一个名为bin-test.xml的XML输出文件。

           #masscan --readscan bin-test.scan -oX bin-test.xml

高级示例
假设您要扫描整个Internet并在整个扫描范围内进行扫描
三台机器。 Masscan将使用以下命令在所有三台机器上启动
命令行:

           # masscan 0.0.0.0/0 -p0-65535 --shard 1/3
           # masscan 0.0.0.0/0 -p0-65535 --shard 2/3
           # masscan 0.0.0.0/0 -p0-65535 --shard 3/3

另一种方法是使用“恢复”功能。扫描具有一个内部索引
从零到端口数乘以IP地址数。跟随
较低的示例显示了将扫描分为1000个项目的块:

           # masscan 0.0.0.0/0 -p0-65535 --resume-index 0 --resume-count 1000
           # masscan 0.0.0.0/0 -p0-65535 --resume-index 1000 --resume-count 1000
           # masscan 0.0.0.0/0 -p0-65535 --resume-index 2000 --resume-count 1000
           # masscan 0.0.0.0/0 -p0-65535 --resume-index 3000 --resume-count 1000

脚本可以使用它来在其他许多机器上拆分较小的任务,例如
亚马逊EC2实例。随着每个实例完成一项工作,脚本可能会发送一个
请求中央协调服务器进行更多工作。

 

意外重置
使用适配器的默认IP地址(内置)扫描TCP时
堆栈将生成RST数据包。这样可以防止横幅被抓住。有
有两种解决方法。第一种方法是创建防火墙规则以阻止
从堆栈看到的端口。工作方式取决于操作
系统,但在Linux上看起来像这样:

           #iptables -A INPUT -p tcp -i eth0 –dport 61234 -j DROP

然后,在扫描时,必须使用相同的端口作为源:

            # masscan 10.0.0.0/8 -p80 --banners --adapter-port 61234

另一种方法是“欺骗”另一个IP地址。该IP地址必须为
在本地网络范围内,但任何一个都不得使用
您自己的计算机或网络上的另一台计算机。一个例子
看起来像:

           # masscan 10.0.0.0/8 -p80 --banners --adapter-ip 192.168.1.101

设置您的源IP地址是这种方式的首选方式
扫描器。
 
 masscan的发包速度非常快,在windows中,它的发包速度可以达到每秒30万包;在Linux中,速度可以达到每秒160万。masscan在扫描时会随机选择目标IP,所以不会对远程的主机造成压力。默认情况下,masscan的发包速度为每秒100包,为了提高速度,可以设置为 --rate 100000。

详细参数
与nmap兼容的参数不再赘述,接下来讲解一下masscan独有的使用方法。

IP地址范围,有三种有效格式,1、单独的IPv4地址 2、类似"10.0.0.1-10.0.0.233"的范围地址 3、CIDR地址 类似于"0.0.0.0/0",多个目标可以用都好隔开
-p <ports,--ports <ports>> 指定端口进行扫描
--banners 获取banner信息,支持少量的协议
--rate <packets-per-second> 指定发包的速率
-c <filename>, --conf <filename> 读取配置文件进行扫描
--echo 将当前的配置重定向到一个配置文件中
-e <ifname> , --adapter <ifname> 指定用来发包的网卡接口名称
--adapter-ip <ip-address> 指定发包的IP地址
--adapter-port <port> 指定发包的源端口
--adapter-mac <mac-address> 指定发包的源MAC地址
--router-mac <mac address> 指定网关的MAC地址
--exclude <ip/range> IP地址范围黑名单,防止masscan扫描
--excludefile <filename> 

http://www.niftyadmin.cn/n/5797126.html

相关文章

Docker核心技术和实现原理

目录 1. Docker镜像原理介绍1.1 操作系统基础1.2 Union FS(联合文件系统)1.3 再看 Docker 镜像是什么 2. 镜像的实现原理2.1 Docker 分层存储实现原理2.2 docker 镜像加载原理 3. 镜像分层存储实战3.1 基础知识3.2 实战过程 4. overlay 文件系统工作实战5. Docker卷原理介绍5.1…

图解HTTP-HTTP协议

HTTP HTTP是一种不保存状态&#xff0c;即无状态的协议。HTTP协议自身不对请求和响应之间的通信进行保存。为了保存状态因此后面也有一些技术产生比如Cookies技术。 HTTP是通过URI定位网上的资源&#xff0c;理论上将URI可以访问互联网上的任意资源。 如果不是访问特定的资源…

前端开发问题记录

1. vue3生产包部署在第三方平台的iframe&#xff0c;页面空白&#xff0c;部分资源无法加载 因为vue3采取的是按需加载的一个策略&#xff0c;因为有些第三方平台不支持这种模式&#xff0c;特别第三方是通过iframe去加载vue3的生产包&#xff0c;很容易出现页面空白&#xff…

生产制造管理系统:现代制造业的智能引擎

在当今快速变化的商业环境中&#xff0c;企业要想保持竞争力&#xff0c;就必须不断优化生产流程&#xff0c;提高生产效率&#xff0c;降低成本&#xff0c;并确保产品质量。这正是生产制造管理系统&#xff08;Manufacturing Execution System&#xff0c;简称MES&#xff09…

python常用内建模块:collections

collections 是 Python 标准库中的一个模块&#xff0c;它提供了许多有用的容器数据类型&#xff0c;这些类型是对内置类型的扩展或补充。以下是 collections 模块中一些常用的类和它们的基本用法&#xff1a; 导入模块 首先&#xff0c;你需要导入 collections 模块&#xf…

前端知识补充—CSS

CSS介绍 什么是CSS CSS(Cascading Style Sheet)&#xff0c;层叠样式表, ⽤于控制⻚⾯的样式 CSS 能够对⽹⻚中元素位置的排版进⾏像素级精确控制, 实现美化⻚⾯的效果. 能够做到⻚⾯的样式和结构分离 基本语法规范 选择器 {⼀条/N条声明} 1&#xff09;选择器决定针对谁修改…

271-基于XC7V690T的12路光纤PCIe接口卡

一、板卡概述 基于XC7V690T的12路光纤PCI-E接口卡&#xff0c;用于实现多通道高速光纤数据接收和发送&#xff0c;板卡兼容PCIe 2.0和PCIe 3.0规范&#xff0c;利用PCI-E Switch PEX 8748实现FPGA芯片与计算机的通信&#xff0c;计算机与板卡接口处提供PCI-e 16速接口&#xff…

【前端】Jquery拍照,通过PHP将base64编码数据转换成PNG格式,并保存图像到本地

目录 一、需求 二、开发语言 三、效果 四、业务逻辑&#xff1a; 五、web端调用摄像头 六、示例代码 1、前端 2、后端 一、需求 web端使用jquery调用摄像头拍照&#xff0c;并使用PHP把base64编码转换成png格式图片&#xff0c;下载到本地。 由于js不能指定图片存储的…