文章目录
前言
这是我第一次使用vulnHub的靶机进行渗透测试,不是完整的自己独立完成的,参考了别人的通关技巧。
一、探测目标主机的ip
这里有很多的方法,我在这里使用的两种方法。
1.使用arp-scan -l 命令,来探测同一局域网内的存活主机。
2.使用netdiscover -i eth0
可以看到主机都是在192.168.64.0/24 这个网段
接着就可以使用nmap来扫描这个网段。
前面的ip是主机的网关地址。
接着通过查看本地ip,可以发现192.168.64.140是本机ip。看所以192.168.64.142就是我们的目标主机的ip。
二、使用namp扫描目标主机的开放端口,并通过开放端口得到更多的信息
nmap的常用命令:
帮助命令:
nmap --help
主机发现:
nmap -sn 网段(192.168.64.0/24)
端口扫描:
nmap -sS -p 1-1000 ip地址 (这里只扫描了前1000的端口)
Nmap -sV -p- ip地址 (这里是扫描所有的端口)
系统扫描:
nmap -O 192.168.64.142
版本扫描:
nmap -sV 192.168.64.142
综合扫描:
nmap -A 192.168.64.142
- 扫描整个网段(ping 扫描)
nmap -sn 192.168.64.0/24
- 我们利用Nmap执行全端口扫描
Nmap -sV -p- 192.168.64.142
扫出来之后,发现22,80,111端口是开着的,所以我们可以通过访问端口来得到更多的信息,或者利用端口的漏洞来进一步渗透。
22:SSH远程连接
80:HTTP网站协议
111:RPCBInd协议
45684:敏感端口
常见的端口攻击方式:
https://www.cnblogs.com/botoo/p/10475402.html
在进行端口扫描之后就需要进行目录扫描,kali一般用dirbuster扫描,
而Windows可以使用御剑和GitHub上的目录扫描工具。
在这里我没有进行目录扫描。
在开放了80端口的前提下,我们可以直接在浏览器上访问该主机。
首先我们需要判断,该网站是否为cms,可以使用相应的cms检测工具(Wappalyzer),或者直接去搜索相应的网站信息。
这里我们直接可以知道该网站的cms为Drupal Site。
所以我们可以根据该cms,去网上搜索相应的漏洞。
可以发现CVE-2018-7600可以利用。
在找到相应的漏洞后就需要利用相应的漏洞。
三. .Metasploit漏洞利用
msf的简单使用:
术语:
渗透攻击(Exploit),指由攻击者或渗透测试者利用一个系统、应用或服务中的安全漏洞,所进行的攻击行为
攻击载荷(Payload),是我们期望目标系统在被渗透攻击之后去执行的代码
Shellcode,是在渗透攻击是作为攻击载荷运行的一组机器指令,通常用汇编语言编写
模块(Module),指Metasploit框架中所使用的一段软件代码组件,可用于发起渗透攻击或执行某些辅助攻击动作
监听器(Listener),是Metasploit中用来等待网络连接的组件
模块:
Auxiliary(辅助模块):为渗透测试信息搜集提供了大量的辅助模块支持
Exploits(攻击模块):利用发现的安全漏洞或配置弱点对远程目标系统 进行攻击,从而获得对远程目标系统访问权的代码组件。
Payload(攻击载荷模块):攻击成功后促使靶机运行的一段植入代码
Post(后渗透攻击模块):收集更多信息或进一步访问被利用的目标系统
Encoders(编码模块):将攻击载荷进行编码,来绕过防护软件拦截
基础指令:
msfconsole:进入控制台
help/?:帮助菜单
exit:退出MSF控制台
Back:返回上一级
info:显示一个或者多个模块的信息
show:显示所给类型的模块
background:将当前操作在后台运行
use:使用所选择的模块
set:设置选项
unset:取消设置的选项
reload_all:重新加载所有模块
模块使用规则:
Auxiliary 模块: show auxiliary
命名规则:功能/服务/名称(scanner/smb/smb_ms17_010 )
Exploits 模块: show exploits
命名规则:操作系统/服务/名称 windows/smb/ms17_010_eternalblue
Payload 模块:show payload
命名规则:操作系统/类型/名称 windows/x64/meterpreter/reverse_tcp
rank表示好用级别:normal(正常),excellent(优秀),good(良好),average(平均)
msf中大多数命令:
show exploits
列出metasploit框架中的所有渗透攻击模块。
show payloads
列出metasploit框架中的所有攻击载荷。
show auxiliary
列出metasploit框架中的所有辅助攻击载荷。
search name
查找metasploit框架中所有的渗透攻击和其他模块。
info
展示出制定渗透攻击或模块的相关信息。
use name
装载一个渗透攻击或模块。
LHOST
你本地可以让目标主机连接的IP地址,通常当目标主机不在同一个局域网内时,就需要是一个公共IP地址,特别为反弹式shell使用。
RHOST
远程主机或是目标主机。
set function
设置特定的配置参数(EG:设置本地或远程主机参数)。
setg function
以全局方式设置特定的配置参数(EG:设置本地或远程主机参数)。
show options
列出某个渗透攻击或模块中所有的配置参数。
show targets
列出渗透攻击所有支持的目标平台。
set target num
指定你所知道的目标的操作系统以及补丁版本类型。
set payload name
<