参考文献:https://www.cnblogs.com/Acewipe/p/7672446.html
环境:
ubuntu
Metasploit简介:
Metasploit是一款开源安全漏洞检测工具,附带数百个已知的软件漏洞。
msf终端:
msf终端是Metasploit的用户接口,它提供了一站式的接口,能够访问Metasploit框架中几乎每一个选项和配置
安装
cd /opt
sudo wget https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb
mv msfupdate.erb msfinstall
sudo chmod 755 msfinstall
./msfinstall
msf基本使用:
msfupdate #更新
msfconsole #启动MSF终端
db_connect postgres:postgres@127.0.0.1/msf #使用数据库
信息收集
- Whois 目标域名/主机名(https://whois.aliyun.com/)
whois example.com
- 解析目标域名/主机名的IP地址
dig example.com +short
- Whois IP地址
whois 104.27.178.12
- Google Hacking
site:example.com (+inurl关键字admin,login等)
nmap端口扫描
nmap 192.168.100.2 //扫描前1000号TCP端口
nmap –sP 192.168.100.0-7//Ping扫描8个本地主机(按ARP、ICMP、TCP 80的顺序)
nmap -p 80,443 192.168.100.2//扫描80,443端口
nmap -A 192.168.100.2//描前1000号TCP端口,OS指纹,服务,然后运行一个NSE脚本
nmap –A –p- 192.168.100.2//扫描全部65535个TCP端口,OS指纹,服务,然后运行一个NSE脚本
nmap -sU 192.168.100.2// 扫描前1000号UDP端口
nmap -sU –p- 192.168.100.2//扫描所有65535个UDP端口
nmap –sU -p- -A 192.168.100.2//扫描所有65535个UDP端口,并获取服务、OS指纹,之后运行一些NSE脚本
nmap –sS -Pn- -A 192.168.100.2//隐秘的tcp扫描,不允许使用ping命令
- TCP空闲扫描
msf > use auxiliary/scanner/ip/ipidseq
msf auxiliary(scanner/ip/ipidseq) > show options
set RHOSTS 192.168.1.0/24
set THREADS 50
run
namp -PN -sI 192.168.1.31(空闲主机) 192.168.1.45(目标主机)
针对性扫描
- 服务器消息块协议扫描(获得windows系统的版本号)
msf > use auxiliary/scanner/smb/smb_version
set RHOSTS 192.168.0.109
run
还有ftp,ssh扫描方法类似,就不一一举例了。
nikto
Web服务漏洞扫描器,它可以利用-Format
选项来导出特定格式的扫描结果,使扫描结果更容易阅读和分析。
apt install git
git clone https://github.com/sullo/nikto.git
- 扫描目标并将结果导出成HTML格式
nikto -h http://example.com -output ~/nikto.html -Format htm
渗透攻击基础
show exploits #查看攻击模块
show auxiliary #辅助模块及用途
show options #显示当前exp攻击信息
search #搜索相关模块
use exploit #选用所需要的漏洞利用模块
show targets #显示支持的版本
show payloads #显示当前exp可用的攻击载荷
info #显示当前所用exploit的详细信息
set payloads #设置要用的攻击载荷
set targets #设置靶机的版本
set LHOST #设置攻击机ip
set LPORT #设置攻击端口
set RHOST #设置靶机ip
set RPORT #设置靶机端口
exploit #执行渗透攻击或模块来攻击目标
exploit -j #在计划任务下进行渗透攻击
exploit -h #列出exploit命令的帮助信息。
sessions -l #列出可用的交互会话
sessions -i #选用相应的交互会话
渗透攻击过程
- 运行msfconsole
- 确定远程主机
- 找到一个漏洞并使用这个漏洞
- 配置漏洞选项
- 入侵远程主机
如果攻击成功一般会返回一个meterpreter
:(感觉和empire挺像的,就不多举例了,碰到有趣的再记录下)
ps #列出当前系统进程
Kill uid #消灭指定uid系统进程
screenshot #截屏