WEB网站应急响应指导分析 一、日志位置 1、apache服务器 Windows: <Apache安装目录>\logs\access.log Linux: /usr/local/apache/logs/access_log 若不存在,参考Apache配置文件httpd.conf中相关配置 |
开启POST日志记录,找到httpd.conf文件 #开启模块 LoadModule dumpio_module modules/mod_dumpio.so #开启Input output dump DumpIOInput On DumpIOOutput On #找到日志记录等级设置,修改 #DumpIOLogLevel DEBUG # apache 2.2 LogLevel dumpio:trace7 # apache 2.4 |
重启web服务即可,POST日志会记录在error.log里,找包含dumpio_in或dumpio_out。这个功能会记录全日志,包括返回日志内容,如果不记录返回日志就关闭out,对服务性能也有一定影响,斟酌是否开启吧。 2、tomcat服务器 日志文件通常位于Tomcat安装目录下的logs文件夹内,若不存在,则参考Tomcat配置文件Server.xml中的相关配置,如: <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> |
3、IIS服务器 默认位置:%systemroot%\system32\logfiles\ 可自由设置 默认日志命名方式:ex+年份的末两位数字+月份+日期+.log 4、nginx服务器 日志存储路径在Nginx配置文件中,其中: access_log变量规定了日志存放路径与名字,以及日志格式名称,默认值"access_log"; 5、jboss 默认不做访问日志记录。 修改${JBOSS_HOME}/server/default/deploy/jbossweb.sar/server.xml(这个文件位置不同版本不一样,供参考) 有一段日志记录配置被注释掉,去掉注释即可,如下 1 2 3 4 | <Valve className="org.apache.catalina.valves.AccessLogValve" prefix="localhost_access_log." suffix=".log" pattern="common" directory="${jboss.server.home.dir}/log" resolveHosts="false" /> |
日志保存在${JBOSS_HOME}/server/default/log/下,前缀为localhost_access_log 关于配置文件tomcat:server.xml会有服务器端口配置,日志配置等apache:httpd.conf是apache主要配置文件,包括端口、模块启用、日志配置等。 nginx:nginx.conf是主要配置文件,会有端口、重写、代理等配置,也会有日志配置等。 IIS:web.config是主要配置文件,通过IIS界面修改的配置会保存到web.config里,包括重写等操作,日志配置一般不变,通过界面就可查看。 二、web应急思路 常遇到的web安全事件,如挂黑链,页面篡改,或者只是监测出webshell。 Webshell->IP/时间->IP所有日志->可能利用的漏洞 1、第一步我们需要找到现象发生的位置。 根据整个web应用数据流逻辑找对应风险点。 HOSTS文件:被篡改,访问正常域名,错误解析会跳转到非法网站。 网卡DNS配置:DNS配置被修改,指向恶意的DNS服务器也可造成错误解析。 终端发起DNS解析请求:局域网DNS劫持,也是跳转到非法网站。 域名服务商:在域名服务商那注册的账号泄露,导致域名对应IP被修改。 CDN服务器污染:CDN缓存未更新,还是缓存被挂黑链时的页面。 服务器端:服务器被篡改,也是遇到最多的情况,需要找到在服务器上被篡改的位置。 搜索引擎:快照污染,导致通过搜索引擎搜索时,快照里还缓存着黑链页面。 2、根据最常见的情况,服务器被篡改,找到篡改的文件后,确定文件被修改时间,如果是web页面文件,则可根据修改时间点以及文件名,搜索指定日志文件,找到访问记录。 3、根据访问记录,我们可以定位源IP(当然,这种情况是服务器前端没过云WAF或CDN,否则源IP非真实IP),最好是第一次访问的源ip和它的时间点,可靠度最高(因为攻击者上传webshell或者挂黑链后,很可能会访问一次该文件判断是否写入成功),如果无法定位源IP,则检查访问路径是否为敏感路径(如后台)。 4、根据源IP或敏感路径,过滤出相应访问日志,根据过滤后的日志,尝试分析整个攻击过程的操作,看是否有可疑漏洞触发点访问。 当无法根据以上定位时,可以多关注事件发生附近时间点的POST请求,无论是上传webshell还是黑链,绝大部分情况都是使用POST上传,可关注里面可疑路径的POST提交,比如upload.php。 三、D盾扫描linux 需要安装SSHFS在办公PC上。 3、运行winsshfs,以下红框位置是必填项。 drive name:一定要改,否则会报错。 directory:服务器对应的web目录 drive letter:挂载到本地的磁盘,盘符号选一个没使用的即可,勾选mount at login的话,每次运行winssh会自动挂载,酌情使用。 4、设置完一定要先点save保存,否则无法更新配置,然后在点mount,这样在你本地就可以看到服务器的目录了。 5、使用D盾扫描挂载到本地的磁盘即可, 四、黑链现象 1、在html页面里直接插入永久性超链接 2、XSS链接,使用网站XSS漏洞,跟上黑链代码,访问完整链接即会访问黑链。 3、根据referer跳转,判断referer是否为搜索引擎访问过来的,如果是则跳转到黑链页面。 4、驱动隐藏 查看服务器发现C盘windows目录下是否存在如下文件 c:\WINDOWS\xlkfs.dat c:\WINDOWS\xlkfs.dll c:\WINDOWS\xlkfs.ini c:\WINDOWS\system32\drivers\xlkfs.sys 该驱动可隐藏指定路径,找到驱动后停止删除即可显示路径。 sc stop xlkfs sc delete xlkfs 5、IIS重写 在web.config配置文件里设置rewrite策略,该策略可实现,当你访问某个URI关键词时,服务端会代理转发到黑链域名。 6、nginx重写 实现和IIS rewrite相同的效果。 五、应急工具 webshell查杀 黑链检测网站 |