第二章日志分析-apache日志分析
前情概要
● 访问日志:默认位置通是/var/log/apache2/access.log.1(Debian/Ubuntu)
或/var/log/httpd/access_log.1(CentOS/RHEL)。
● 错误日志:默认位置通常是/var/log/apache2/error.log.1(Debian/Ubuntu)
或/var/log/httpd/error_log.1(CentOS/RHEL)。
1、提交当天访问次数最多的IP,即黑客IP:
题目都说了是apache日志分析,所以直接
cd /var/log/apache2/
cat access.log.1
其实这里,数据虽然多,但是哪个ip访问次数多,大致看一看就知道了,这里的话就用语法筛选一下
cut -d- -f 1 access.log.1|uniq -c | sort -rn | head -20
语法解析:
● cut:这是一个命令行工具,用于从每一行中提取特定的部分。
● -d-:指定字段的分隔符是-(一个连字符)。
● -f 1:指定要提取第一个字段(即连字符前的部分)。
● access.log.1:输入文件,假设这是Apache访问日志的文件名。

flag{192.168.200.2}
2、黑客使用的浏览器指纹是什么,提交指纹的md5:
所谓浏览器指纹你可以简单理解为抓包里面的ua头
cat access.log.1 |grep 192.168.200.2 |more

都一样,直接复制出来加密就行
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36

3、查看包含index.php页面被访问的次数,提交次数:
cat access.log.1 | grep "/index.php" | wc -l
回显数字27,命令和之前的同一个道理,慢慢理解就好
flag{27}
4、查看黑客IP访问了多少次,提交次数:
这个说白了考的还是语法的使用,多练习多熟悉即可
cat access.log.1|grep "192.168.200.2"|cut -d' ' -f1 |sort|unic -c
cut -d' ' -f1:
● cut 命令用于从每行中提取指定的字段。
● -d' ' 表示字段分隔符是空格。
● -f1 表示提取第一个字段,即 IP 地址。
sort:
● sort 命令用于对输入内容进行排序。
● 这里它对提取出的 IP 地址进行排序。
uniq -c:
● uniq 命令用于去除重复的行。
● -c 选项表示在输出中包含每个唯一行前出现的次数。
● 这里它统计每个唯一 IP 地址出现的次数。

flag{6555}
5、查看2023年8月03日8时这一个小时内有多少IP访问,提交次数:
还是语法的使用
cat access.log.1|grep "03/Aug/2023:08:"|awk '{print $1}'|sort -nr |uniq -c|wc -l
● 不加 wc -l:显示每个 IP 地址的访问次数。
● 加上 wc -l:显示不同 IP 地址的总数量。
这里要看有多少种ip访问,所以就加上wc -l


浙公网安备 33010602011771号