常见的信息收集工具和手段
1、DNS
收集:whios查询、站长查询、dnsmap、DNS域传输漏洞(通过kall的dnsenum工具获取dns域中域名)、DNS历史记录解析
推荐一个除站长之家外的WHOIS查询网站 https://www.siteindices.com/
CDN识别:Nslookup、多地ping查询
CDN绕过:
1)查子域名(subdomain获取子域名IP、暴力破解(DEmonv1.2))
2)历史DNS记录:
https://dnsdb.io/zh-cn/
https://x.threatbook.cn/
http://toolbar.netcraft.com/site_report?url=
http://viewdns.info/
http://www.17ce.com/
https://community.riskiq.com/
http://www.crimeflare.com/cfssl.html
公开DNS源https://sacns.io/study/sonar.fdns_v2
DNS历史解析:https://dnsdb.io/zh-cn
3)社工联系客服,举报该网站有某某某不好的东西,客服可能会把cdn给他解除了
4)检索:
http://viewdns.info/、http://domaintools.com/、http://toolbar.netcraft.com/、http://crimeflare.com 、http://toolbar.netcraft.com、http://who.is、http://lcx.cc/?i=3447、http://www.yougetsignal.com/tools/web-sites-on-web-server/、http://cdn.chinaz.com/、https://www.cdnplanet.com/、https://github.com/3xp10it/xcdn
5)直接从CDN本身入手(CDN注册)
6)Mx记录或邮件
很多站点都有发送邮件sendmail的功能,如Rss邮件订阅等。而且一般的邮件系统很多都是在内部,没有经过CDN的解析。可在邮件源码里面就会包含服务器的真实 IP。
7)网络空间引擎搜索法:zoomeye、fofa、shodan
通过这些公开的安全搜索引擎爬取得历史快照,主要得一些特征总结如下:
特有的http头部(如server类型、版本、cookie等信息)、特定keyword(如title、css、js、url等)、特定的IP段搜索(如fofa支持C段搜索),有些时候爬取的时候不一定含有上面那些特征,但是我们仍然需要仔细排查。
8)查询Https证书:https://censys.io/
9)利用网站漏洞(SSRF 反弹shell等)
10)敏感文件泄露(info.php、phpinfo.php探针之类)
11)全网扫描(Nmap/Masscan扫整个互联网)
2、fuzz子域名
爬取方法:爬取页面a标签、js的url、form表单的action、源代码的注释url等
方法:
1)工具
subdomainscan、Layer子域名挖掘机、wwwscan、御剑、burp、websploit、webrobot
2)爬行
burpsuite、轻量级网站目录爬行、awvs、明小子、穿山甲、阿D、havij、amass被动、massdns主动
3)猜测
默认后台猜解或者fuzz测试,fuzz源码文件,中间件、框架、cms等开发页面以及配置文件,asp、aspx、jsp、php等语言配置文件,IIS短文件名等漏洞。
system、check等字眼快速判断目录的作用,文件目录太多,可以根据目录的直译来判断该文件的作用。
3、指纹识别
工具:御剑web指纹识别系统、whatweb、wappalyzer、Web Develpoer、WTFScan
在线识别:http://www.whatweb.net、https://github.com/Tuhinshubhra/CMSeeK、http://whatweb.bugscaner.com/look/、www.yunsee.cn/finger.html、www.zoomeye.org/
1)特定文件的MD5
一些网站的特定图片文件、js文件、CSS等静态文件,如favicon.ico、css、logo.ico、js等文件一般不会修改,通过爬虫对这些文件进行抓取并比对md5值,如果和规则库中的Md5一致则说明是同一CMS。这种方式速度比较快,误报率相对低一些,但也不排除有些二次开发的CMS会修改这些文件。获得哈希值,工具对比。
2)正常页面或错误网页中包含的关键字
先访问首页或特定页面如robots.txt等,通过正则的方式去匹配某些关键字,如Powered by Discuz、dedecms等。
或者可以构造错误页面,根据报错信息来判断使用的CMS或者中间件信息,比较常见的如tomcat的报错页面。
3)请求头信息的关键字匹配
根据网站response返回头信息进行关键字匹配,whatweb和Wappalyzer就是通过banner信息来快速识别指纹,之前fofa的web指纹库很多都是使用的这种方法,效率非常高,基本请求一次就可以,但搜集这些规则可能会耗时很长。而且这些banner信息有些很容易被改掉。根据response header一般有以下几种识别方式:
查看http响应报头的X-Powered-By字段来识别;
根据Cookies来进行判断,比如一些waf会在返回头中包含一些信息,如360wzws、Safedog、yunsuo等;
根据header中的Server信息来判断,如DVRDVS-Webs、yunjiasu-nginx、Mod_Security、nginx-wallarm等;
根据WWW-Authenticate进行判断,一些路由交换设备可能存在这个字段,如NETCORE、huawei、h3c等设备。
4)部分URL中包含的关键字,比如wp-includes、dede等URL关键特征
通过规则库去探测是否有相应目录,或者根据爬虫结果对链接url进行分析,或者对robots.txt文件中目录进行检测等等方式,通过url地址来判别是否使用了某CMS,比如wordpress默认存在wp-includes和wp-admin目录,织梦默认管理后台为dede目录,solr平台可能使用/solr目录,weblogic可能使用wls-wsat目录等。
5)开发语言的识别
web开发语言一般常见的有PHP、jsp、aspx、asp等,常见的识别方式有:
通过爬虫获取动态链接进行直接判断是比较简便的方法。
asp判别规则如下<a[^>]*?href=(‘|”)[^http][^>]*?\.asp(\?|\#|\1),其他语言可替换相应asp即可。
通过X-Powered-By进行识别
比较常见的有X-Powered-By: ASP.NET或者X-Powered-By: PHP/7.1.8
通过Set-Cookie进行识别
这种方法比较常见也很快捷,比如Set-Cookie中包含PHPSSIONID说明是php、包含JSESSIONID说明是java、包含ASP.NET_SessionId说明是aspx等。
4、安全防护判断
1)cdn
有些云cdn自带防护功能;http包:有些respond带防护软件指纹;看他的页面,如果访问的时候带入一些威胁payload语句,也会返回一些特征;响应里的cookie信息,有的防护会体现在cookie里,比如Citrix,Netscaler,Yunsuo WAF,safedog;高频访问可判断是否有频率限制;header信息,比如Anquanbao WAF,AmazonAWSWAF;报错信息:单IP请求时间段内Webserver返回http状态404比例, 扫描器探测敏感目录基于字典,找不到文件则返回404;指纹识别;隐藏的链接标签等(<a>)
2)识别举例
一些WAF在请求中设置自己的cookie(例如Citrix,Netscaler,Yunsuo WAF,safedog)
有些人将自己与单独的标头关联(例如Anquanbao WAF,AmazonAWSWAF)。
有些经常更改标头和混乱的字符以使攻击者感到困惑(例如Netscaler,Big-IP)。
有些人在服务器头数据包中暴露自己(eg. Approach, WTS WAF)
一些WAF在响应内容body中公开自身(例如DotDefender,Armor,Sitelock)
其他WAF会对恶意请求做出不寻常的响应代码答复(例如WebKnight,360WAF
有些WAF会返回一堆垃圾数据,卡死你(例如:百度云加速乐)
检测技术:
从浏览器发出普通的GET请求,拦截并记录响应头(特别是cookie)。
从命令行(例如cURL)发出请求,并测试响应内容和标头(不包括user-agent)。
向随机开放的端口发出GET请求,并抓住可能暴露WAF身份的标语。
如果某处有登录页面,表单页面等.请尝试一些常见的(易于检测的)有效负载,例如 " or 1=1 -- -
将../../../etc/passwd附加到URL末尾的随机参数
在url的末尾添加一些吸引人的关键字,如'or sleep(5)‘
使用过时的协议(如http/0.9)发出get请求(http/0.9不支持post类型查询)。
很多时候,waf根据不同的交互类型改变服务器头。
删除操作技术-发送一个原始的fin/rst包到服务器并识别响应。
侧通道攻击-检查请求和响应内容的计时行为。
3)方法
wappalyzer、whatweb等识别cms信息;wafw00f、nmap的http-waf-fingerprint.nse脚本等识别waf;
5、检索语法收集
1)fofa语法收集
https://fofa.so/help
2)Google语法收集
inurl:example.com intitle:"index of"
inurl:example.com intitle:"index of /" "*key.pem"
inurl:example.com ext:log
inurl:example.com intitle:"index of" ext:sql|xls|xml|json|csv
inurl:example.com "MYSQL_ROOT_PASSWORD:" ext:env OR ext:yml -git
3)GitHub语法收集
使用github dorks帮助我们寻找一些敏感信息,比如:
extension:pem private
extension:ppk private
extension:sql mysql dump password
extension:json api.forecast.io
extension:json mongolab.com
extension:yaml mongolab.com
extension:ica [WFClient] Password=
extension:avastlic “support.avast.com”
extension:js jsforce conn.login
extension:json googleusercontent client_secret
“target.com” send_keys
“target.com” password
“target.com” api_key
“target.com” apikey
“target.com” jira_password
“target.com” root_password
“target.com” access_token
“target.com” config
“target.com” client_secret
“target.com” user auth
通过上述语法,可以搜索到一些敏感的私钥,一些SSH登录私钥,mysql的数据库密码,API key等等。
另外推荐一个脚本:https://github.com/techgaun/github-dorks
检索方法:
https://github.com/BishopFox/GitGot
https://github.com/UKHomeOffice/repo-security-scanner
https://github.com/gwen001/github-search
https://github.com/eth0izzle/shhgit
https://github.com/lightless233/geye
https://github.com/cve-search/git-vuln-finder
https://github.com/Securityautomation/DumpTheGit
https://github.com/4x99/code6
4)百度语法收集
语法一:把搜索范围限定在网页标题中--intitle
使用方式: 把查询内容中特别关键的部分用“intitle:”开头;
举个例子: 找萌宠泰迪的图片,就可以在搜索框中这样写: 照片 intitle:泰迪;
注意事项: intitle:和后面的关键词之间没有空格。
语法二:把搜索范围限定在某一网站中--site
使用方式: 如果你已经知道某个网站中有你想要的内容,就可以利用这个语法把搜索范围限定在这个网站中来提升搜索效率。在插叙内容后面加上 site:网站域名;
举个例子: CSDN博客(blog.csdn.net)中php的相关文章,就可以在搜索框中这样写: php site:blog.csdn.net;
注意事项: “site:”和后面的网站域名之间不要带空格,也不要带“http://”。
语法三:把搜索范围限定在特定链接(url)中--inurl
使用方式: 网页的url中的部分信息往往能够提高搜索结果的准确性。用“inurl:”,后面跟着url中出现的关键词;
举个例子: 查询一下“渗透测试”,就可以在搜索框中这样写: 渗透测试 inurl:blog。这表示“渗透测试 ”可以出现在网页的任何位置,“blog”这个词比较出现在网页url中;
注意事项: “inurl:”和后面所跟的关键词之间不要有空格。
语法四:精确匹配--“”、《》
使用方式: 在查询的词很长的情况下,百度所有结果可能把这个查询词拆分,导致搜索结果您并不满意。解决方案是可以给这个查询词加上双引号,或书名号,让百度不拆分查询词;
举个例子: 在搜索框中输入查询“黑客排名”,加上双引号(中英文双引号均可),获得的结果就是完全符合要求的;
注意事项:书名号在百度有两个特殊功能,首先书名号会出现在搜索结果中;而是被书名号括起来的内容不会被拆分,这个在查询电影书籍时特别有效。
语法五:让搜索结果中不含有特定查询词--减号
使用方式: 如果搜索结果中有一些网页是您不需要的,而且这些网页都包括特定关键词,那么用减号语法可以去除这些含有特定关键词的网页;
举个例子: 搜简历模板,不希望出现关于毕业生简历的网页。那么可以这样查询:简历模板 -程序员简历;
注意事项: 前一个关键词和减号之间必须有空格,没有空格减号会被当成连字符。
6、favicon.ico图标
可以获取目标站点的favicon.ico图标的哈希值,然后配合shodan进行目标站点资产收集,因为每个目标站点的favicon.ico图标的哈希值可能是固定值,因此可以通过该方法从shodan,fofa等等去寻找更多资产。简单的用法:
#python 3
import mmh3
import requests
import codecs
response = requests.get("https://www.baidu.com/favicon.ico")
favicon = codecs.encode(response.content,"base64")
hash = mmh3.hash(favicon)
print(hash)
或使用下面这个github项目:
https://github.com/devanshbatham/FavFreak
shodan搜索语句:http.favicon.hash:哈希值
fofa搜索语句:icon_hash="-247388890"(但仅限于高级用户使用)
原文链接:https://www.infosecmatter.com/bug-bounty-tips-8-oct-14/#8_database_of_500_favicon_hashes_favfreak
通过对比favicon的hash对比相关联的网站:
脚本地址:https://github.com/m4ll0k/Bug-Bounty-Toolz/blob/master/favihash.py
命令:python3 favihash.py -f https://target/favicon.ico -t targets.txt -s
7、源码信息收集
1)JS文件信息收集
在JS文件中搜索关键字API,Swagger UI等等,尝试寻找API接口地址。
2)APk、jar等提取
通过AndroidKiller、apktool、jd-gui、jadx、jad等反编译工具
静态分析:IDA Pro分析dex文件反汇编生成的Dalvik字节码,或者使用文本编辑器阅读baksmali反编译生成的smali文件。另一种是阅读反汇编生成的Java源码,可以使用dex2jar生成jar文件,然后再用jd-gui阅读文件的代码。
3)引擎搜索
https://searchcode.com/
https://gitee.com/
gitcafe.com
code.csdn.net
8、社工收集
https://nosec.org/home/detail/4322.html
http://site3.sjk.space/
https://www.reg007.com/
https://www.instantcheckmate.com/
http://www.uneihan.com
https://privacy.kallydev.com/
9、其他收集
1)端口探测
方法:nmap、masscan、Hping3
banner信息获取:nc、socket、dmitry、nmap
2)旁站探测
查询:https://dns.aizhan.com/、site.ip138.com、爱站、fofa、zoomeye
3)C段查询
查询:http://www.webscan.cc/、http://www.5kik.com/
查询该ip的具体信息:https://www.ipip.net,ip反查域名/域名对应ip:https://site.ip138.com,本机ip/其他ip简单信息:http://www.cip.cc/
4)SSL查询
证书搜索域名、检索公司的关联域名和子域名
检索方法:https://crt.sh、zmap、censys.io、sublister
5)软件利用
利用火绒剑,配合微信发语音的方式,可以获取该人的登录IP。
6)Headers记录
CORS记录
mx和spf记录:nslookup -q=txt emailpower.cn,nslookup -q=mx emailpower.cn
7)网盘搜索
www.pansou.com
www.lingfengyua.com/
www.52pojie.cn/thread-763130-1-1.html
8)备案号查询
www.beianbeian.com
http://icp.bugscaner.com
6)历史漏洞收集
http://www.anquan.us/
http://wooyun.2xss.cc/
www.bugbank.cn
https://www.butian.net/
src.edu-info.edu.cn/login
9)第三方网站查询
工具:7kb、破壳、k8
网站:社工库、威胁情报(华为威胁情报)、网盘搜索、钟馗之眼、天眼查、https://ti.360.cn/、http://www.anquan.us/、https://whatcms.org/?s=
https://www.virustotal.com/#/home/url、wooyun镜像
https://searchdns.netcraft.com/、https://centralops.net/co/
https://www.threatcrowd.org/、https://securitytrails.com/
第三方接口查询:
riskiq、shodan、findsubdomains、censys.io、dnsdb.io、微步在线、fofa
10)云泄露
如果泄露阿里云的 AKSK,可以使用AKSKtools工具进一步利用。
(:https://xz.aliyun.com/t/8429
二、常见信息泄露组件默认配置
1、默认路径
1)swagger接口常见路径:
/swagger/
/api/swagger/
/swagger/ui/
/api/swagger/ui/
/swagger-ui.html/
/api/swagger-ui.html/
/user/swagger-ui.html/
/swagger/ui/
/api/swagger/ui/
/libs/swaggerui/
/api/swaggerui/
/swagger-resources/configuration/ui/
/swagger-resources/configuration/security/
swagger组件特征固定title:Swagger UI
常见的信息收集工具和手段相关推荐
- Kali Linux信息收集工具全
可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得那个戏份不多但一直都在的Q先生(由于年级太长目前已经退休).他为007发明了众多神奇 ...
- 路由器和交换机常见故障信息收集命令总结
路由器和交换机常见故障信息收集命令总结 第一级故障检测 1.祯中继故障检测 路由器与祯中继交换机是否正确通信? Show frame PVC显示的DLCI是否处于激活状态? 路由器送出分组吗? ...
- 网络数据包信息收集工具ferret-sidejack
网络数据包信息收集工具ferret-sidejack 网络数据包传递用户的各种操作和对应的信息.但是由于各种数据混在一起,不利于渗透测试人员分析.Kali Linux提供了一款信息搜集工具ferret ...
- Web应用程序信息收集工具wig
Web应用程序信息收集工具wig 很多网站都使用成熟的Web应用程序构建,如CMS.分析网站所使用的Web应用程序,可以快速发现网站可能存在的漏洞.Kali Linux新增加了一款Web应用程序信息搜 ...
- 主机信息收集工具DMitry
主机信息收集工具DMitry DMitry是Kali Linux内置的一款信息收集工具.它的目标主要是Web类主机.它不仅通过主动查询.端口扫描方式,还借助第三方网站和搜索引擎获取信息. 它搜集的信息 ...
- 介绍一款facebook信息收集工具FBI
为什么80%的码农都做不了架构师?>>> 概述 作为一个工具党,收集一些工具肯定是少不了的,今天介绍的是一款facebook的信息收集工具叫fbi,虽然对国内用户用处不大,哈哈 ...
- JS文件信息收集工具-LinkFinder
0x00 前言 我们在渗透测试的之前,信息收集是必要的步骤,而JS文件中往往会暴露出很多的信息,比如一些注释的中铭感信息,内网ip地址泄露等等,还会有一些绝对路径或者相对路径的url,而这些url中很 ...
- DMitry --多功能信息收集工具
DMitry(Deepmagic Information Gathering Tool)是一个一体化的信息收集工具.它可以用来收集以下信息: 根据IP(或域名)来查询目标主机的Whois信息 在Net ...
- 网站信息收集工具RED_HAWK
简介 RED HAWK是用PHP编写的一个全面的信息收集工具 安装使用 安装使用很简单,首先安装上php,然后git clone下来用php运行就好了 git clone https://github ...
最新文章
- 灰度图像--图像增强 双边滤波 Bilateral Filtering
- win8 Windows 8 设置 默认浏览器
- JavaScript学习(十)
- 中北大学c语言程序设计作业答案,C语言程序设计
- 每日一笑 | 马冬梅当上了百度投资董事???
- 笔记:python设计模式
- Winform软件,不要在线程里操作UI
- mysql基础之mariadb库管理和表管理语句
- ARM开发6.3.2 基础实训( 2 ) 单个数码 LED 的显示输出系统设计( 2 )--LPC21XX
- mysql 执行 毫秒_记录sql执行时间毫秒级
- word自动生成目录等
- 公关营销策划书的要点及分析
- 关于偏微分、全微分总结
- Ubuntu 中使用 xdg-open 命令高效打开文件
- Downloaded file failed signature verification and may have been tampered with....
- 拉丁超立方——样本点空间转换
- 数据库事务隔离标准分析
- 【Kotiln】 错误锦集- Caused by: kotlin.NotImplementedError: An operation is not implemented: not implemen
- 全球首发护舒宝敏感肌系列 小豆子李子璇也Pick的姨妈CP
- 知名开发社区:v2ex域名DNS被污染