信息搜集,含详细教程(面向新手) – 作者:小健健健健健

1606614029_5fc2fc0d69dbb36f56c2a.jpg!small?1606614029804

前言的前言

这个文章本来是要发到csdn上的,这一周我辛苦耕耘,幻想发表之后会有很多人来看,会有很多评论,很多鼓励。谁知道csdn不让发,我*******嗯,然后我来freebuf试试,感谢各位大佬赏个脸,多谢。

前言

本篇文章是杂项知识的大汇总,不能说很全面,但是很多了,学习和理解需要一段时间。需要访问外国网站,所以需要翻墙,你可以使用千针网络翻墙软件,15元/月。也可以自己找找免费的节点,但是很困难。文章的写作分为两大部分,第一部分是知识点的学习,第二部分是搜集testfire.net的信息和资源整合。文章中所有的信息搜集都是针对testfire.net网站进行的。testfire网站由IBM公司发布,旨在证明IBM产品在检测Web应用程序漏洞和网站缺陷方面的有效性,网站不是真正的银行网站,所以可用来做渗透测试练手的地方,也就是咱们俗称的“靶场”。下边写的内容如果看到有错误的地方还请指正不足,谢谢。还有一点,下面给出网址或者给出工具下载链接的都是在本机测试成功的。那些没给出链接的也并不代表有问题,只不过相同功能的工具没必要同时拥有多个。我能想到的唯一的可能性就是某人想阅读相关功能的所有工具的源代码,希望能通过不同人写出的不同的工具学到些什么。

第一部分知识点学习

搜索引擎

搜索引擎是必不可少的工具,但是除了百度,你了解世界上各大著名的搜索引擎吗搜索引擎排名

主打GoogleDuckDuckGoBingBaiduYahoo

中国搜索用 Baidu
俄罗斯搜索用 Yandex 
搜索网站历史页面用 Internet Archive
不想被追踪用 DuckDuckGo duckduckgo 介绍和隐私保护
当计算器使 wolframalpha
询物理设备网站等: shodan,ensys
中国shodan,三分钟扫描全网弱鸡: fofa,oomeye
查询170多社交网站用户名: CheckUserNames
最全信息搜集网站导航(包括以上所有): OSINT Framework

我觉得可以尝试学习zoomeye的规则,因为搜索出有缺陷的网站或者设备尤为重要
zoomeye教程
internet archive
1606612681_5fc2f6c95a982b9941d47.png!small?1606612682092
wolframalpha
1606612696_5fc2f6d8396d4a78ad55b.png!small?1606612696633
duckduckgo
1606612703_5fc2f6df6b1c4f14d4ad9.png!small?1606612703702
shodan
1606612715_5fc2f6ebdc9c90973bf28.png!small?1606612723258
fofa
1606612719_5fc2f6ef6a484dfdcd0d8.png!small?1606612723258
zoomeye
1606612730_5fc2f6fae8bf7ca9b63c4.png!small?1606612741180
zoomeye的搜索导航
1606612731_5fc2f6fbb0b73f9c9ee4a.png!small?1606612738292
OSINT Framework
1606612738_5fc2f702cf72437117120.png!small?1606612741180
checkusernames
1606612752_5fc2f710db9e4a2e2a457.png!small?1606612755412
以上的搜索引擎真的很强大,他们能很方便找到渗透测试的目标和练手的网站!要好好地利用

whois

域名whois信息就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商、域名注册日期和过期日期等)。通过域名whois来实现对域名信息查询。
学习内容:
IP、主机名和域名
根域名的知识—阮一峰
域名详解:什么是域名whois信息
how to use whois command in linux
whois可以通过网站查询,也可以通过命令行,当然命令行更加全面
WHOIS查询参考,中英文对照

google hacking

面对数以百万的搜索结果,如何利用google搜索的高级功能筛选出想要的答案
google高级语法1
google高级语法2
渗透测试之google语法
你可以搜索inurl:/phpmyadmin/index.php,然后发现不需要密码就可以进入的phpmyadmin,找一个日本网站,可以当靶机练习了。

swager

在网站开发过程中swager自动生成接口文档,方便了前后端接口的调用。但是他是自动生成的,不注意就会暴露在公网之上。
swager
swagger接口暴露引发的api攻击

cms指纹

