应急响应-网页篡改-技术操作只指南

初步判断

  • 网页篡改事件区别于其他安全事件地明显特点是:打开网页后会看到明显异常。
业务系统某部分出现异常字词
  • 网页被篡改后,在业务系统某部分网页可能出现异常字词,例如,出现赌博、色情、某些违法APP推广内容等。2019年4月,某网站遭遇网页篡改,首页产生大量带有赌博宣传地黑链,如图所示。
网站出现异常图片、标语等
  • 网页被篡改后,一般会在网站首页等明显位置出现异常图片、标语等。例如,政治攻击者为了宣泄不满,在网页上添加反动标语来进行宣示;还有一些攻击者为了炫耀技术,留下"Hack by 某某"字眼或相关标语,如图所示。

系统排查

  • 网页被恶意篡改是需要相应权限才能执行的,而获取权限主要有三种方法:一是通过非法途径购买已经泄露的相应的服务器账号;二是使用恶意程序进行暴力破解,从而修改网页;三是入侵网站服务器,进而获取操作权限。应对网页篡改事件进行的系统排查如下。
异常端口、进程排查
  • 初步预判为网页篡改攻击后,为了防止恶意程序定时控制和检测网页内容,需要及时发现并停止可疑进程,具体步骤如下。
  • 检测端口连接情况,判断是否有远程连接、可疑连接。
  • 查看可疑的进程及其子进程。重点关注没有签名验证信息的进程,没有描述信息的进程,进程的属主、路径是否合法,以及CPU或内存资源长期占用过高的进程。
可疑文件排查
  • 发现可疑进程后,通过进程查询恶意程序。多数的网页篡改是利用漏洞上传Webshell文件获取权限的,因此也可以使用D盾工具进行扫描。若发现Webshell文件、则可以继续对webshell进行排查。
确认篡改时间
  • 为了方便后续的日志分析,此时需要确认网页篡改的具体时间。可以查看被篡改服务器的日志文件access.log,确认文件篡改大概时间。如图所示,可知最后修改时间为2019年10月21日5时51分27秒,因此网页篡改时间在这个时间之前。

日志排查

系统日志
windows
  • 系统
    • 查看是否有异常操作,如创建任务计划、关机、重启等。
  • 安全
    • 查看各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、账号管理、策略变更、系统事件等。安全也是调查取证中最常用的日志。
Linux系统
  • Linux系统拥有非常灵活和强大的日志功能,可以保存用户几乎所有的操作记录,并可以从中检索出需要的信息,主要查看的日志如下。
    • /var/log/messages:查看是否有异常操作,如sudo、su等命令执行
    • /var/log/secure:查看是否有异常登录行为
    • last:查看最近登录行为
    • lastb:查看是否有错误登录行为
    • /var/log/audit:查看是否有铭感命令的操作
    • /var/spool/mail:查看是否有异常的邮件发送历史
    • .bash_history:查看是否有异常的命令执行记录
Web日志
  • Web日志记录了Web服务器接收处理请求及运行错误等各种原始信息。通过Web日志可以清楚知晓用户的IP地址、何时使用的操作系统、使用什么浏览器访问了网站的那个页面、是否访问成功等。通过对Web日志进行安全分析、可以还原攻击场景,如图所示。
Windows系统
  • 查看IIS日志、常见的IIS日志存放在目录"C:\inetpub\logs\LogFiles"下(如果未找到,可通过 IIS 配置查看日志存放位置)。
  • 查看与文件篡改时间相关的日志,查看是否存在异常文件访问。
  • 若存在异常文件访问,则确认该文件是正常文件还是后门文件。
Linux系统
  • 查找Apache和Tomcat日志,常见存放位置如下:
    • Apache 日志位置:/var/log/httpd/access_log。
    • Tomcat 日志位置:/var/log/tomcat/access_log。
  • 通过使用【cat】命令,可查找与文件篡改时间相关的日志,查看是否存在异常文件访问。
  • 若存在异常文件访问,则确认该文件是正常文件还是后门文件
数据库日志
Mysql数据库日志
  • 使用【show variables like 'log_%';】命令,可查看是否启用日志。
  • 使用【show variables like 'general_log_file';】命令,可查看日志位置。
  • 通过之前获得的时间节点,在 query_log 中查找相关信息。
Oracle数据库日志
  • 若数据表中有 Update 时间字段,则可以作为参考;若没有,则需要排查数据日志来确定内容何时被修改
  • 使用【select * from v$logfile;】命令,可查询日志路径。
  • 使用【select * from v$sql】命令,可查询之前使用过的 SQL

网络流量排查

  • 通过流量监控系统,筛选出问题时间线内所有该主机的访问记录,提前IP地址,在系统日志、Web日志和数据库日志中查找该IP地址的所有操作

清除加固

  • 对被篡改网页进行下线处理。根据网页被篡改的内容及影响程度,有针对性地进行处置,如果影响程度不大,篡改内容不多,那么可先将相关网页进行下线处理,其他网页正常运行,然后对篡改内容进行删除恢复;如果篡改网页带来的影响较大,被篡改的内容较多,那么建议先对整个网站进行下线处理,同时挂出网站维护的公告。
  • 如果被篡改的内容较少,那么可以手动进行修改恢复;如果被篡改的内容较多,那么建议使用网站定期备份的数据进行恢复。当然,如果网站有较新的备份数据,那么无论篡改内容是多是少,推荐进行网站覆盖恢复操作(覆盖前对被篡改网站文件进行备份,以备后续使用),避免有未发现的篡改数据。
  • 如果网站没有定时备份,那么就只能在一些旧的数据的基础上,手动进行修改、完善。因此,对网站进行每日异地备份,是必不可少的。
  • 备份和删除全部发现的后门,完成止损。
  • 通过在 access.log 中搜索可疑 IP 地址的操作记录,可判断入侵方法,修复漏洞。
相关推荐
EasyNVR4 小时前
NVR管理平台EasyNVR多个NVR同时管理:全方位安防监控视频融合云平台方案
安全·音视频·监控·视频监控
黑客Ash6 小时前
【D01】网络安全概论
网络·安全·web安全·php
阿龟在奔跑8 小时前
引用类型的局部变量线程安全问题分析——以多线程对方法局部变量List类型对象实例的add、remove操作为例
java·jvm·安全·list
.Ayang8 小时前
SSRF漏洞利用
网络·安全·web安全·网络安全·系统安全·网络攻击模型·安全架构
.Ayang8 小时前
SSRF 漏洞全解析(概述、攻击流程、危害、挖掘与相关函数)
安全·web安全·网络安全·系统安全·网络攻击模型·安全威胁分析·安全架构
好想打kuo碎8 小时前
1、HCIP之RSTP协议与STP相关安全配置
网络·安全
周全全9 小时前
Spring Boot + Vue 基于 RSA 的用户身份认证加密机制实现
java·vue.js·spring boot·安全·php
Mr.Pascal9 小时前
刚学php序列化/反序列化遇到的坑(攻防世界:Web_php_unserialize)
开发语言·安全·web安全·php
风间琉璃""10 小时前
二进制与网络安全的关系
安全·机器学习·网络安全·逆向·二进制