Homework 2020/01/09(关键词:信息收集工具及其使用方法,nmap,routerscan,发布1月01版)
Homework
Wang yuan can
January 9, 2020
@雨人网安
作业
1.写在前面
1.1 概述
为力求简洁清晰的作业版面,较好记录当天作业的完成过程,现对作业格式进行优化,经本次优化后,今后作业按照此格式进行书写。若Teacher Bai有特别说明,则对作业格式再加以修改。本次作业优化后的版本号为 hw-version 01.20.01,今后作业的再优化版本将发布对应版本号。(ps:相关参数说明:hw-version xx.xx.xx,'hw'为“homework”的缩写,缩略符的前两位为版本号,数字表示对应的版本,如01表示第1版;后四位表示版本优化日期,分别表示年、月,如20.01表示2020年1月)
1.2 关于hw-version 01.20.01版
该版本为第一次作业格式优化版本,确定了作业的书写格式,以及今后的完善方向。
1.2.1 关于作业格式
作业格式如下,共分为四个部分:
第一部分:当日作业内容提要
当日作业的涉及的关键内容提要
第二部分:作业题与分析
当日作业的分析与完成过程
第三部分:自我总结与思考
进行自我总结,思考存在的不足(古语云:我思故我在),有哪些地方需要进一步加强
第四部分:参考资料
记录当日作业参考的资料,包括但不限于链接、论文、书籍、资料文档等
1.2.2 其他
若在后续的学习过程中对作业中的内容进行了进一步的修改与扩充,需要在当天对应的作业中说明对哪些地方进行了修改扩充。
2.作业开始
2.1 作业提要
- 信息收集用到的工具与说明
- 整理信息收集的专题笔记
ps:昨天的作业对信息的横向收集用到的工具进行了简单说明,本次作业主要针对纵向信息收集给出相关介绍,有关信息收集的专题笔记整理在“随笔-信息收集”中
2.2 作业分析
2.2.1 什么是信息收集的“纵向”维度?与横向收集有什么不同?
从Teacher Bai分享的信息收集思维导图来看,Bai将信息收集的步骤分为了横向与纵向两个模块。从个人理解来看,横向是指信息的广度,这与数据结构中树的“广度搜索(BFS, Breadth-First Search)”中的广度含义类似,即收集与目标相关的横向关联信息,这包括列出的域名、社工信息,旁站(通俗理解为:同一IP或者域名所在服务器的其他网站),C段信息和ip信息收集等。
与“横向信息收集”不同的是,“纵向信息收集”更注重对渗透目标信息收集的深度,即不断深入挖掘目标信息,以求得找到目标可能存在漏洞的切入点。在纵向信息收集中,主要包括端口、网站架构信息,敏感信息或目录等信息。总之,通过横向与纵向两个维度的信息收集,能够较好地为后续渗透测试做好充分的准备。
ps:
1.由于我自己对C段这个词的理解不清楚,因此对C段信息和C段渗透查找了一点资料,补充相关信息如下:
每个IP可分为ABCD四个段,比如:192.168.0.1,A段就是192,B段是168,C段是0,D段是1,对一个ip地址进行C段嗅探就是拿下它同一C段中的其中一台服务器,也就是说是D段1-255中的一台服务器,然后利用工具嗅探拿下该服务。
2.2.2 端口扫描
2.2.2.1 Nmap
Nmap (“Network Mapper(网络映射器)”) 是一款开放源代码的网络探测和安全审核的工具。能快速地扫描大型网络或单个主机也没有问题。Nmap以新颖的方式使用原始IP报文来发现网络上有哪些主机,namp可以满足网络工作中的一些基本需求,如查看整个网络的信息, 管理服务升级计划,以及监视主机和服务的运行等。
(1)主要功能
- 主机发现
- 端口扫描
- 版本侦测
- OS侦测
ps:(此处主要介绍此功能,详细功能整理在“信息收集”专题随笔中)
(2)下载方式
- Kail集成环境
- 单独安装(使用yum、apt-get工具安装,需要连接网络)
yum install nmap //一般为Linux和Centos系统安装nmap的指令
apt-get install nmap //Ubuntu是Debian类型的linux,用apt-get指令可下载
- PentestBox环境
- Windows版等等
(3)使用方式
Nmap的通用命令格式:Nmap<扫描选项><扫描目标>
(详细教程及下载方式参见:http://nmap.org/)
端口扫描是Nmap最基本最核心的功能,用于确定目标主机的TCP/UDP端口的开放情况。默认情况下,Nmap会扫描1000个最有可能开放的TCP端口。Nmap通过探测将端口划分为6个状态:
- open:端口是开放的。
- closed:端口是关闭的。
- filtered:端口被防火墙IDS/IPS屏蔽,无法确定其状态。
- unfiltered:端口没有被屏蔽,但是否开放需要进一步确定。
- open|filtered:端口是开放的或被屏蔽。
- closed|filtered:端口是关闭的或被屏蔽。
探测方式:
- TCP SYN scanning
- TCP connect scanning
- TCP ACK scanning
- TCP FIN/Xmas/NULL scanning
- UDP scanning
- 其他方式
- -sS/sT/sA/sW/sM: 指定使用 TCP SYN/Connect()/ACK/Window/Maimon scans的方式来对目标主机进行扫描。
- -sU: 指定使用UDP扫描方式确定目标主机的UDP端口状况。
- -sN/sF/sX: 指定使用
TCP Null
,FIN
,and Xmas
scans秘密扫描方式来协助探测对方的TCP端口状态。 - --scanflags <flags>: 定制TCP包的flags。
- -sI zombiehost[:probeport]: 指定使用idle scan方式来扫描目标主机(前提需要找到合适的zombie host)
- -sY/sZ: 使用SCTP INIT/COOKIE-ECHO来扫描SCTP协议端口的开放的情况。
- -sO: 使用IP protocol 扫描确定目标机支持的协议类型。
- -b <FTP relay host>: 使用FTP bounce scan扫描方式
- -p:指定端口扫描
以扫描主机192.168.110.1为例。命令如下:nmap -sS -p0-65535 -T4 192.168.110.1
参数-sS
表示使用TCP SYN方式扫描TCP端口;-p0-65535
表示扫描所有端口;-T4
表示时间级别配置4级;
扫描特定端口是否开放:nmap -p21,80,445,3306 192.168.80.166
2.2.2.2 Router Scan
Router Scan是由俄国的一位安全测试人员所开发的一款功能强大的路由器爆破安全测试工具。它可以指定IP段对路由器进行暴力破解等安全测试,支持多种TP-LINK、Huawei、Belkin、D-Link等各大品牌型号的路由器。
(1)主要功能
- 路由扫描
- 端口扫描
- ip地址扫描
(2)下载方式
吾爱破解网:https://www.52pojie.cn/thread-795643-1-1.html
Teacher Bai共享的群文件
(3)使用方式
案例:用Router scan扫描某网页ip
1.获取网页ip
2.在router scan中添加刚才的ip地址进行扫描,选择一个扫描结果进行查看,可获取该网址的旁站信息
3.选择一个sever/realm/device进入,查看结果如下:
ps:如查找的网址得到的扫描信息较少,通过扩大端口号范围和ip地址范围可以丰富搜索结果。
2.2.3 网站架构探测
2.2.3.1 wappalyzer
Wappalyzer是一款浏览器插件,通过Wappalyzer可以识别出网站采用了何种web技术。它能够检测出CMS和电子商务系统、留言板、javascript框架,主机面板,分析统计工具和其它的一些web系统。
(1)主要功能
找漏洞不是一个无厘头的过程,需要我们不断缩小漏洞的范围,最终找到漏洞可能存在的位置,wappalyzer能够给出某个网页的基本架构信息,排除不可能出现的漏洞情形。
(2)下载方式
github:https://github.com/AliasIO/wappalyzer
官网下载:https://www.wappalyzer.com/
(3)使用方式
2.2.3.2 whatweb
(1)主要功能
Whatweb是一个基于Ruby语言的开源网站指纹识别软件,whatweb能够识别各种关于网站的详细信息包括:CMS类型、博客平台、中间件、web框架模块、网站服务器、脚本类型、JavaScript库、IP、cookie等
(2)下载方式
使用kali自带的whatweb
(3)使用方式
2.在kali终端使用whatweb的基本命令
命令语法:Usage: whatweb [options]
解释说明:Whatweb为固定语法,表示使用whatweb这个工具[options] 与大多数命令行的命令使用格式一样[ ](中括号)表示可选参数,表示这个参数可用可不用,一般看具体场景选合适的参数。为我们要探测的目标,可以是IP地址,域名,url地址,nmap格式的地址范围甚至是文件名。
- 查看whatweb版本
whatweb --version
- 对单个目标进行简单探测whatweb+目标
whatweb 104.193.88.77
2.2.3.3 diesearch
(1)主要功能
dirsearch是一个基于python的命令行工具,旨在暴力扫描页面结构,包括网页中的目录和文件。
系统支持
- WindowsXP/7/8/10
- GNU/Linux
- MacOSX
(2)下载方式
github下载:https://github.com/maurosoria/dirsearch
(3)使用方式
- 基本参数
-u 指定url
-e 指定网站语言
-w 可以加上自己的字典(带上路径)
-r 递归跑(查到一个目录后,在目录后在重复跑,很慢,不建议用)
--random-agents 使用代理(使用的代理目录在uesr-agents.txt中,可以自己添加)
- 举例
python3 dirsearch.py -u baidu.com -e *
2.2.3.4 hao7188
目前互联网最权威,最详细的IP查询以及IP地址显示,让您更加清楚的了解某IP所在地及物理位置,它可以精确到您单位或网吧甚至您家庭上网的小区位置所在地。
查询某一ip地址示例:
2.2.3.5 yunsee
云悉安全专注于网络资产自动化梳理,cms检测web指纹识别,让网络资产更清晰。
在线网址:http://www.yunsee.cn/info.html
查询某一域名示例:
2.3 思考总结
本次作业内容涵盖了较多的信息收集工具,对于不同工具的使用还不是太熟练,这包括一些在线工具的语法格式和安装工具的使用方法,今后对于信息收集方面重要的工具使用方法要进一步熟悉和加强。在nmap的使用过程中遇到了一些报错信息需要解决。
2.4 参考资料
- 信息收集方法与思路整合:https://blog.csdn.net/lowhacker/article/details/89449701
- 安全工具系列:https://xz.aliyun.com/t/1666
- nmap常用命令:https://www.cnblogs.com/twpone/p/9263063.html
- whatweb初级篇:https://www.jianshu.com/p/9eb779549224
- 目录爆破工具dirsearch:https://blog.csdn.net/Jiajiajiang_/article/details/81391982