20199103 2019-2020-2 《网络攻防实践》 第三周作业
1.实践内容
本周学习了第三章,第三章的主要内容是在网络上收集信息的方法,并且重点在攻击者的角度,并没有从防御者的角度来对攻击者进行信息收集。
在教材中,分为了三部分来讲述:
-
网络踩点
-
网络扫描
-
网络查点
网络踩点
web信息搜索与挖掘
这一部分主要是利用web的搜索引擎进行搜索。搜索引擎大家多少都使用过。但是书里还是讲解了一些我之前从来没有使用过的搜索技巧。
-
查询基本技巧
- 关键词尽可能简单
- 尽可能地想网页上应该出现的字词
- 关键词最好独特
- 善于利用智能提示
-
字词位置
在默认情况下,google对关键词的搜索为“在网页的任何地方”,经过调整。我们可以选择“在网页的标题”或者“网页的正文”等 -
文件格式
在filetype:之后添加特定的文件格式的后缀名,可以搜索某种特定格式的文件。
DNS与IP查询
-
WHOIS查询
WHOIS查询可以通过web或者客户端,来查询任意域名的相关信息。但是应该注意DNS的注册信息并不是储存在同一个数据库中,所以查询的时候要注意找出正确的机构数据库。如baidu,可以用icann的whois服务。 -
IP WHOIS
与前者类似,我们也可以用IP来查询DNS,WHOIS的客户端也有这个功能。
更加方便的是,虽然IP的注册信息也是在各个RIR和NIR中,但是每段IP都能很清楚的直到归属于谁,我们如果选择了错误的RIR来查询信息,那么他就会引导我们去正确的。 -
现实世界的地理位置
在得知DNS和IP之后,我们还可以进一步的挖掘出现实世界中的地理位置。其中国内最为著名的是纯真IP库,对国内的覆盖非常广,但是没有经纬度。 -
防范措施
-
及时更新信息,在不违反规定的情况下,可以尝试虚构的人名。
-
对于号码和地址等信息,为了避免社会工程学攻击,可以使用免费号码等
-
注意更新注册信息的方式,防止被修改。
-
网络拓补侦察
在kali上,利用traceroute可以向目标发送数据包,这些数据包TTL从1开始递增。通过监听返回的数据包我们可以获得从起点到终点的路由路径的每个IP地址。
在对目标的多台主机都进行同样的操作后,我们就能根据这些信息画出拓补图。
然而我结果出来的全是星星.
请教同学后,说是有些服务器设置不返回ICMP TIME exceeded。
网络扫描
网络扫描是为了在目标网络中找到连接的目标而进行的操作。包括:
- 主机扫描
- 端口扫描
- 操作系统确定
- 漏洞扫描
- 网络服务辨别
主机扫描
在上次的作业中使用过了ping来测试连通性。由于不活跃主机无法回应数据包,所以可以用来确定目标主机是否真实存在。
如果某些网段有数据包过滤,禁止ping的包通过,这时我们可以用ACK ping和SYN ping来扫描。
同时,也有很多的工具可以进行主机扫描。在后面的作业中,有nmap的实践。
端口扫描
在利用主机扫描确定活跃主机之后,就可以用端口扫描来探查主机开放了哪些端口。
-
TCP:
TCP Connect扫描是利用协议的三次握手来建立连接,来探查端口是不是开放的。但是给被入侵者留下曾经建立连接的信息,很容易被发现。而改良版TCP SYN并没有进行三次握手,在收到一个ACK可以确定端口开放的时候,直接对连接RST,在连接还没有建立的时候就关闭,不容易被发现。但是缺点是由于需要构造原始数据包,需要攻击者有一定的权限。
-
UDP:
UDP扫描是用来找那些对UDP开放的端口。向端口发送特殊的UDP报文,如果端口关闭,就会返回不可达报文,如果开放,就会返回一些数据。如果什么都没返回,可能是因为防火墙拦截。
-
工具:
在上面说到的nmap,不仅仅知识TCP的端口扫描,还支持UDP的端口扫描。
系统类型探查与网络服务类型探查
利用不同操作系统的网络机制的差异,可以通过一定的方法来探查操作系统,甚至探查操作系统的版本。网络服务类型探查是指探查主机开放的端口上的绑定的网络服务的版本。nmap都可以做到。
漏洞扫描
漏洞扫描的工具通过收集大量的已经公开的漏洞的扫描信息,来形成自己的漏洞扫描与识别能力。
Nessus软件是对目标网络或者主机进行扫描,确定主机开放的端口,再对端口的网络服务的漏洞进行探测。
这次作业中安装nessus的部分我遇到了不少麻烦,具体在写下面的实践里。
网络查点
在收集足够的信息,确定攻击目标之后,在试试攻击之前,攻击者还会对那些服务与漏洞进行更加细致的、更加有针对性的探查。这就是网络查点。
服务旗标抓取
是指利用工具连接到目标网络服务并手机重要的信息,Nessus和nmap都有这样的功能。
除了利用上述两个工具自动抓取之外,还可以使用telnet手动抓取。
类unix的网络服务查点、
RPC在各个操作系统中都是默认安装的,将客户端的请求与RPC动态分配的端口相匹配。nmap中也有着RPC的查点功能。
Windows的网络服务查点
win的网络服务协议中有netbios,使用net view可以查点域,nltest查点域控制器,nbtstat查netbios名字表。
还有SMB会话查点技术,net view查点主机共享资源、regdmp注册表查点、nltest /server和nltest /trusted_domin查点受信任域
2、实践过程
DNS和IP查询
动手实践:nmap
动手实践:nessus
kali中并没有nessus,所以我就去下载。这个下载过程一波三折,我一度想放弃kali去用xpattacker的老版本nessus,不过好在最后成功了。
不过可以去控制台update,教程说运气好的话也许会成功(?)
但是我运气不好。
就下载插件离线安装。
- 这里需要再用另一个邮箱获取另一个激活码,然后获得一个挑战码
然后去网站:https://plugins.nessus.org/v2/offline.php
- 进入网站后可以下载注册码和插件
可是插件下载非常非常慢,还总是半途就失败,挂代理也没用。我尝试了很多次,然后打算放弃,就每次失败按“重新下载”,一边做别的事。
不知道过了几个小时。。。就成功了。。。
总之结果是好的。
然后把下载的文件放到/opt/nessus/sbin/
下,开始更新。
- 最后打开之前给的网址
成功下载。 - 新建scan
我们新建一个scan,输入我们的靶机ip
运行就可以扫描了。 - 靶机的安全漏洞
这个漏洞很多,我就截图了一小部分。
图里可以看见,每一个漏洞前面都有一个颜色和形容词,来向我们表示这个漏洞的危险程度。 - 扫描端口
建立一个端口扫描的scan
然后得到结果
具体这些漏洞有什么危险我就不分析了,以我现在的知识水平都不一定能看得懂。
第三章实践作业
其中的第二题,第三题都已经在上面做完
1、搜索自己在互联网上的足迹。
还真找到了。还看到了我高中其他同学的名字。
3、学习过程中遇到的问题
这一次的作业相较于上一次要简单一些,最主要的是书籍和网上资料还算齐全。
- 问题1:nessus下载问题。
- 问题1解决:在上面我也提到了,可以用下载之后离线安装的方法。但是不知道为什么,我下载的非常慢。解决方法是挂上全局代理一遍遍尝试。如果最后仍然不行的话还可以去winxpattacker的老版本nessus。
- 问题2:nmap等相关操作书中没有介绍。
- 问题2解决:虽然书中没有介绍,但是网上对这些的介绍很多很全。
4、实践总结
总结起来的话还是动手能力是首位,这次作业也是需要多加练习。
参考资料
nmap命令基础用法
Kali安装Nessus详细过程