首页 > 其他分享 >记一次应急响应之网站暗链排查

记一次应急响应之网站暗链排查

时间:2024-08-28 18:28:32浏览次数:14  
标签:网站 站点 排查 搜索 暗链 应急 上传 admin

目录

前言

1. 从暗链而起的开端

1.1 暗链的介绍

1.2 暗链的分类

2. 在没有日志的情况下如何分析入侵

2.1 寻找指纹

2.2 搜索引擎搜索+fofa资产搜索

2.2.1 fofa资产搜索

 2.2.2 bing搜索引擎搜索

3.通过搭建系统并进行漏洞复现

4. 应急响应报告编写


前言

免责声明

        博文中涉及的方法可能带有危害性,仅供安全研究与教学之用,读者将其方法用作做其他用途,由读者承担全部法律及连带责任,文章作者不负任何责任.

        事情的起因也是假期的某一天在小程序找洞的时候,刚好在本县教育局的小程序发现了一个暗链后,及时提交给了教育SRC,也是很快得到了回应并希望我进行应急响应,于是就有了本次应急响应的开始,并对其中遇到的事情进行做个总结.

1. 从暗链而起的开端

        既然碰到了暗链,那么就简单介绍一下,也为后面分析本次网站植入的暗链做个铺垫

1.1 暗链的介绍

       暗链,是指看不见但是却被搜索引擎计算权重的外链。暗链的实现方式,是通过漏洞利用、网站后台控制等方式,在网站中植入包含攻击者链接的恶意代码。在网站维护人员和访客没有察觉的情况下,通过网站一次次被加载而高效率提升排名。这些外链,常常是违法的赌钱、情色、行骗网站。因为有些暗链只想提升在百度、谷歌等的排名,为了更好地隐藏,只有使用百度、谷歌爬虫的User-agent才能发现。

1.2 暗链的分类

        这里用介绍以及我自己碰到的案例来引入,方便记录后续的回顾

        (1)JS引入型暗链——通过修改网站title,引入外部JavaScript代码来将暗链植入被害网站,当用户通过搜索引擎搜索特定关键字时进入该网站,通过引入的外部JavaScript代码实现跳转到非法网站。

        其实下面两段脚本作用都是如果监测是如下中包含的搜索引擎进行搜索的本页面就会跳转到对应的bc站点,当然也会有将暗链绑定到一些图片上,在不经意点击时跳转到恶意站点

<script type="text/javascript">
var s=document.referrer
if(s.indexOf("baidu")>0 || s.indexOf("so")>0 || s.indexOf("sogou")>0 || s.indexOf("google")>0){
    location.href="bc站点";
}
</script>
 
<script type="text/javascript">
var regexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|so|biso|gougou|ifeng|ivc|sooule|niuhu|biso)(\.[a-z0-9\-]+){1,2}\//ig;
var where =document.referrer;
if(regexp.test(where))
{
    window.location.href='bc站点'
}
</script>

        (2)html隐藏型暗链——通过css或者JavaScript代码隐藏暗链,通常是通过position为负数,或者将display设置为none等方式来隐藏,目的是为了提升非法网站的SEO排名。

        本次应急碰到的便是第二种html隐藏型,这里展示部分代码如下:

        作用是检测搜索页面的是否是爬虫,如果是爬虫展示被篡改后的bc站标题,如果是用户就展示原本的界面标题,作用嘛就是为了提高SEO排名

<script>
    var userAgent = navigator.userAgent.toLocaleLowerCase();
    var searchEngines = ["spider", "bot"];
    var isSearchEngine = searchEngines.some(se => userAgent.indexOf(se) !== -1);

    if (!isSearchEngine) {
        document.title = "XX系统";
}
</script>
<script src="引入的篡改js页面代码"></script>
        <meta name="author" content="caiweiming">
        <meta name="robots" content="noindex, nofollow">
        <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0">

        当然,在这次应急之后,我也进行了资产测绘和发现,存在大量站点存在被篡改的问题,其中也发现了升级版的暗链,升级版是在之前的基础上对bc信息进行了ascill进行编码,这样也是为了隐藏被篡改的信息,毕竟普通人看到了之后也不会进行解码吧.

2. 在没有日志的情况下如何分析入侵

        因为在小程序入手的话还是比较困难的,于是转为较为擅长的web端,同时因为本次并未提供日志以及管理员账号等信息,如果有日志的话分析还是比较简单的,当然也不排除日志被清理了,毕竟还是一个比较敏感的站点,可以理解.

        没了日志的话,作为渗透小子,当然以黑盒的方式来进行分析了,于是想到,一般政府站点都是通过一些cms或是通过一些开源的系统搭建的,于是一场黑白盒审计开始了

2.1 寻找指纹

        打开web站点,并查看网站指纹信息,确定网站的指纹信息,并确定开发语言为PHP,根据我摸过的无数站点来看,此时基本确认为通用的建站系统.

        在查看网站源代码后,确认资产的js指纹特征,当然还有对应的版本信息,这里就不展示了

/static/admin/js/dolphin.js

2.2 搜索引擎搜索+fofa资产搜索

2.2.1 fofa资产搜索

通过fofa搜索js指纹信息,通过查看站点的页面,以及查看页面源代码确定是同一套系统

        然后随手试了一下admin/admin,居然进入了后台,在后续中操作中知道了原来是创建系统时的默认账号密码,也算有收获知道了这种站点后台长这样.

 2.2.2 bing搜索引擎搜索

        通过得到的系统信息以及版本进行搜索,最终确认本系统存在文件上传,并且知道了系统创建时的默认管理员用户为admin/admin

        尝试通过admin/admin成功能登录后台,信息较多打码太麻烦了,不贴了

