2020湖湘杯 wp
昨天打了下湖湘杯,签到选手上线。
web
题目名字不重要反正题挺简单的
题目源码
<?php
error_reporting(0);
//I heard you are good at PHPINFO+LFI, flag is in flag.php, find it my dear noob vegetable hacker.
if ( isset($_GET['file']) ) {
$file = $_GET['file'];
if ( $file === "phpinfo" ) {
phpinfo();
exit;
}
if ( preg_match('/proc/i' , $file) ) {
die("private");
}
$file = "/var/www/html/" . $file;
$content = file_get_contents($file);
if ( !$content ) {
die("nothing");
}
if ( preg_match("/script|<\?/i", $content) ) {
die("bypass me");
}
include_once $file;
} else {
highlight_file(__FILE__);
}
我这题估计是非预期出的,我首先看了一下phpinfo,然后ctrl+f,输入{
啊这
白嫖200分,舒服
NewWebsite
给了一套cms,拖进dirsearch扫一扫
扫到admin目录,访问一手
尝试弱口令,admin/admin成功登入
然后在修改个人资料的地方找到了上传点(页面点不动是最骚的,还得去看源码找链接)
尝试上传
直接上传php不行,试了一会儿发现phtml能直接上传
刷新一下页面,就能看到路径了
直接访问拿flag
misc
misc2(题目名忘了…)
这道题的考点是内存取证
题目给了一个raw镜像,要用到工具volatility
我的vol是装在windows上的所以命令和linux有点区别
首先先获取机器版本profile,命令:
.\volatility_2.6_win64_standalone.exe -f WIN-BU6IJ7FI9RU-20190927-152050.raw imageinfo
列举一下缓存在内存的注册表
.\volatility_2.6_win64_standalone.exe -f WIN-BU6IJ7FI9RU-20190927-152050.raw --profile=Win7SP1x86_23418 hivelist
找到注册表中system和SAM的virtual地址
使用hashdump将内存中的系统密码提取出来
.\volatility_2.6_win64_standalone.exe -f WIN-BU6IJ7FI9RU-20190927-152050.raw --profile=Win7SP1x86_23418 hashdump -y 0x8a01c008 -s 0x93fc41e8
ctf的密码解码出来是qwer1234,根据题目的提示,再将其sha1加密一下就是flag了
总结
还是太菜了,只能做一点简单题
吐槽一下,这平台属实8太行,后面交flag一直交不上。
文章写的有点烂,如果文中有错误的地方,希望各位师傅能指正一下,感谢。