0x01 题目:登入试试

GeekChallengeUser ~ % ./登录试试=== challenge info ===
type: web
points: 50
description: http://121.5.62.30:38001/EasyTime/
hint: Syclover用户忘了他的密码,咋办哦,依稀记得密码为6位数字,以774开头,这次我们来爆爆他的密码,让他再也不犯相同的错了
=== challenge info ===
please input your flag:

解题思路

进入页面,输入用户名Syclover和密码774

打开Yakit代理抓包:

很明显密码是经过前端md5加密过的。

md5(774)=4e0928de075538c593fbdabb0c5ef2c3

题目提示 密码为6位数字,以774开头

通过脚本生成字典:

import hashlib
payload = "774"
for i in range(1000):payload1 = payload+str("%03d"%i)# print(payload1)print(hashlib.md5(payload1.encode()).hexdigest())

复制到yakit中保存为payload,并保存:

可以在Payload 管理中查看已保存的payload:

右键劫持到的http数据包,发送到Web Fuzzer中进行爆破:

选中需要爆破的密码Value,并右键,选择插入模糊测试字典标签

选择我们前面生成的Payload:

随后可以在Web Fuzzer面板勾选高级设置调整Fuzz参数,然后发送数据包,

即可在右边的Responses处看到返回包:

点击响应大小即可筛选出爆破成功的返回数据包并查看:

flag:

SYC{xi_huan_4_l}

0x02 题目:来发个包

GeekChallengeUser ~ % ./来发个包=== challenge info ===
type: web
points: 50
description: http://120.77.11.65:8101/
hint: vanzy写了个拿flag的接口,但是好像有东西忘记改了
=== challenge info ===please input your flag:

解题思路

进入网站,查看源代码

发现在/flag.php下发送POST请求包即可获得flag:

flag:

SYC{:D_y0u_has_known_how_to_construct_a_requests_by_yourself}

0x03 题目:Can Can Need

