Metasploit的基本使用

参考文献: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 #截屏
上一篇:C#利用反射,遍历获得一个类的所有属性名,以及该类的实例的所有属性的值


下一篇:MySQL查看SQL语句执行效率