前言

菜逼一枚,好多题没做出来.

你能突破重重考验吗

robots.txt里发现一个php源码,当时也没做出来就是了,php5.5.9,懒得做了,剩下的交给各位了.

<?php

extract($_GET);
if(!empty($a)) {
    $b=trim(file_get_contents($c));
    if($a===$b) {
        include('conn.php');
        if (!$con) {
            die('Could not connect:'.mysql_error());
        }
        if(md5(md5($md5))==0) {
            echo "<br><center><h2>Try hard to get id = 1 info</h2></center><br>";
            if(isset($_GET['id'])) {
                $id = @(float)$_GET['id'];
                $sId = 1;
                if($id == $sId) {
                    echo 'Invalid id ('.$id.').';
                } else {
                    $query = 'SELECT * FROM users WHERE id = \''.$id.'\';';
                    $result = mysql_query($query);
                    $row = mysql_fetch_assoc($result);
                    if($row) {
                        echo "</br>"."id: ".$row['id']."</br>";
                        echo "flag_part1: ".$row['username']."</br>";
                        echo "next_challenge: ".$row['password']."</br>";
                    }
                }
            }
        } else {
            echo '$md5 is not available';
        }
    } else
        echo '<h1>nonono!</h1>';
}

smarty

这题就是纯纯的smarty模板注入,{php}{/php}标签被禁用了,但是if没禁用,先

{if phpinfo()}{/if},看一眼disable_functions,没禁file_put_contents,直接写马,用PHP concat_function UAF  绕过disable func,就可以返回上级目录读flag了

逆向

不会,看这位师傅的:https://www.cnblogs.com/xshhc/p/17361785.html

Py交易

给了个pyd文件,直接反编译成py,python2.7

import base64

def encode(message):
    s = ''
    for i in message:
        x = ord(i) ^ 32
        x = x + 16
        s += chr(x)
    
    return base64.b64encode(s)

correct = 'VlxRV2tWIyNTKShTJSUkVSIjKVIoVSRSIlUnUVMgJ1EkUVQhIW0='
flag = ''
print 'Input flag:'
flag = raw_input()
if encode(flag) == correct:
    print 'correct'
else:
    print 'wrong'

解密代码

import base64

def decode(encoded_message):
    decoded = base64.b64decode(encoded_message).decode('utf-8')
    s = ''
    for i in decoded:
        x = ord(i) - 16
        x = x ^ 32
        s += chr(x)
    return s

correct = 'VlxRV2tWIyNTKShTJSUkVSIjKVIoVSRSIlUnUVMgJ1EkUVQhIW0='
print(decode(correct))

企业环境渗透

第一题

扫目录找到kindediter,可以任意读取文件,但是没法读上级目录,没权限,image目录下有个二维码。

扫出来U2FsdGVkX1+VpmdLwwhbyNU80MDlK+8t61sewce2qCVztitDMKpQ4fUl5nsAZOI7bE9uL8lW/KLfbs33aC1XXw==
aes解出来,然后就没有然后了,做不来。

第二题

一个米拓6.0的站,有注入和任意读取漏洞,但是似乎跟这没啥关系。有个manger.php,一个无密码的webshell,用他直接写马,然后似乎是pkexec 提权漏洞.

说点什么
支持Markdown语法
好耶,沙发还空着ヾ(≧▽≦*)o
Loading...