cms(Content Management System内容管理系统)概括来说,cms最擅长的就是搭建网站
1606612778_5fc2f72a30f59e9c84cf3.png!small?1606612779229
下载wordpress,他把基础代码给你,也可以自己定制修改。如果想全世界看到自己写的博客,也可以租用服务器,将网站搭建在服务器上。
CMS是什么,能做什么,怎么用呢?
cms指纹识别:
组件是网络空间最小单元,Web应用程序、数据库、中间件等都属于组件。指纹是组件上能标识对象类型的一段特征信息,用来在渗透测试信息收集环节中快速识别目标服务。
cms指纹技术识别及应用

vpn/vps

名词看起开差别不大,但是功能可是一点也不一样。vpn(virtual private network) vps(virtual private service)。简单理解,vpn软件是大家熟知的翻墙软件,vps则是租用服务器的时候虚拟化的一种技术,详细请看文章
vpn,vps,共享主机
vpn隧道原理

cdn加速

很多时候,网站都会开启CDN加速,导致我们查询到的IP不是真实的IP。原理请看这篇文章cdn加速原理。网站会在全世界部署cdn服务器作为静态资源的存储地点,而当你访问网站的时候,cdn专用dns服务器把离你最近的cdn服务器的ip返回了,这样你去最近的服务器获取静态资源会非常快。那么获取真实ip的办法也是有的,可以参考这篇文章绕过CDN寻找网站真实IP的方法汇总
文中提到了集群,那么顺便学习一下三地五中心1三地五中心2

SSL/TLS

ssl加密的过程简单概括为:握手阶段客户端和服务器分别生成一个公开随机数,客户端自己再生成一个私密随机数,客户端使用服务器分发的证书中的公钥加密私密随机数,服务器使用证书的私钥解密作为认证。通信阶段的数据由三个随机数生成的对话密钥来加密。
SSL/TLS协议运行机制的概述–阮一峰
图解SSL/TLS协议–阮一峰
SSL/TLS证书通常都会包含域名,子域名和电子邮件地址。这使得它成为了攻击者眼中的一座宝库。
工具地址

防火墙/IDS

IDS是英文“Intrusion Detection Systems”的缩写,中文意思是“入侵检测系统”。专业上讲就是依照一定的安全策略,通过软、硬件,对网络、系统的运行状况进行监视,尽可能发现各种攻击企图、攻击行为或者攻击结果,以保证网络系统资源的机密性、完整性和可用性,详细请看文章《Nmap渗透测试指南》—第6章6.1节关于防火墙/IDS

svn/git/hg/bzr/cvs

敏感文件
(1).git
(2).hg/Mercurial
(3).svn/Subversion
(4).bzr/Bazaar
(5)Cvs
(6)WEB-INF泄露
(7)备份文件泄露、配置文件泄露

以上都是版本控制系统,我们经常去的github网站在命令行下就是使用git命令。使用上各有不同,但是git始终是老大哥。linus对git的发明也是继linux之后另一个对世界的引领。详细比较看比较svn,git,hg区别

关于敏感文件源码泄漏问题,是网站开发人员没有及时清理默认生成文件所导致的,比方说你用git管理某个文件夹,那么会在这个文件夹下默认生成.git文件,是版本库。使用脚本可能发现并下载这些敏感文件。如果想详细的研究泄漏的原因,请访问文章常见的Web源码泄漏漏洞及其利用

旁站和c段

旁站指的是同一服务器上的其他网站,很多时候,有些网站可能不是那么容易入侵。那么,可以查看该网站所在的服务器上是否还有其他网站。如果有其他网站的话,可以先拿下其他网站的webshell,然后再提权拿到服务器的权限,最后就自然可以拿下该网站了!
C段指的是同一内网段内的其他服务器,每个IP有ABCD四个段,举个例子,192.168.0.1,A段就是192,B段是168,C段是0,D段是1,而C段嗅探的意思就是拿下它同一C段中的其中一台服务器,也就是说是D段1-255中的一台服务器,然后利用工具嗅探拿下该服务器。

第二部分探测testfire.net及资源整合

一.whois信息

1.查企业的备案信息(限中国)
天眼查 https://www.tianyancha.com/
国家企业信用信息公示系统 http://www.gsxt.gov.cn/index.html
2.whois网站
可以使用网站查询域名的whois信息 
3.whois命令行
whois testfire.net

…..
…..上面是无关信息包括whois网站信息,testfire.com的摘要信息
# whois.corporatedomains.com

//testfire的详细信息
| | |
v v v