3.通过搭建系统并进行漏洞复现

        既然存在漏洞并且能通过弱口令进入后台系统,那么入侵者很是采用文件上传webshell拿下后台控制权限,并进行页面的篡改

         然后后续的流程就是跟着佬的这篇博文文章进行复现操作,搭建才是最重要的

DolphinPHP ≤ 1.4.3文件上传漏洞分析_海豚php框架漏洞-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/Hananana46/article/details/113625406        主要是application/admin/controller/Attachment.phpjcrop函数,在后台的个人信息的文件上传处,没有进行任何的过滤操作,因此存在任意文件上传

首先放掉第一个个包,修改第二个包

成功返回上传路径,进行访问

        确认漏洞存在后,此时就基本知道了入侵者入侵的整个流程,当然这是我分析后的结果,当然最后也收到了感谢,证明我的分析是正确的

4. 应急响应报告编写

这里我用的ShitReport编写的报告,还是很方便的

        攻击者的流程: 首先通过DolphinPHP系统默认弱口令拿到网站权限,在管理员后台的个人信息处的图片上传处,上传webshell,拿到网站权限,最后篡改index.php页面信息插入暗链

        修复建议:修改管理员密码为强口令、通过修改系统代码增加实施访问控制和文件上传功能的验证、增强监控和日志记录、进行应用安全审计、在管理员文件上传的图片处移除后门文件,制定定期的应急响应计划、部署Web应用防火墙,并定期进行代码审计和安全测试,以提高系统安全性和响应能力。

标签:网站,站点,排查,搜索,暗链,应急,上传,admin
From: https://blog.csdn.net/weixin_72543266/article/details/141642350

相关文章

  • 在技术风暴中站稳脚跟:如何提升团队应急处理能力
            在数字化时代,软件服务的稳定性对企业的成功至关重要。用户对于在线服务的依赖日益增加,导致任何技术故障都可能引发大范围的不满情绪,并对企业声誉和经济造成直接影响。即便是像网易云音乐这样经验丰富的大型平台,也难免会遇到突发的技术故障。2024年8月19日下午......
  • 【云原生】Kubernetes中常见的Pod故障排查定位与解决方案
    ✨✨欢迎大家来到景天科技苑✨✨......
  • 电动汽车功能调试故障排查及处理方法
    在一款纯电动汽车装车及电气三电调试过程遇到的问题,故障排查方法及处理办法,进行分享,希望能给相关技术人员带来帮助一、故障现象:仪表一闪一闪,报BMS通讯故障,无法上电故障排查:1、测量整车CAN及驱动CAN终端电阻,断电状态整车CAN及驱动CAN终端电阻均为60Ω左右测量整车CAN,CAN高及......
  • 《毁灭全人类》d3dcompiler_47.dll丢失问题的详细排查与恢复步骤
    当您在尝试运行《毁灭全人类》(DestroyAllHumans!)时遇到“d3dcompiler_47.dll丢失”的提示,这意味着您的系统缺少或损坏了一个重要的动态链接库文件。d3dcompiler_47.dll是DirectX的一个组成部分,用于支持3D图形渲染。以下是详细的排查与恢复步骤:排查与恢复步骤1:重新安装Dir......
  • PG数据库导致断电/重启无法正常启动问题排查
    PG数据库导致断电/重启无法正常启动问题排查一、问题数据库断电后,启动PG数据库后无法正常启动,报”psql:couldnotconnecttoserver:Nosuchfileordirectory”的错误,错误图片如下:  二、背景分析数据库是单机版,使用k8s进行部署运行在指定节点,数据目录挂服务器的指定......
  • 微软RDL远程代码执行超高危漏洞(CVE-2024-38077)漏洞检测排查方式
    漏洞名称:微软RDL远程代码执行超高危漏洞(CVE-2024-38077)CVSScore:  9.8漏洞描述:CVE-2024-38077是微软近期披露的一个极其严重的远程代码执行漏洞。该漏洞存在于Windows远程桌面许可管理服务(RDL)中,攻击者无需任何权限即可实现远程代码执行,获取服务器最高权限。由于在解码用......
  • usbserver某某达频繁掉狗问题排查(针对加密狗类型Elite5 3.X)
    近期反复收到客户反映加密狗频繁掉狗问题,这个掉狗并不是在盛讯美恒客户端usbovernetwork上频繁掉,在客户端显示稳如老狗,但是在工程软件使用端总是犹如跳梁小丑跳出未检测到加密狗,让人甚是苦恼!下面给出一个案例,提供大家参考,定位一下问题本着有病看医生的原则,咱们需要用自带的加......
  • core dump如何解决排查的过程
    **Coredump**是指程序在运行过程中发生严重错误,通常是由于非法操作(如访问无效内存地址)导致程序崩溃,操作系统生成了一个包含程序状态的内存映像文件(coredump)。这个文件可以用于调试,帮助开发者找到问题的根源。解决和排查coredump的过程通常涉及以下几个步骤:###1.**启用Co......
  • 安防视频监控EasyCVR视频汇聚平台出现代码层面报错“panic:runtime error”的原因排查
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台基于云边端一体化架构,兼容性强、支持多协议接入,包括国标GB/T28181协议、部标JT808、GA/T1400协议、RTMP、RTSP/Onvif协议、海康Ehome、海康SDK、大华SDK、华为SDK、宇视SDK、乐橙SDK、萤石云SDK等。有用户反馈,启动EasyCVR......
  • MYSQL长事务排查
    查看造成等待的事务执行SQLSELECTtmp.waiting_thread'等待线程ID',tmp.waiting_trx_id'等待事务ID',tmp.wating_trx_state等待事务状态,tmp.waiting_query等待语句,case when(tmp.waiting_time-28800)>0then(tmp.waiting_time-28800) elsetmp......