Linux系统应急响应Web日志分析
Linux系统应急响应Web日志分析
一、WEB访问日志存放位置
1、Apache
在httpd.conf和引用的*.conf文件中查找CustomLog “logs/access.log” combined
说明:
a.CustomLog 访问日志配置指令
b.logs/access.log 访问日志记录文件
c.combined 日志格式
2、Nginx
在nginx.conf或引用的*.conf文件中查找access_logs/access.log main
说明:
a.access_log 访问日志配置指令
b.logs/access.log 访问日志记录文件
c.main 日志格式
二、Web日志分析 - NCSA扩展日志格式
目前常见的WEB日志格式主要由两类,一类是Apache的NCSA日志格式,另一类是IIS的W3C日志格式,
这里主要介绍的是NCSA扩展日志格式(ECLF)
127.0.0.1 - - [14/May/2024:12:51:13] "GET /index.html HTTP/1.1" 200 4286
"http://127.0.0.1/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:129.0) Gecko/20100101 Firefox/129.0"
1、访问主机(remotehost)
显示主机的IP地址或者已解析的域名
2、日期时间(date)
一般的格式如[22/Feb/2010:09:51:46 +0800],即[日期/月份/年份:小时:分钟:秒钟 时区],占用的的字符位数也基本固定。
3、请求(request)
在网站上通过何种方式获取了哪些信息,也是日志中较为重要的一项,主要包括一下三个部分:
请求类型(METHOD)
常见的请求类型主要包括GET/POST/HEAD这三种
请求支援(RESOURCE)
显示的是相应资源的URL,可以是某个网页的地址,也可以是网页上调用的图片、动画、CSS等资源
协议版本号(PROTOCOL)
显示协议及版本信息,通常是HTTP/1.1或者HTTP/1.0
4、状态码(status)
用于表示服务器的响应状态,2xx表示请求成功;3xx表示请求的重定向;4xx表示客户端错误;5xx表示服务器错误;
5、传输字节数(butes)
即该次请求中一共传输的字节数
6、来源页面(referrer)
用于表示浏览者在访问盖页面之前所浏览的页面,只有从上一页面链接过来的请求才会有该项输出,如果是新开的页面则该项为空。
7、浏览器信息(用户代理)(agent)
用于显示用户的详细信息,包括IP、OS、Bowser等
三、如何分析Web日志
1、先搜索如SQL注入之类的攻击关键字
2、找出有恶意行为的用户
四、常规黑客攻击思路
Web漏洞-->>得到后台账号密码、找到后台地址-->>通过后台功能得到webshell-->>提权
Web漏洞-->>通过前台漏洞获取webshell-->>提权
Web漏洞-->>通过其他漏洞获取webshell-->>提权
Web漏洞-->>获取系统权限-->>提权
五、Web应急思路
找到webshell-->>确定攻击者IP-->>回溯攻击者操作-->>梳理整个攻击过程
寻找Webshell的方法:
1、文件内容中的恶意函数
2、Web日志中的webshell特征
3、贴合Web业务中url来分析Web日志
4、统计学模型 - 每天新增的动态脚本文件
5、统计学模型 - 低频访问的脚本文件
6、......
1、Apache
在httpd.conf和引用的*.conf文件中查找CustomLog “logs/access.log” combined
说明:
a.CustomLog 访问日志配置指令
b.logs/access.log 访问日志记录文件
c.combined 日志格式
2、Nginx
在nginx.conf或引用的*.conf文件中查找access_logs/access.log main
说明:
a.access_log 访问日志配置指令
b.logs/access.log 访问日志记录文件
c.main 日志格式
二、Web日志分析 - NCSA扩展日志格式
目前常见的WEB日志格式主要由两类,一类是Apache的NCSA日志格式,另一类是IIS的W3C日志格式,
这里主要介绍的是NCSA扩展日志格式(ECLF)
127.0.0.1 - - [14/May/2024:12:51:13] "GET /index.html HTTP/1.1" 200 4286
"http://127.0.0.1/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:129.0) Gecko/20100101 Firefox/129.0"
1、访问主机(remotehost)
显示主机的IP地址或者已解析的域名
2、日期时间(date)
一般的格式如[22/Feb/2010:09:51:46 +0800],即[日期/月份/年份:小时:分钟:秒钟 时区],占用的的字符位数也基本固定。
3、请求(request)
在网站上通过何种方式获取了哪些信息,也是日志中较为重要的一项,主要包括一下三个部分:
请求类型(METHOD)
常见的请求类型主要包括GET/POST/HEAD这三种
请求支援(RESOURCE)
显示的是相应资源的URL,可以是某个网页的地址,也可以是网页上调用的图片、动画、CSS等资源
协议版本号(PROTOCOL)
显示协议及版本信息,通常是HTTP/1.1或者HTTP/1.0
4、状态码(status)
用于表示服务器的响应状态,2xx表示请求成功;3xx表示请求的重定向;4xx表示客户端错误;5xx表示服务器错误;
5、传输字节数(butes)
即该次请求中一共传输的字节数
6、来源页面(referrer)
用于表示浏览者在访问盖页面之前所浏览的页面,只有从上一页面链接过来的请求才会有该项输出,如果是新开的页面则该项为空。
7、浏览器信息(用户代理)(agent)
用于显示用户的详细信息,包括IP、OS、Bowser等
三、如何分析Web日志
1、先搜索如SQL注入之类的攻击关键字
2、找出有恶意行为的用户
四、常规黑客攻击思路
Web漏洞-->>得到后台账号密码、找到后台地址-->>通过后台功能得到webshell-->>提权
Web漏洞-->>通过前台漏洞获取webshell-->>提权
Web漏洞-->>通过其他漏洞获取webshell-->>提权
Web漏洞-->>获取系统权限-->>提权
五、Web应急思路
找到webshell-->>确定攻击者IP-->>回溯攻击者操作-->>梳理整个攻击过程
寻找Webshell的方法:
1、文件内容中的恶意函数
2、Web日志中的webshell特征
3、贴合Web业务中url来分析Web日志
4、统计学模型 - 每天新增的动态脚本文件
5、统计学模型 - 低频访问的脚本文件
6、......