Domain Name: testfire.net
Registry Domain ID: 8363973_DOMAIN_NET-VRSN
Registrar WHOIS Server: whois.corporatedomains.com
Registrar URL: www.cscprotectsbrands.com
Updated Date: 2020-10-02T11:59:50Z
Creation Date: 1999-07-23T09:52:32.000-04:00
Registrar Registration Expiration Date: 2021-07-23T13:52:32.000-04:00
Registrar: CSC CORPORATE DOMAINS, INC.
Registrar IANA ID: 299
Registrar Abuse Contact Email: [email protected]
Registrar Abuse Contact Phone: +1.8887802723
Domain Status: clientTransferProhibited http://www.icann.org/epp#clientTransferProhibited
//域名持有人注册信息
Registry Registrant ID:
Registrant Name: Not Disclosed
Registrant Organization: Not Disclosed
Registrant Street: Not Disclosed
Registrant City: Sunnyvale
Registrant State/Province: CA
Registrant Postal Code: 94085
Registrant Country: US
Registrant Phone: +Not Disclosed
Registrant Phone Ext:
Registrant Fax: +Not Disclosed
Registrant Fax Ext:
Registrant Email: Not Disclosed
Registry Admin ID:
//域名管理联系人注册信息
Admin Name: Not Disclosed
Admin Organization: Not Disclosed
Admin Street: Not Disclosed
Admin City: Sunnyvale
Admin State/Province: CA
Admin Postal Code: 94085
Admin Country: US
Admin Phone: +Not Disclosed
Admin Phone Ext:
Admin Fax: +Not Disclosed
Admin Fax Ext:
Admin Email: Not Disclosed
//域名技术联系人注册信息
Registry Tech ID:
Tech Name: Not Disclosed
Tech Organization: Not Disclosed
Tech Street: Not Disclosed
Tech City: Sunnyvale
Tech State/Province: CA
Tech Postal Code: 94085
Tech Country: US
Tech Phone: +Not Disclosed
Tech Phone Ext:
Tech Fax: +Not Disclosed
Tech Fax Ext:
Tech Email: Not Disclosed
//testfire.com的域名解析服务器
Name Server: usw2.akam.net
Name Server: usc2.akam.net
Name Server: eur2.akam.net
Name Server: ns1-99.akam.net
Name Server: ns1-206.akam.net
Name Server: asia3.akam.net
Name Server: usc3.akam.net
Name Server: eur5.akam.net
DNSSEC: unsigned

二.子域名查询

1.google高级搜索
site:testfire.net
1606612798_5fc2f73e5883e232fc5a6.png!small?1606612798624
检测到的子域名

altoro.testfire.net
demo.testfire.net
demo2.testfire.net
www.testfire.net
altoro.testfire.net
ftp.testfire.net

还发现了swagger gui
1606612815_5fc2f74f07790f4aa0b32.png!small?1606612815520
2.第三方网站查询
VirusTotal  https://www.virustotal.com/#/home/search
DNSdumpster  https://dnsdumpster.com/

多出来两个子域名

evil.testfire.net
localhost.testfire.net
3.基于ssl证书查询
网站
SSL/TLS安全评估 https://crt.sh/
证书透明度监控 https://developers.facebook.com/tools/ct/
网络上的 HTTPS 加密 https://google.com/transparencyreport/https/ct/
1606612823_5fc2f757e7560b26ed436.png!small?1606612824223
4.爆破枚举
layer 密码: 663g
subDomainsBrute
K8
orangescan
DNSRecon

1606612842_5fc2f76a59b01450a4a3f.png!small?1606612844808
三.ip及位置探测

1.ip探测
ping www.testfire.net 得到 ip是65.61.37.117
1606612875_5fc2f78b35c828a0ecbf2.png!small?1606612875628
判断是否有cdn加速除了通过ping还需要知道是否开启了cdn加速
使用国内whois网站测试testfire.net发现ip相同,则无cdn加速
1606612882_5fc2f7920ee83848f7a62.png!small?1606612882401
2.地理位置探测
查询
1606612891_5fc2f79b6212f4e7ef308.png!small?1606612893248
站长工具网站查找自己的ip对应的物理位置符合,但是外国查询网站这个网站并不符合。这个和vpn有关。因为我开着vpn,访问国内网站不会经过vpn代理服务器,访问国外网站是用vpn代理服务器来查询的,显示的是另一个地址。

四.开放端口探测

