16

应急响应日志分析小脚本

 4 years ago
source link: https://www.freebuf.com/sectool/223446.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

一、概述

在系统被入侵后,要想了解下系统被入侵的过程,最好的途径大概就是通过查看日志,对日志进行分析,来还原整个过程的来龙去脉。每次对几百兆的日志进行查看时确实头疼,尤其是对关键字进行搜索时还会出现编辑器卡顿的情况。所以就想着能不能利用脚本去完成一些常规的排查过程,来辅助完成日志分析工作。

二、功能简述

2.1、根据关键字进行搜索

(1)目的:尝试通过在日志中搜索后门名称、时间等关键字,更快找到有用信息。

(2)使用方法:将需要查询的日志放到当前路径/log/目录下,运行日志find.py,该模块最多支持两个关键字搜索,关键字之间以逗号隔开;

当最后一个关键字为1时,表示对关键字1和关键字2同时进行搜索;当最后一个关键字为2时,表示搜索满足关键字1或关键字2的日志;当最后一个关键字为空时,表示只是对关键字1进行搜索;

(3)结果保存:搜索结果会保存在当前result目录下的find_result.txt文档中。

搜索test.php,输入格式test.php, 输出如下:

auEFraY.jpg!web

搜索10月6号访问test.php的日志,输入格式test.php, 06/Oct/,1 输出如下:

nMJzY32.jpg!web

搜索10月6号或访问test.php的日志,输入格式test.php, 06/Oct/,2 输出如下:

VVfQ7ri.jpg!web

(4)ip地址查询:

对搜索到结果进行ip地址提取,查看攻击者的ip还做过哪些操作,并将搜索结果保存在log.txt中

a2EzeiA.jpg!web

2.2、Ip、url分析

(1)目的:提取日志中所有的ip地址,并对ip归属地进行查询,并对出现次数做统计;根据日志 分析url访问情况,记录访问路径、访问次数,并将结果保存到tongji.xsl表格中

(2)使用方法:将需要查询的日志放到当前路径/log/目录下,运行python rizhifenxi.py

(3)结果保存:会在result目录下生成tongji.xls,url地址统计如下

ymya22V.jpg!web

URl统计表

FJbueyZ.jpg!web

IP地址统计表

三、有待改进

1、脚本思路多数来自平常的项目积累,所以想法过于单一,在今后遇到不同的情况会在继续完善;
2、很多时候即使是筛选出来后还是更多的靠人为去分析,脚本只是辅助工具,所以存在不够通用的问题;
3、ip地址在查询中由于查询接口原因,会存在查询失败情况;
4、当日志格式为自定义情况下,需要根据定义格式在自行修改脚本中分割日志的格式;

四、最后

现成的日志分析工具,网上大牛已经分享了很多,如elk、web-log-parser、360星图等,也有大牛们自己编写的一些工具。这里只是根据自己的需求重点做了搜索、异常地址访问列表提取、ip地址归属地查询、url汇总功能,还是有很多功能可以添加完善的,写的水平比较水,可根据自己的需求做修改完善处理,有好的意见也可以多多指出。

相关代码已经上传github,查看地址如下:

https://github.com/tide-emergency/yingji/tree/master/%E5%BA%94%E6%80%A5%E5%93%8D%E5%BA%94%E4%B9%8B%E5%B7%A5%E5%85%B7%E7%AF%87/%E6%97%A5%E5%BF%97%E5%88%86%E6%9E%90%E8%84%9A%E6%9C%AC

*本文作者:菜鸟的菜,转载请注明来自FreeBuf.COM


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK