信息收集技术和漏洞扫描技术

一、实验目的

(1)了解信息搜集和漏洞扫描的一般步骤;

(2)熟练Nmap的使用方法;

(3)了解程序漏洞的成因与分析,掌握漏洞扫描的基本方法。

二、实验内容

(1)利用Nmap进行信息收集,并记录、分析扫描结果;

(2)使用OpenVAS、Nikto等工具进行漏洞扫描并进行漏洞分析;

(3)利用口令破解工具针对软件和Web程序进行破解。

三、实验环境

靶机一:1、靶机地址:192.168.136.130

2、攻击机地址:192.168.136.131

四、实验过程和实验结果

1.查看一下Kali的地址:Ifconfig ip a如图2.1.1

2.1.1查看kali地址

2.查看与攻击机处在同一网络的靶机地址

(1)可使用arp-scan -l,如图2.1.2

2.1.2 使用sudo arp-scan -l查看靶机地址

(2)使用nmap全网段扫描,如图2.1.3

2.1.3  nmap全网段扫描得靶机地址

(3)使用sudo netdiscover查看

2.1.4 sudo netdiscover 查看靶机地址

3.nmap扫描一下看一下开放了哪些端口如图2.1.5.1和2.1.5.2

2.1.5.1 用nmap -sV 扫描端口

2.1.5.2 用nmap -sV -A -T4扫描端口

4.根据开放的80端口尝试是否存在web页面

在kali中打开firefox浏览器输入192.168.136.131,如图2.1.6

2.1.6 80端口是否存在web界面

经验证虽然80端口开放了,但靶机并没有提供web服务,无可用信息。

  1. 根据开放的21端口,查看提供ftp服务的软件版本是否可利用。

(1)可通过搜索引擎、AIGC工具查看ProFTPD 1.3.3c有无漏洞信息,如图2.1.7

2.1.7 查找proftpd1.3.3c信息

(2)可通过Exploit Database - Exploits for Penetration Testers, Researchers, and Ethical Hackers查看漏洞信息。如图2.1.8

2.1.8 查看漏洞信息

6.根据存在的漏洞信息,在攻击机中查看是否有漏洞利用模块

(1)在kali中查看是否有此漏洞利用模块sudo searchsploit proFTPD 1.3.3c,如图2.1.9

2.1.9查看kali是否有此漏洞利用模块

(2)在kali中启动metasploit框架查看启动框架(命令:msfconsole)查看漏洞利用模块,如图2.1.10

2.1.10 查看proftpd1.3.3c漏洞利用模块

7.利用漏洞

(1)输入msfconsole,打开metasploit,

(2)输入search proftpd 1.3.3c,可以找到关于proftpd1.3.3c的漏洞

(3)输入use 0,再输入show options或options,查看需设置的参数,如图2.1.11

2.1.11 查看设置参数

需要的参数有RHOSTS和RPORT,只需设置RHOSTS,通过set RHOST 192.168.136.131即可,但此攻击载荷的效果不理想,考虑更换payload攻击载荷。

(4)更换默认攻击载荷,输入show payloads查看可用的攻击载荷,并设置cmd/unix/reverse为新的攻击载荷。如图2.1.12

2.1.12设置cmd/unix/reverse为新的攻击载荷

(5)通过options命令查看此攻击载荷所需设置的参数,如图2.1.13

2.1.13 options命令查看此攻击载荷所需设置的参数

(6)设置参数RHOSTS和LHOSTS,如图2.1.14

2.1.14设置参数RHOSTS和LHOSTS

(7)run/exploit执行渗透,如图2.1.15

ton

2.1.15 run执行渗透

8.提权

输入python3 -c 'import pty;pty.spawn("/bin/bash")',得到root权限进入目录ls,再进入home目录,如图2.1.16

2.1.16进入靶机

靶机二:1.靶机地址:192.168.136.132

  1. 攻击机地址:192.168.136.130

查看与攻击机处在同一网络的靶机地址用sudo arp-scan -l查找,如图2.2.1

2.2.1查看靶机地址

用nmap详细扫描,如图2.2.2

2.2.2详细扫描

用dirb进行后台扫描,如图2.2.3

2.2.3后台扫描

尝试用户名 chili 使用 hydra 对 ftp 进行密码爆破,,发现login是chili,password是a1b2c3d4,如图2.2.4

2.2.4密码爆破

Kali中进行ftp登录,如图2.2.5

2.2.5 ftp登录

进入cd /var/www/html目录下,发现了.nano文件夹有读,写,执行权限如图2.2.6

2.2.6 .nano有读写执行权限

生成php木马,如图2.2.7

2.2.7生成php木马

将木马上传到.nano目录下,如图2.2.8

2.2.8上传木马

对shell.php赋权,使能读写执行。如图2.2.9

2.2.9 shell.php赋权

启动msfconsole,配置攻击载荷,如图2.2.10

2.2.10 配置攻击载荷

网页访问192.168.136.132/.nano/shell.php,显示连接成功,如图2.2.11

2.2.11网页访问

反弹shell,如图2.2.12

           

2.2.12反弹shell

使用提权检测工具将检测工具下载到 kali,开启 http 服务在靶机上使用 weget 命令下载,赋权并运行漏洞检测脚本如图2.2.13

2.2.13 wget命令提权

使enumy64在把集中可读可写可执行,如图2.2.14

2.2.14 chmod提权enumy64

输入./enumy64,检测出漏洞,发现passwd文件有读写权限,如图2.2.15

2.2.15 passwd文件有读写权限

生成加密后的密码,如图2.2.16

2.2.16 生成加密密码