nmap教程| nmap -T4 -sT -sV 65.61.137.117
nmap参数说明
-T  : 时序选项, -T0-T5. 用于IDS逃逸,0=>非常慢,1=>缓慢的,2=>文雅的,3=>普通的,4=>快速的,5=>急速的
-sT : TCP连接扫描
-sV : 版本探测 ,通过相应的端口探测对应的服务,根据服务的指纹识别出相应的版本.
-p-  : 扫描所有端口 1-65535
1606613284_5fc2f9247fcf9823558d5.png!small?1606613306250
开启了80,8080端口,也可以使用-p-参数,但是全端口扫描太长时间了。
1606612974_5fc2f7ee30e105a0dd28e.jpg!small?1606612974959
常见端口和漏洞

1606612985_5fc2f7f96f121ceba89a9.png!small?1606612987145

五.网站架构探测

网站在线cms指纹识别 http://whatweb.bugscaner.com/look/
工具:Batch_CMS_identification https://github.com/teamssix/Batch-identification-of-website-CMS-fingerprints
工具watweb https://github.com/urbanadventurer/WhatWeb
云悉网站 https://www.yunsee.cn/
wappalyzer插件——火狐插件|
网站效果
1606613313_5fc2f9417b219382b943c.png!small?1606613314242
whatweb效果
1606613334_5fc2f95655ed006973c7c.png!small?1606613335041

六.敏感文件、敏感目录探测

1.敏感文件
工具:
githack—git 密码: uagw
dvcs-ripper https://github.com/kost/dvcs-ripper
BBscan https://github.com/lijiejie/BBScan
GSIL https://github.com/FeeiCN/GSIL
googlehacking
burpsuite爬虫模块
wwwscan
dvcs-ripper支持.git .svn .hg .bzr CSV探测
githack则是只能.git
1606613354_5fc2f96ac85def8e93ef5.png!small?1606613356435
www.testfire.net没发现文件泄漏
2.目录探测​
dirnap下载 教程
御剑 密码: ddqo
metasploit use scanner/http/dir_scanner 
1606613379_5fc2f9836df1e1402f3d4.png!small?1606613379688

七.WAF探测

WAFW00F下载 wafw00f -a 域名 wafw00f详细使用
Nmap nmap -p80,8080 –script=http-waf-detect 65.61.137.117
Nmap(精度更高) nmap -p 80,8080 –script=http-waf-fingerprint 65.61.137.117

1606613437_5fc2f9bdc65b23627c68a.png!small?1606613439457

八.旁站、C段

the web of webscan https://www.webscan.cc/site_altoromutual.com:8080/
nmap nmap 65.61.137.0/24 -sn -vv –open
k8
1606613447_5fc2f9c752cae128215be.png!small?1606613447650
出现一个旁站:http://altoromutual.com:8080/
同一c段host up:
65.61.137.58
65.61.137.59
经检测,这两个ip也属于testfire.net公司的

集成工具

theHarvester
metago
recon-ng
unicornscan
fierce
the-art-of-subdomain-enumeration
这些工具详细看工具介绍
工具真的太多了,网站也太多了,选择其中一两个用起来舒服的就好了

其他

当我关闭vpn的时候仍然能访问testfire.net,但是我们知道他的服务器在美国,印象里不是所有的外国网站都不能访问吗。于是我找到了这篇文章深度调查 | 为什么我们不能访问谷歌(长文慎入),清楚了这个之后搜了搜”中华人民共和国被封锁网站列表”(自行访问wj百科)中没有testfire.net,所以testfire.net即使是外国的网站也可以访问

结尾

1.结尾不想看可以不看,都是一些和信息搜集无关的东西。

2.md昨天写完忘保存了,花了一个多小时重写的,好多都不是原话,也忘了原来怎么写的了,垃圾csdn。哈哈哈,自己忘保存了怨别人。

3.我的印象里,搞安全的就两种人,一种是知识广博,经验丰富,真·大佬。另一种是剩下的人。所以有时确实有些吃力不讨好,也不知道未来会怎么样。但是啊,昨天我看到了一个跟我水平差不多的大四的学生去了长亭科技实习,我又振作了,我知道努力从来不会白费的。一年之后的我也许也能去那个地方,所以一步也不想停歇,我想遇见更好的人。

4.其实我觉得这篇文章更多的意义不是真的去信息搜集,那是给真正的大佬用的。而且大范围的学习,学的只是皮毛。对于我来说,他更多的是增长见识,并且为接下来的学习规划路线。这就是自学的魅力,你一直在海洋里摸索,有一天,你发现了一大块的陆地,你想到: “终于看到陆地了,我已经在海上漂泊好几个月,我迫不及待的去探索陆地,并发现一切能利用的资源” 。

