攻防世界-WEB新手练习区教程(二)

本文涵盖攻防世界WEB新手练习区多个挑战题目的解题思路与实践过程,包括利用JS漏洞获取Flag、伪造Referer、弱口令爆破、命令执行漏洞利用及PHP代码审计等。

目录

攻防世界-WEB新手练习区教程(二)

simple_js

xff_referer

weak_auth

command_execution

simple_php


攻防世界-WEB新手练习区教程(二)

simple_js

进入场景

需要输入密码 尝试了一下万能密码看看能不能绕过

没法绕过 根据题目提示js 那就查看一下代码

对于这一段源码解析可以参考文章XCTF_Web_新手练习区:simple_js(源代码详解)_1stPeak的博客-优快云博客

看完解析之后结论就是,无论我们在弹框中输入什么值,都只会返回FAUX PASSWORD HAHA

而正确的flag存放在String["fromCharCode"]这一行中

将数据进行转换一下(/x是十六进制的数据)

转换后的是十进制数值 可以根据ASCII表进行对照

得到字符串  7860sErtk12

也可以采用脚本进行转换 可以参照我的文章 步骤写的很详细

python小记--攻防世界simple_js解题脚本编写_tzyyyyyy的博客-优快云博客

flag出现

Cyberpeace{7860sErtk12}

xff_referer

Referer是请求header 的一部分,当浏览器(或者模拟浏览器行为)向web 服务器发送请求的时候,头信息里有包含 referer。比如我在www.sojson.com 里有一个www.baidu.com 链接,那么点击这个www.baidu.com ,它的header 信息里就有:Referer=https://www.sojson.com。由此可以看出来吧。它就是表示一个来源

进入场景

提示中说xff和referer是可以伪造的 由此联想到通过抓包修改数据包内容来伪造xff和refer的数据

打开burp抓包 并将抓到的包放入repeater中

添加X-Forward-For

X-Forward-For:123.123.123.123

点击go放包 查看回显

提示需要来自goole.com的请求 即为修改Referer的数据

flag出现

cyberpeace{1884ce0fcb708adc2ea2631904fb5712}

weak_auth

进入场景

尝试一下绕过

失败了~~~

那就尝试一下爆破 上burp

先抓包 并发送至intruder模块

修改一下我们需要爆破的地方

账号就先用个admin(毕竟好多登录的页面都有admin账户哈哈哈哈)

修改如下

设置字典

点击load加载字典(这个字典可以网上收集也可以私信我拿)

设置完毕之后 点击右上角 start attack进行爆破

点击一下length 发现了有一条回显长度不一样的密码 应该就是登录密码了 停止爆破 试试看能不能登录

输入账号admin 密码123456

登录成功 出现flag

cyberpeace{09c24fd232d8ffd2cb5d1855fa5b38f8}

command_execution

命令执行漏洞(command_execution)即使用者可以直接在Web应用中执行系统命令,从而获取敏感信息或者拿下shell权限。其造成的原因是Web服务器对用户输入命令安全检测不足(比如没加waf),导致恶意代码被执行。

ping用于确定本地主机是否能与另一台主机成功交换(发送与接收)数据包,再根据返回的信息,就可以推断TCP/IP参数是否设置正确,以及运行是否正常、网络是否通畅等

进入场景

先随便ping一下查看回显

输入127.0.0.1

结合下列管道符 构造恶意代码

;A;B先执行A,再执行B
&A&B简单拼接,A B之间无制约关系
|A|B显示B的执行结果
&&A&&BA执行成功,然后才会执行B
||A||BA执行失败,然后才会执行B
127.0.0.1;ls -al  (ls是linux查看命令)

执行ls命令成功 证明存在命令执行漏洞

接下来只需要查找一下flag存储在什么位置 并通过相应的命令查看就可以了

127.0.0.1&& find / -name "flag*"   (find是linux查找命令)

发现了一个flag.txt 继续查看

127.0.0.1 && cat /home/flag.txt  (cat是linux查看文件命令)

 flag出现

cyberpeace{f74d6bd12e101bf445e450819853dac5}

simple_php

进入场景

根据提示 此题需要进行php代码审计 输入符合条件的a b值 最终得到flag

a参数的要求 a必须等于0且a为真

b参数的要求 b不能为数字且b大于1234

当不同类型的值进行==比较的时候会发生类型转换

所以,可以使a=0a

b不能是数字,但又必须大于1234,这里可以用b=1235a

结合之后得到

?a=0a&b=1235a

flag出现

Cyberpeace{647E37C7627CC3E4019EC69324F66C7C}

<think>好的,我现在需要解决用户在攻防世界Web新手题中关于“backup”的解题思路或资源的问题。首先,我需要回忆一下相关的CTF题目解题方法,尤其是备份文件相关的常见技巧。 用户提到的题目可能涉及备份文件,比如常见的备份文件后缀名有.bak、.swp、.swo等。通常在Web题目中,访问这些备份文件可能会得到源码或其他关键信息,从而找到flag。 根据引用[1],在攻防世界练习的第12题中,通过备份文件得到了flag。例如,访问index.php的备份文件index.php.bak,下载后分析源码可能发现flag。另外,引用[2]中提到查看网页源代码的方法,虽然题目不同,但思路类似,可能需要查看备份文件的源代码。 接下来,我应该整理解题步骤。首先,尝试常见的备份文件路径,比如在URL后添加.bak,或者检查是否有备份文件被遗留。然后,下载备份文件并分析内容,查找flag的位置。同时,可能涉及到使用工具如curl或wget来获取文件,或者直接浏览器访问。 需要确认用户提到的backup题目具体是哪一个,但一般来说,备份文件相关的解题步骤比较通用。可能还需要注意文件名的大小写,或者尝试不同的备份后缀,如~、.tar.gz等。 最后,要确保回答符合用户的要求,结构清晰,并且引用提供的参考资料。还要生成相关问题,帮助用户进一步学习。</think>### 攻防世界 Web 新手题 "backup" 解题思路 在CTF题目中,“backup”通常指通过网站备份文件(如`.bak`、`.swp`等)获取敏感信息或源码,进而发现flag。以下是常见的解题步骤: #### 1. **备份文件探测** - **常见备份文件名**:尝试在目标URL后添加备份文件后缀,例如: - 若题目页面为`index.php`,尝试访问`index.php.bak`、`index.php~`、`index.php.swp`等[^1]。 - 若题目涉及文件下载功能,可尝试路径遍历漏洞(如`download.php?file=../../backup.sql`)。 #### 2. **下载并分析备份文件** - **直接访问**:若备份文件存在,浏览器可能直接下载或显示源码。例如,访问`http://example.com/index.php.bak`,若返回文件内容,则用文本编辑器查看。 - **代码审计**:在备份文件中搜索关键字如`flag`、`cyberpeace{`或敏感函数(如`exec()`、`system()`),定位flag逻辑。 #### 3. **工具辅助** - **目录扫描工具**:使用`DirBuster`、`gobuster`等工具扫描网站目录,寻找备份文件。 ```bash gobuster dir -u http://example.com -w /usr/share/wordlists/common.txt -x bak,swp,php~ ``` - **手动验证**:结合题目提示(如页面注释、报错信息)缩小文件范围。 #### 4. **实战示例** 根据引用[1],在攻防世界某题中,通过访问`index.php.bak`下载备份文件,发现flag直接硬编码在源码中: ```php <?php $flag = "cyberpeace{cfd7a84acc3b0314e85b47a2af6987fd}"; ?> ``` ---
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tzyyyyyy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值