GeekChallengeUser ~ % ./Can Can Need=== challenge info ===
type: web
points: 50
description: http://1.14.92.115:4091/
hint: 签个到我就跑(
=== challenge info ===please input your flag:

解题思路

签到题,打开 http://1.14.92.115:4091/ 发现提示:请从本地访问

显然这是考察HTTP协议的题,那就根据题目提示一步步走即可拿到flag,这里不过多赘述,直接上步骤:

X-Forwarded-For: 127.0.0.1好像不太行,就换个姿势用Client-ip: 127.0.0.1

继续根据提示修改HTTP数据包Headers,添加Referer: sycsec.com:

修改User-Agent

添加From: VanZY@Syclover.com

flag:

SYC{E3sy_Http_hhXD2333}

0x04 题目:L0veSyc

GeekChallengeUser ~ % ./L0veSyc=== challenge info ===
type: web
points: 50
description: www.sycsec.com
hint: 欢迎来到极客大挑战2022 flag以SYC开头
=== challenge info ===please input your flag:

解题思路

进入www.sycsec.com 打开F12即可获得FLAG

flag:

SYC{We1c0me_t0_Geek_2022!}

0x05 题目:justphp

GeekChallengeUser ~ % ./justphp=== challenge info ===
type: web
points: 150
description: http://124.71.215.231:11451
hint: Canzik学长爱睡觉,等他睡醒了就给你flag
=== challenge info ===please input your flag:

解题思路

打开网址 http://124.71.215.231:11451 得到源码:

<?php
error_reporting(0);
include_once ("flag.php");
highlight_file(__FILE__);
$sleeptime=$_GET['SleepTime'];
if(isset($sleeptime))
{if(!is_numeric($sleeptime)){echo '时间是一个数字啊喂!';}else if($sleeptime < 86400 * 30){echo '这点时间哪够Canzik学长睡啊';}else if($sleeptime > 86400 * 60){echo '别让Canzik学长睡死在这啊!';}else{echo '<br/>Canzik学长很满足,表示这次把这辈子的觉都睡完啦!flag在这,自己拿吧:<br/>';sleep((int)$sleeptime);echo $flag;}
}
?>

这是一个sleep()绕过的题,原理是强制转换0.??e开头的科学计数法数字为int时会解析为0

❯ php -r "echo var_dump(0.2e123);"
float(2.0E+122)
❯ php -r "echo var_dump((int)0.2e123);"
int(0)

86400 * 30 = 2592000

即 0.2592e7

所以payload如下:

flag:

SYC{C@nzik#lik3s_to#sleeP_in_class?*#}

0x06 题目:jsfind

GeekChallengeUser ~ % ./jsfind=== challenge info ===
type: web
points: 150
description:
hint: 游戏玩不了的话请使用chrome试试;你知道如何在js文件中找出敏感路径吗?
=== challenge info ===

解题思路

输入yes 开启容器,进入后按F12找到flag.js的路径:

//    "js/aaa/aaa/aaa/bbb/bbb/bbb/bbb/bbb/bbb/aaa/aaa/aaa/aaa/aaa/bbb/flag.js",

打开后得到:

//   flag = U1lDPX5bXTtTWUM9e19fXzorK1NZQywkJCQkOighW10rIiIpW1NZQ10sX18kOisrU1lDLCRfJF86KCFbXSsiIilbU1lDXSxfJF86KytTWUMsJF8kJDooe30rIiIpW1NZQ10sJCRfJDooU1lDW1NZQ10rIiIpW1NZQ10sXyQkOisrU1lDLCQkJF86KCEiIisiIilbU1lDXSwkX186KytTWUMsJF8kOisrU1lDLCQkX186KHt9KyIiKVtTWUNdLCQkXzorK1NZQywkJCQ6KytTWUMsJF9fXzorK1NZQywkX18kOisrU1lDfTtTWUMuJF89KFNZQy4kXz1TWUMrIiIpW1NZQy4kXyRdKyhTWUMuXyQ9U1lDLiRfW1NZQy5fXyRdKSsoU1lDLiQkPShTWUMuJCsiIilbU1lDLl9fJF0pKygoIVNZQykrIiIpW1NZQy5fJCRdKyhTWUMuX189U1lDLiRfW1NZQy4kJF9dKSsoU1lDLiQ9KCEiIisiIilbU1lDLl9fJF0pKyhTWUMuXz0oISIiKyIiKVtTWUMuXyRfXSkrU1lDLiRfW1NZQy4kXyRdK1NZQy5fXytTWUMuXyQrU1lDLiQ7U1lDLiQkPVNZQy4kKyghIiIrIiIpW1NZQy5fJCRdK1NZQy5fXytTWUMuXytTWUMuJCtTWUMuJCQ7U1lDLiQ9KFNZQy5fX18pW1NZQy4kX11bU1lDLiRfXTtTWUMuJChTWUMuJChTWUMuJCQrIlwiIitTWUMuJF8kXysoIVtdKyIiKVtTWUMuXyRfXStTWUMuJCQkXysiXFwiK1NZQy5fXyQrU1lDLiQkXytTWUMuXyRfK1NZQy5fXysiKCdcXCIrU1lDLl9fJCtTWUMuXyRfK1NZQy5fJCQrIlxcIitTWUMuX18kK1NZQy5fJCQrU1lDLl9fJCsiXFwiK1NZQy5fXyQrU1lDLl9fXytTWUMuXyQkKyJ7XFwiK1NZQy5fXyQrU1lDLl9fXytTWUMuJF9fKyJAXFwiK1NZQy5fXyQrU1lDLiQkJCtTWUMuX18kK1NZQy5fX18rU1lDLl8rIl9cXCIrU1lDLl9fJCtTWUMuX18kK1NZQy4kX18rIlxcIitTWUMuX18kK1NZQy4kXyQrU1lDLl9fJCsiXFwiK1NZQy5fXyQrU1lDLl9fJCtTWUMuXyQkKyJcXCIrU1lDLl9fJCtTWUMuX18kK1NZQy5fJCQrU1lDLiQkJF8rIl9cXCIrU1lDLl9fJCtTWUMuX19fK1NZQy4kX18rU1lDLl8kJCtTWUMuJCRfXytTWUMuXyQrU1lDLiQkXyQrU1lDLiQkJF8rIl9cXCIrU1lDLl9fJCtTWUMuX19fK1NZQy4kXyQrIlxcIitTWUMuX18kK1NZQy4kXyQrU1lDLiQkXysiXFwiK1NZQy5fXyQrU1lDLl9fXytTWUMuXyQkK1NZQy5fJCtTWUMuJCRfJCsiXFwiK1NZQy5fXyQrU1lDLl9fXytTWUMuJF8kKyJ9Jyk7IisiXCIiKSgpKSgpOw==

base64解码后得到:

❯ echo xxx |base64 -d
SYC=~[];SYC={___:++SYC,$$$$:(![]+"")[SYC],__$:++SYC,$_$_:(![]+"")[SYC],_$_:++SYC,$_$$:({}+"")[SYC],$$_$:(SYC[SYC]+"")[SYC],_$$:++SYC,$$$_:(!""+"")[SYC],$__:++SYC,$_$:++SYC,$$__:({}+"")[SYC],$$_:++SYC,$$$:++SYC,$___:++SYC,$__$:++SYC};SYC.$_=(SYC.$_=SYC+"")[SYC.$_$]+(SYC._$=SYC.$_[SYC.__$])+(SYC.$$=(SYC.$+"")[SYC.__$])+((!SYC)+"")[SYC._$$]+(SYC.__=SYC.$_[SYC.$$_])+(SYC.$=(!""+"")[SYC.__$])+(SYC._=(!""+"")[SYC._$_])+SYC.$_[SYC.$_$]+SYC.__+SYC._$+SYC.$;SYC.$$=SYC.$+(!""+"")[SYC._$$]+SYC.__+SYC._+SYC.$+SYC.$$;SYC.$=(SYC.___)[SYC.$_][SYC.$_];SYC.$(SYC.$(SYC.$$+"\""+SYC.$_$_+(![]+"")[SYC._$_]+SYC.$$$_+"\\"+SYC.__$+SYC.$$_+SYC._$_+SYC.__+"('\\"+SYC.__$+SYC._$_+SYC._$$+"\\"+SYC.__$+SYC._$$+SYC.__$+"\\"+SYC.__$+SYC.___+SYC._$$+"{\\"+SYC.__$+SYC.___+SYC.$__+"@\\"+SYC.__$+SYC.$$$+SYC.__$+SYC.___+SYC._+"_\\"+SYC.__$+SYC.__$+SYC.$__+"\\"+SYC.__$+SYC.$_$+SYC.__$+"\\"+SYC.__$+SYC.__$+SYC._$$+"\\"+SYC.__$+SYC.__$+SYC._$$+SYC.$$$_+"_\\"+SYC.__$+SYC.___+SYC.$__+SYC._$$+SYC.$$__+SYC._$+SYC.$$_$+SYC.$$$_+"_\\"+SYC.__$+SYC.___+SYC.$_$+"\\"+SYC.__$+SYC.$_$+SYC.$$_+"\\"+SYC.__$+SYC.___+SYC._$$+SYC._$+SYC.$$_$+"\\"+SYC.__$+SYC.___+SYC.$_$+"}');"+"\"")())();

这是一串js混淆代码,直接复制到浏览器Console执行:

flag:

SYC{D@y0u_LiKKe_D3code_EnCodE}

0x07 题目:ezR_F_I

GeekChallengeUser ~ % ./ezR_F_I=== challenge info ===
type: web
points: 150
description: http://121.5.62.30:7005/
hint: 想要得到flag就快来包含一下叭 可能你需要一台具有公网ip的服务器
=== challenge info ===

解题思路

进入地址:http://121.5.62.30:7005/

很明显这是远程包含漏洞,经过测试,过滤了http://

可以双写绕过:hthttp://tp://

然后把写好的一句话木马用公网ip的服务器进行远程包含即可

注意这里后缀会自动补上.html

所以传进去的

[Geek Challenge 2022]Web部分 writeup by q1jun相关推荐

  1. [Geek Challenge 2022] crypto部分

    这个比赛是一个网友让我看看的,这个比赛很有意思,crypto题全是百度网盘,pwn题全是谷歌网盘,这样我这pwn题就基本over了.还好这些crypto都不怎么难,都答出来了.最后成绩到10名了. w ...

  2. 2022 lineCTF WEB复现WriteUp

    lineCTF WEB复现WriteUp Gotm is_admin == true就给flag,需要伪造token,需要秘钥才行 再往下看,经典SSTI 如果能控制acc也就是id为{{.}},就能 ...

  3. 【ByteCTF 2022】Crypto Writeup

    ByteCTF 2022 密码 Crypto writeup Choose_U_flag Compare Card Shark 文章目录 1. Choose_U_flag 题目分析 初始化参数 加密过 ...

  4. 【2022羊城杯WriteUp By EDISEC】

    2022羊城杯WriteUp By EDISEC Web little_db Safepop rce_me step_by_step-v3 ComeAndLogin simple_json Misc ...

  5. i春秋2020新春公益赛WEB复现Writeup

    i春秋2020新春公益赛WEB复现Writeup 说实话这个比赛打的我是一点毛病都没有,还是觉得自己掌握的东西太少了,,, 尤其是sql注入,都被大佬们玩出花来了,可能自己太菜,,,哭了!!! 关于S ...

  6. XCTF攻防世界Web之WriteUp

    XCTF攻防世界Web之WriteUp 0x00 准备 [内容] 在xctf官网注册账号,即可食用. [目录] 目录 0x01 view-source2 0x02 get post3 0x03 rob ...

  7. CTF Geek Challenge——第十一届极客大挑战Web Write Up

    比赛时间:2020年10月17日早上9点 比赛时限:一个月 0x1 Welcome sha1绕过 Postman发送POST请求 sha1绕过 线索 Not Found But 这个Not Found ...

  8. CGCTF平台web题writeup

    前言 大概的做了做CGCTF的web题,基本都做出来了,在这整理了一下writeup,其中一些十分简单的题,就大概的写了些,后面一些难题会更详细,需要的可以直接拉倒最后面.共勉. 正文 签到题 10p ...

  9. DASCTF X CBCTF 2022九月挑战赛 WriteUp

    BBBB WRITEUP MISC easy_keyboard Sign_in ezflow Mask Reverse landing web dino3d Text Reverser PWN ez_ ...

最新文章

  1. mysql主主复制+keepalived 打造高可用mysql集群
  2. 如何修改tomcat端口
  3. JVM内存管理概述与android内存泄露分析
  4. putty连虚拟机中Linux出现Access Denied
  5. 数据结构--链表--约瑟夫环问题(单向循环链表)
  6. HDU 1286 找新朋友 (欧拉函数)
  7. 由已有数组创建新数组:concat()splice()方法
  8. NLog文章系列——入门教程(转)
  9. MATLAB滤波demo
  10. 【云计算学习教程】云计算终端技术详解
  11. T检验和p-value含义及计算公式
  12. JZOJ5442【NOIP2017提高A组冲刺11.1】荒诞 三进制状压+欧拉序
  13. c语言if后面的表达式是什么类型,if语句后面的表达式应该是什么?
  14. WPS格式转换PPT格式小技巧
  15. 干货,主流大数据技术总结
  16. DRF-视图类APIView与GenericAPIView
  17. 数据仓库开发之路之一--准备工作
  18. linux端口抓包工具下载,linux下的抓包工具tcpdump
  19. 微信小程序—WXCC模板样式
  20. JavaScript 脚本

热门文章

  1. Mybatis(一)——【快速入门、增删查改操作、核心配置文件描述及API】
  2. ssh访问控制,封杀ip,防止暴力破解
  3. 如何删除顽固的 AVI 格式的影音文件
  4. Facebook sdk嵌入,登陆与注销
  5. java web QQ(二)
  6. 基于JSP的IQ智力测试系统
  7. 计算机考研报名专业是哪个,考研报名毕业专业计算机怎么填?
  8. 通过创建动态类型 动态构建Expression Select表达式来控制Property可见性
  9. 清华大学计算机考研经历,从普通一所大学考研到清华有多难?
  10. java习题7参考练习及答案_Java基础练习题及详细答案