5.那么我下一步的学习计划想分享给大家。首先我把metasploit魔鬼训练营中的实践完,然后着手写工具,先把一些别人写的小工具研究好就比方说上面提到的一些工具既是因为需要去了解原理,又是因为学习代码。然后自己写写小工具,用python。再之后我想读读cpython的源代码(尽力而为)。接连读读sqlmap,metasploit的源代码(尽力而为)。自己最近在学编译器,是基础吧,对之前学习的汇编的一种运用,也是cpython的前提。当然过程中有可能在劳累的时候穿插学习一些其他的比如cve等漏洞复现,使用别人写好的exp和现成的工具。或者去浏览浏览配置配置vim的插件。实践是阅读书籍的基础吧,读那些晦涩难懂的书籍最好先实践,并且我希望在这一年之内我可以读操作系统和数据库以及网络的书籍,来加深我对计算机的认识。理想情况是这样。

6.炫耀一波,阿里网盘的内测,还可以用来管理学习任务超级棒。
1606613225_5fc2f8e909aefaf90284c.png!small?16066132268631606613232_5fc2f8f03f16c06678464.png!small?1606613232904

再来炫耀一下最近刚刚配置好的vim,嘻嘻嘻

代码补全
1606613257_5fc2f9092babf8ff9012e.png!small?1606613274256

说起来用vim也快将近一年了,感触还是很深的,因为我的`j`键以及`n`键现在不太好使了,按一下有时出现两个,大概是因为我向下和查找经常用吧。以后就用vim写代码啦,摒弃vscode,不用pycharm,我vim自己设置好多快捷键,代码速度瞬间起飞,嘻嘻嘻。当然你最想知道的代码补全功能也有哦,是使用插件YouCompleteMe,支持好多语言哦,也有自动错误检查和代码跳转。其实我之前配置过一次,但是因为繁琐的过程就放弃了,我是用的是原生的vim,后来多次尝试总算成功。如果你也想配置,那么可以简单的了解我的vimrc文件.vimrc密码: 4j4a,当然这么炫的效果是通过插件实现的,也可借鉴借鉴我的配置插件.vim.bundle.txt密码: f316。我在里面写了详细的注释,你需要把这两个文件保存在用户的根目录并且在vim中输入:BundleInstall来下载这些插件,然后我的颜色使用molokai风格,或者gruvbox风格将它保存在~/.vim/color/下,我的.vimrc会自动配置molokai颜色。

但是其中的代码补全需要另行配置,我是在github上下载的源码,因为这样比较快一点,然后在.vim.bundle中配置的`bundle ‘file:///Users/xjj/.vim/bundle/YouCompleteMe’`你也应该配置成你自己的文件路径。你需要在YouCompleteMe目录下执行`git submodule update –init –recursive`。但是可能会报错,原因是缺少.git文件,退回到上一层`/Users/xjj/.vim/bundle/`执行`git clone https://github.com/Valloric/YouCompleteMe.git`。然后执行`brew install cmake python mono go nodejs``cd ~/.vim/bundle/YouCompleteMe`,`python3 install.py –all`,`python3 install.py –clangd-completer`,等添加代码补全的语言,我写在了.vimrc.bunlde中。还有可能遇到vim不支持python3.*的提示,那么我是使用`brew uninstall vim`然后`brew install vim`来解决的,brew在/usr/local/bin下安装的vim,替代了Mac自带的/bin/vim。如果还是失败,你有可能没有把/usr/local/bin放在~/.bash_profile文件里面,这样当你输入一个命令的时候电脑不会自动去/usr/local/bin下面搜索。

我是按照这样来安装的,如果你安装的时候中间缺少了某步,但是我没提到,可能是我电脑上默认有,但是你的没有,你需要去官网或者google来找出问题所在。

还要注意一点,安装brew的时候国外的https://raw.githubusercontent.com被黑客干掉了(这种人不要当),所以按照原先的方法安装根本不会成功。我之前读了Brew 的工作细节这篇文章,尝试手动配置brew,结果放弃了,简直不是人干的事。后来在知乎发现良心大佬,使用如下命令:`/bin/zsh -c “$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)”`即可一键安装,并且自动修改源,下载速度则快,一秒4M。
写了一周多,结束了,可以往下进行了。

来源:freebuf.com 2020-11-29 09:14:09 by: 小健健健健健

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论