20232906 陈瀚文 2023-2024-2 《网络与系统攻防技术》第二次作业
1.实验内容
- 从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取DNS注册人及联系方式、该域名对应IP地址、IP地址注册人及联系方式、IP地址所在国家、城市和具体地理位置。
- 尝试获取BBS、论坛、QQ、MSN中某一好友的IP地址,并查询获取该好友所在的具体地理位置。
- 使用nmap开源软件对靶机环境进行扫描,并检测靶机IP地址是否活跃、靶机开放了哪些TCP和UDP端口、靶机安装了什么操作系统,版本是多少、靶机上安装了哪些服务
- 使用Nessus开源软件对靶机环境进行扫描,并检测靶机上开放了哪些端口、靶机各个端口上网络服务存在哪些安全漏洞,简述攻陷靶机环境,以获得系统访问权的方法
- 通过搜索引擎搜索自己在网上的足迹,并确认自己是否有隐私和信息泄漏问题
2.实验过程
2.0 准备工作
-
在正式进行实验之前,我们首先在Kali上安装Nessus,由于Nessus所占空间较大,请确保Kali的可用存储空间大于2G后再进行安装。
-
使用如下命令下载Nessus安装包。
curl --request GET \ --url 'https://www.tenable.com/downloads/api/v2/pages/nessus/files/Nessus-10.7.1-debian10_amd64.deb' \ --output 'Nessus-10.7.1-debian10_amd64.deb'
-
下载完成后使用命令
dpkg -i Nessus-10.7.1-debian10_amd64.deb
进行安装。Nessus:Nessus号称是世界上最流行的漏洞扫描程序,全世界有超过75000个组织在使用它。该工具提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus不同于传统的漏洞扫描软件,Nessus可同时在本机或远端上遥控,进行系统的漏洞分析扫描。Nessus也是渗透测试重要工具之一。
-
之后每次开机后需要输入命令
service nessusd start
启动nessus服务,然后在浏览器中访问https://127.0.0.1:8834 即可使用Nessus。
2.1 从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询。
-
这里我们选择sina.com.cn进行查询。
-
使用如下命令查询新浪的DNS信息,结果如图一所示
whois sina.com.cn
图一 查询新浪的DNS信息可以发现,DNS注册商为北京新网数码信息技术有限公司,联系邮箱为domainname@staff.sina.com.cn
-
然后我们使用
nslookup
命令查询该域名对应的IP地址,具体命令如下:nslookup sina.com.cn
图二 查询sina.com.cn对应的IP地址如图二所示,可以发现,该域名对应了三个IP地址49.7.37.60、123.126.45.205、111.13.134.203
-
我们进一步查询49.7.37.60的注册人及联系方式,使用如下命令可得结果如图三所示。
whois 49.7.37.60
图三 查询49.7.37.133的信息可以发现,注册人有两位,分别为Hongtao Hou和Yiming Zheng。Hongtao Hou的电话为+86-10-58503461,邮箱为zhengym.bj@bjtelecom.cn ,Yiming Zheng的电话为+86-10-58503461,传真为+86-10-58503054,邮箱为13370163461@189.cn 。而该IP地址所在地为中国北京东城区北大街朝阳门21号。
2.2 尝试获取BBS、论坛、QQ、MSN中某一好友的IP地址,并查询获取该好友所在的具体地理位置
-
首先给一个在河北的朋友发起微信语音通话,然后打开资源监视器,点击网络标签,在“网络中的进程中”勾选WeChat.exe选项,然后在“网络活动”中就可以观察IP地址的变化
-
如图四所示,可以发现大量数据发送给了124.236.39.95。
图四 资源监视器信息 -
使用埃文科技查询该IP地址对应的地理位置,如图五所示,可以发现该IP地址位于河北省石家庄市,如图五所示。
图五 IP地址对应地理位置
2.3 使用nmap开源软件对靶机环境进行扫描,回答以下问题并给出操作命令
2.3.1 靶机IP地址是否活跃
-
这里我们使用Kali作为攻击机,如图六所示,Kali的IP地址为192.168.200.6。
图六 Kali的IP地址 -
使用Metasploitable2-Linux作为靶机,如图七所示,靶机IP为192.168.200.130:
图七 靶机的IP为192.168.200.130
2.3.2 靶机开放了哪些TCP和UDP端口
使用nmap对靶机(192.168.200.5)进行端口扫描,使用命令如下:
nmap -sTU 192.168.200.130 -p 0-1023
# -sTU 查询开放的TCP端口和UDP端口
# -p 指定扫描的端口
# 0-1023 属于周知端口,它被事先分配给一些具体的服务,是已经标准化了的众所周知的端口号
图八 靶机开放的TCP和UDP端口
如图八所示,可以发现靶机开放了TCP端口21、22、23、25、53、80、110、111、139、445、512、513、514,UDP端口53、111、137
2.3.3 靶机安装了什么操作系统,版本是多少
使用nmap对靶机(192.168.200.130)进行系统探测,使用命令如下:
nmap -O 192.168.200.130
# -O 进行系统探测
图九 靶机的操作系统信息
如图九所示,可以发现nmap扫描得出靶机操作系统为Linux2.4.X内核,具体为2.4.37
2.3.4 靶机上安装了哪些服务
使用nmap对靶机(192.168.200.130)进行服务探测,使用命令如下:
nmap -sV 192.168.200.130
# -sV 探测开启的端口来获取服务、版本信息
图十 靶机的服务信息
2.4 使用Nessus开源软件对靶机环境进行扫描,回答以下问题并给出操作命令
这里我们继续使用Metasploitable2-Linux作为靶机,IP地址为192.168.200.130。
图十一 靶机的IP地址
2.4.1 靶机上开放了哪些端口
- New Scan中选择Host Discovery,然后选择Discovery,配置如图十二所示。
图十二 端口扫描配置
-
如图十三所示,可以发现靶机共开放了26个TCP端口
图十三 共开放了26个TCP端口其中,TCP端口有21(ftp)、22(ssh)、23(telnet)、25(smtp)、53、80(www)、110、111(rpc-portmapper)、139(smb)、445(cifs)、512、513、514、1099、1524(wild_shell)、2049(rpc-nfs)、2121、3306(mysql)、3632、5432、5900(vnc)、6000、6697、8009、8180(www)、8787
2.4.2 靶机各个端口上网络服务存在哪些安全漏洞
-
在Kali上使用Nessus进行扫描,相应扫描配置如图十四所示。将配置保存后,运行该扫描,等待扫描结束。
图十四 Kali的Nessus配置 -
如图十五所示,靶机在端口号为1524处开放了一个终端,可能会被利用直接对靶机进行命令行控制。
图十五 TCP端口号为1524的绑定终端后门 -
如图十六所示,靶机在端口号为5900处开启了VNC服务,但使用了"password"作为VNC服务的密码,容易导致恶意用户远程控制系统。
图十六 TCP端口号为5900处的弱密码 -
如图十七所示,使用TCP协议位于8009端口的Tomcat AJP服务使得攻击者可利用此漏洞从易受攻击的服务器读取 Web 应用程序文件。在易受攻击的服务器允许文件上传的情况下,攻击者可以在各种文件类型中上传恶意 JavaServer Pages (JSP) 代码并获得远程代码执行 (RCE)。
图十七 TCP端口号为8009处的漏洞 -
如图十八所示,使用TCP协议位于513端口运行着rlogin服务。此服务容易受到中间人攻击,因为数据以明文形式在 rlogin 客户端和服务器之间传递。。
图十八 TCP端口号为513处的漏洞 -
如图十九所示,使用TCP协议位于2049端口的NFS服务没有进行访问控制,默认将根目录的访问权限给所有IP访问权限。
图十九 TCP端口号为2049处的服务未设置访问控制 -
如图二十所示,使用TCP协议位于23端口运行的 telnet服务没有加密措施,导致用户名、密码和命令等均为明文传输,容易遭受中间人攻击从而泄露敏感信息。
图二十 TCP端口号为80处的漏洞
2.4.3 你认为如何攻陷靶机环境,以获得系统访问权
- 利用1524端口处的终端直接控制靶机。
- 通过输入VNC服务的弱口令对靶机进行远程控制。
- 通过给8009端口的Tomcat AJP服务上传成熟的JSP攻击代码的方式获取靶机的Shell。
- 通过NFS服务直接访问靶机的文件系统。
- 通过监听23端口的telnet服务或513端口的rlogin服务获取靶机的用户名、密码,并获得靶机的控制权。
2.5 通过搜索引擎搜索自己在网上的足迹,并确认自己是否有隐私和信息泄漏问题
在搜索引擎上查询自己的名字,可以得出如图二十一所示结果,除了码云账号和博客园之外,暂未发现信息泄露问题。
图二十一 查询自己的名字得到的结果
3.问题及解决方案
-
问题1:在安装Nessus时,如图二十二所示,出现下载插件失败的情况。
-
图二十二 Nessus下载插件失败
- 问题1解决方案:确保Kali的硬盘空间至少分配30G,然后进行以下操作:
- 关闭nessus服务:
/etc/init.d/nessusd stop/etc/init.d/nessusd stop
- 使用 nessuscli update 命令更新所有插件:
/opt/nessus/sbin/nessuscli update
- 插件下载完成后,再次启动 Nessus 服务:
/etc/init.d/nessusd start
- 等待一段时间的插件编译过程后,即可使用Nessus。
- 关闭nessus服务:
4.学习感悟、思考等
本次实验进行了信息搜集技术的相关实践,通过动手的方式我弄懂了信息搜集技术的基本思路和常用的方法。在本次实验中,经过在网上寻找相关资料,我成功地完成了相关的实验内容,值得注意的是,本次实验反复告诉我们漏洞的危害性以及保护个人信息的重要性,今后在使用电脑的过程中我也会注意保护个人信息,及时更新软件,不从未知途径获取软件。
感谢王老师的细心讲解和耐心帮助,也感谢在实验过程中给我帮助的同学们。正因为有你们的帮助我才能够顺利地完成本次实验,谢谢!