新建root用户并登录,提权成功,如图2.2.17

2.2.17 提权成功

五、实验总结

靶机一原理:首先查找靶机的ip地址,进而通过nmap扫描找到靶机开放的端口,依次访问端口,观察靶机开放了了哪些服务,proftpd 1.3.3C服务,在发现漏洞网站上查看proftpd 1.3.3C服务存在漏洞,攻击漏洞需要调用metasploit 模块,在该模块查找proftpd 1.3.3C漏洞,发现关于proftpd该版本的漏洞,通过调整该漏洞攻击载荷的参数进行渗透,可以得到该靶机的普通用户权限,通过Python代码进行提权,获得root权限。

靶机二原理:用同样的方法进行扫描,找到靶机的ip地址,扫描它的端口服务,发现没什么可利用的,靶机本身提供了用户名chili,换个角度尝试进行目录爆破,发现爆破出ftp服务的密码,然后进行ftp远程登录,获取靶机基本权限,可以查看靶机的某些文件夹,最终在/var/www/html目录下发现.nano有读写执行权限,利用kali本身自带模块msfvenom制作php木马,然后将木马上传到.nano目录下,对php木马赋权使其能执行,继续用msfconsole 模块配置攻击载荷,查看php木马所在网页发现连接成功,反弹shell获得靶机基本权限,接下来开启kali的http服务通过wget下载提权工具,并在靶机发现漏洞passwd有读写执行权限,通过特殊命令将提权工具启动,生成加密后的密码,获得root权限。

通过本次实验,首先学到了通过arp-scan -l和namp全网段以及netdiscover扫描靶机但我ip地址;然后通过nmap加一定参数扫描靶机开放的端口,进而查找出靶机的漏洞进行渗透;学会了利用msfconsole模块配置攻击载荷,包括RHOSTS和LHOST的配置等进行攻击,获得基本权限;在第二个靶机中学会用hydra -l+用户名+字典路径 -P+靶机地址+-I -f -t64进行密码爆破,找到ftp下的密码;学会用msfvenom制作php木马放到可读写执行目录中调用然后获得权限;本次实验中提权的方法python3 -c 'import pty;pty.spawn("/bin/bash")'得到root权限;也有通过msfvenom模块wget 下载木马文件,通过漏洞生成加密后的密码新建root用户进行提权。

实验中发现的错误:nmap扫描的参数没有记住,不能精确调用tcp和udp服务扫描端口,最后通过查阅nmap相关参数格式进行知识补充;msfconsole模块攻击载荷不会调用,查看payload模块修改lhost和rhosts等进行攻击;提权方法没了解过,只能通过在网上查找资料比如一句话木马还有kali自带的工具反弹shell生成新的加密密码进行提权。

调试心得:在调试中常常因为一个字母打错而失败,根本原因还是因为没熟练记住相关命令;此外在调试中步骤一般为查找靶机ip,扫描靶机相关端口,找到漏洞,记得注意细节关注用户名之类的敏感信息,找到适合的攻击方式,获得基本权限后分析目录结构进行提权。

其他心得:通过实验还是有很多知识点没记住,感觉渗透攻击类型多种多样,需要经过长时间的知识沉淀进行学习

相关知识点:情报指目标网络、服务器、应用程序等的所有信息。渗透测试人员需要使用各种资源尽可能地获取测试对象的相关信息。如果我们采用的是黑盒测试,那么情报的搜集阶段(也称为信息搜集阶段)可以说是整个渗透测试过程中最为重要的一个阶段。所谓“知已知彼,百战不殆”也正说明了情报搜集的重要性。这个阶段所使用的技术可以分成两种。

1.被动扫描:这种扫描方式通常不会被对方发现。如果我们希望了解某个人,那么可以向他身边的人询问,如他的邻居、他的同事,甚至他所在社区的工作人员等。搜集到的信息包括哪些呢?可能包括他的名字、年龄、职业、籍贯、兴趣、学历等。

同样,对于一个目标网络,我们也可以获得很多信息。如现在我们仅仅知道客户的一个域名,通过这个域名我们就可以使用Whois 查询到这个域名所有者的联系方式(包括电话号码、电子邮箱、公司所在地等),以及域名的注册和到期时间等。通过搜索引擎可查找与该域名相关的电子邮箱、博客、文件等。

2.主动扫描:这种扫描方式的技术性比较强,通常会使用专业的扫描工具来对目标网络进行扫描。扫描之后将会获得的信息包括目标网络的结构、目标网络所使用设备的类型、目标主机上运行的操作系统、目标主机上所开放的端口、目标主机上所提供的服务、目标主机上所运行的应用程序等。

Nmap(网络映射器)是一款流行的网络扫描工具,它提供了大量的参数来定制扫描的过程。

nmap:扫描单个目标主机。

nmap -sP:扫描主机列表,进行主机发现。

nmap -sS:使用TCP SYN扫描方式,这是最常用的扫描方式,快速且安全。

nmap -sT:使用TCP Connect扫描方式,建立完整的TCP连接,扫描速度较慢,但更难被探测到。

nmap -sU:使用UDP扫描方式,扫描速度慢,但可以获取有价值的服务器程序信息。

nmap -A:使用操作系统和服务识别功能扫描目标主机,提供详细信息,如版本号、协议等。

nmap -O:仅使用操作系统识别功能扫描目标主机。

nmap -sV:仅使用服务识别功能扫描目标主机。

nmap -p:指定扫描的端口或端口范围。

nmap -F:快速扫描模式,扫描有限的端口。

nmap -T:指定扫描速度等级。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值