【无标题】

远程调试php底层浮现8.1-dev后门

Docker源码: https://github.com/phith0n/phpsrc-debug-docker/blob/master/backdoor/Dockerfile

下载已经Build好的镜像:
docker pull tuwen/phpsrc-debug:8.1-backdoor

1、运行容器:docker run -it --rm --name debug -p 8080:8080 -p 2222:22 tuwen/phpsrc debug:8.1-backdoor

运行成功的时候会启动ssh同时输出一个私钥:

2、将这个私钥保存至本地文件中,我所保存的是D盘的private.key文件中,同时修改改文件的权限,删除除了administrators和system用户之外的用户

3、再vscode中安装ssh插件

使用插件,添加连接,输入:
ssh -p2222 -i d:/private.key root@192.168.26.140
ssh -------- 用于本地与远程主机之间建立远程连接
-p2222 -------- 强制指定ssh连接的端口为2222(远程端口)
-i d:/private.key -------- 本地将密钥文件存放的路径
root@192.168.26.140 ------- 对端用户名与ip地址
如果连接不上:

复制代码
	1、检查密钥文件的权限,是否只剩两个用户,且开启权限
	2、将虚拟机的远程连接打开了之后,如果要操作虚拟机需要开启另外一个窗口,进行操作,本窗口一直做监听
	3、清理缓存,删除本地C:/用户/.ssh文件夹下的所有文件

连接成功后,打开容器的/usr/src/php目录

给容器下载插件:

在调试页面,点击创建一个launch.json文件,同时给文件中添加信息,

复制代码
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
 "version": "0.2.0",
    "configurations": [
         {
            "name": "gdb Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "/usr/local/bin/php",
            "args": ["-S", "0.0.0.0:8080", "-t", "/var/www/html"],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }
    ]

    
}

在容器中找到文件/ext/zlib/zlib.c在此文件的366行添加断点

在虚拟机上容器内给/var/www/html目录中写入一个index.php

php 复制代码
echo '<?php echo "hello world"; ?>' > /var/www/html/index.php

启动php内的简易web服务器

复制代码
root@ae72395a0ced:/# /usr/local/bin/php -S 0.0.0.0:8080 -t /var/www/html

/usr/local/bin/php ----- 启动简易web服务器
-S 0.0.0.0:8080 ------ (0.0.0.0)监听所有网络接口,(8080)服务器监听地址,如果有别的主机访问此 虚拟机ip:8080 时请求会被PHP内置服务器接收,然后PHP内置服务器从指定目录,找对应文件处理
-t /var/www/html ------ PHP内置服务器指定的网页根目录

在burpsuite上开启拦截,将这条请求发送至repeater

根据调试zlib.c中的代码,得知,添加User-Agentt: zerodiumvar_dump(233*233);即可找到后门

相关推荐
zyplayer-doc5 小时前
VuePress类静态文档站和动态知识库怎么选:两种技术路线的适用场景
javascript·人工智能·后端·安全·智能手机
KKKlucifer6 小时前
拨开接口黑盒迷雾:运营商第三方合作接口安全审计与准入管控落地实践
网络·人工智能·安全
小绫网络安全7 小时前
【每日一讲】学习网络安全的一些注意事项
网络·安全·web安全
SamChan9010 小时前
PDF翻译API的JWT签名鉴权与速率限制设计:安全实战指南
网络·安全·pdf
Python私教12 小时前
签名 URL 刷新导致审批失效?别急着删掉所有 query
python·安全
weixin_6182323012 小时前
OpenAI 因安全暂停 Astra:前沿 Agent 第一次撞上“关键级”红线
安全
Python私教12 小时前
一次性批准令牌:挡住旧授权误发新版本的工程设计
python·安全
漫路在线13 小时前
无境红日靶场五 wp
网络·安全·web安全
AmyLin_200114 小时前
PDF 脱敏技术【1】:PDF 脱敏不是盖黑框:为什么敏感信息仍能被复制,正确的保护方式是什么?
安全·pdf·sdk·脱敏·文档安全·pdf 脱敏·智能脱敏
hz5678916 小时前
视频会议终端品牌如何选择?主流产品特点与选型标准
安全·音视频·实时音视频·信息与通信