0x00.前言:

如何知道自己所在的公司或单位是否被入侵了?是没人来“黑”,还是因自身感知能力不足,暂时还没发现?入侵检测是每个安全运维人员都要面临的严峻挑战。安全无小事,一旦入侵成功,后果不堪设想。

  随着高危端口的加固,很多黑客直接可利用的漏洞攻击手法都会失效。但是web服务,不是所有的企业或单位都可以关掉的。于是,基于PHP、Java、ASP等动态的web服务漏洞就变成黑客入侵的主要入口。

比如,利用上传功能,直接上传一个WebShell,利用SQL注入直接将管理员的密码解析出来,利用暴力破解将后台登录的用户名和密码给爆破出来......

针对Web服务的入侵痕迹检测,可以通过分析WAF日志、Access Log日志、或者系统命令调用日志等来分析。

下面我将通过分析Apache下的access日志来简单说明入侵痕迹的检测的思路。

0x01.搭建环境:

这里我使用了DVWA测试平台,因为这上面可以利用的攻击方式很多。

a.使用御剑后台扫描工具

b.对扫描出的phpMyAdmin进行暴力破解

c.测试sql注入

d.利用BurpSuite进行暴力破解登录密码

0x02.分析access.log日志:

直接使用文本编辑工具打开日志可以看出日志很详细,但不便于分析,这里推荐使用日志分析工具Apache Logs Viwers。

使用Apache Logs Viwers打开access.log日志

可以借助工具上的过滤、排序功能进行筛选自己想要分析的内容,从上图可以看出有大量状态Status为404的日志,并根据请求的url不难推断出,这是在进行目录扫描操作,验证了使用 御剑后台扫描工具

继续翻查该IP的日志,可以看到有大量POST请求phpMyAdmin/index.php的日志,在最后状态号Status由300变为了200,可以推断出,攻击者在进行phpMyAdmin的暴力破解,并成功破解了用户名和密码。

上面红框中的内容,同样可以从GET请求的URL中,以及size的大小变化中,判断出是在破解用户为admin的密码,并最终成功。

不用多说,有了上面的经验,并且有点Mysql基础的,同样可以从请求中,看出这是一条组合好的注入语句。

手工分析大量的安全日志是一件很辛苦、很漫长的过程,当然获得的信息也是最细致的方式。下面是在自动化日志分析工具上所截下来的图,可以很直观的了解网站的安全现状,以及存在的安全隐患。

0x03.总结:

很多时候,运维人员很少有时间去分析自己运维的网站日志,而且很多主管也不是很重视日志的备份存储,造成入侵事件后,攻击者将日志抹除,这也在后期的溯源上造成了很大的困难。当然分析这些日志,麻烦繁琐,可以先借助自动化分析工具来完成这些事情,当给出的安全报告中,发现有隐患时,及时让安全人员对日志进行手工分析,更加利于我们及时做好安全上的防护。

附360星图工具:链接:https://pan.baidu.com/s/10Wuv2ZCbytOhYF7ZkD334A 提取码:w14q

[日志分析] Access Log 日志分析的更多相关文章

  1. Nginx Access Log日志统计分析常用命令

    Nginx Access Log日志统计分析常用命令 IP相关统计 统计IP访问量 awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时 ...

  2. 转 Nginx Access Log日志统计分析常用命令

    Nginx Access Log日志统计分析常用命令Nginx Access Log日志统计分析常用命令IP相关统计 统计IP访问量 awk '{print $1}' access.log | sor ...

  3. 在nginx日志的access log中记录post请求的参数值

    背景:有时程序偶出现参数少了或没有提交到下一个链接Url里后出现问题,如何查呢,最好的办法是在nginx上的加post参数,以定位到问题才有可能对某个UIR的代码出现的问题进行排查. og_forma ...

  4. tomcat 和 jboss access log 日志输出详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt179 工作中nginx+jboss/tomcat反向代理集成,想打开后端jb ...

  5. nginx.conf 下日志host.access.log 说明

    位置usr/local/nginx/conf/nginx.conf $server_port 请求端口 $remote_addr 局域网代理IP:如果没同意任何代理的话$remote_addr 就是真 ...

  6. GoAccess 视图化access.log 日志

    1.安装GoAccess 工具可以直接使用 apt-get install goaccess 2.使用goaccess命令将日志生成html文件 goaccess 日志路径 -o 输出HTML的路径 ...

  7. 利用logrotate切割nginx的access.log日志

    一.新建一个nginx的logrotate配置文件 /var/log/nginx/access.log { daily rotate compress delaycompress missingok ...

  8. Nginx修改access.log日志时间格式

    一.修改原因 因为要获取nginx访问信息,作为开发的数据使用,但是nginx的access.log文件中的默认的时间格式是这样的: [02/Nov/2017:20:48:25 +0800] 而要求的 ...

  9. goaccess分析access.log

    接上一篇,开始学习goaccess使用~ 源码安装完成后,我的goaccess的配置文件goaccess.conf位于/usr/local/etc/ /usr/local/etc/goaccess/g ...

随机推荐

  1. 自制无线共享工具C++源代码

    // wire.cpp : 定义控制台应用程序的入口点. // #include <iostream> #include <string.h> using namespace ...

  2. 视频压缩:I帧、P帧、B帧

    /*************************************************************************************************** ...

  3. 重构:以Java POI 导出EXCEL为例

    重构 开头先抛出几个问题吧,这几个问题也是<重构:改善既有代码的设计>这本书第2章的问题. 什么是重构? 为什么要重构? 什么时候要重构? 接下来就从这几个问题出发,通过这几个问题来系统的 ...

  4. MySQL 忘记root密码解决方法,基于Ubuntu 14.10

    忘记MySQL root密码解决方法,基于Ubuntu 14.10 忘了mysql密码,从网上找到的解决方案记录在这里. 编辑mysql的配置文件/etc/mysql/my.cnf,在[mysqld] ...

  5. 关于运行springboot时报Unregistering JMX-exposed beans on shutdown的解决方案

    其实这个错误并不影响程序的运行,但是对于处女座的同仁来说,看到报错难免不舒服,那么看看解决方法,此错误信息的意思是说:在关机状态下未注册jmx暴露的bean. 解决方案是在入口类上加上  @Enabl ...

  6. href="#" 是什么意思?

    <a href="#" onclick="process1()">开始你表演</a>作用:书签的另一种用法建立书签语法:<a na ...

  7. Android官方开发文档下载

    Android官方开发文档 docs-24_r02.rar(链接:https://pan.baidu.com/s/12xC998JeUHj3ndfDXPM2ww 密码:bxyk) ADT下载.Andr ...

  8. Robot framework(RF) Builti,Screenshot和Collections标准库介绍

    1.1  Builti标准类库 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习Robot Framework.虽然通过RIDE 提供“填表”一 ...

  9. linux基础和vim基本使用

    Liunx基础 1. 目录  /:根目录,一般根目录只存放目录,在linux下有且只有一个根目录.所有的东西都是从这里开始,例如:/home就是先从根目录/开始,再进入到home目录.  /bin ...

  10. Spring MVC 文件上传 & 文件下载

    索引: 开源Spring解决方案--lm.solution 参看代码 GitHub: pom.xml WebConfig.java index.jsp upload.jsp FileUploadCon ...