web1

hint:开发注释未及时删除

web2

hint:js前台拦截 === 无效操作

禁用了 F12 和 右键

解决办法

1、ctrl+u 看源码

2、url 前面加上 view-source: 看源码

3、ctrl+shift+i 打开开发者工具

4、在浏览器设置,更多工具中找到开发者工具

web3

提示:

hint:没思路的时候抓个包看看,可能会有意外收获

看看请求头

web4

hint:总有人把后台地址写入robots,帮黑阔大佬们引路。

跳转

web5

hint:phps源码泄露有时候能帮上忙

url 后加上 /index.phps ,会下载文件。

打开如下

总结

phps文件就是php的源代码文件,通常用于提供给用户(访问者)查看php代码,因为用户无法直接通过Web浏览器看到php文件的内容,所以需要用phps文件代替。其实,只要不用php等已经在服务器中注册过的MIME类型为文件即可,但为了国际通用,所以才用了phps文件类型。

web6

hint:解压源码到当前目录,测试正常,收工

猜测后台有压缩包,使用 dirsearch 扫目录

跳转并解压缩

打开

web7

hint:版本控制很重要,但不要部署到生产环境更重要。

猜测为 git 泄露,扫目录

web8

hint:版本控制很重要,但不要部署到生产环境更重要。

接着扫

web9

hint:发现网页有个错别字?赶紧在生产环境vim改下,不好,死机了

url 后加上 /index.php.swp 会下载文件

打开文件

总结

关于swp文件

使用vi,经常可以看到swp这个文件,那这个文件是怎么产生的呢,当你打开一个文件,vi就会生成这么一个.(filename)swp文件 以备不测(不测下面讨论),如果你正常退出,那么这个这个swp文件将会自动删除 。

下面说不自动删除的情况。

  • 1、当你用多个程序编辑同一个文件时。
  • 2、非常规退出时。

可以在 linux 里使用如下命令恢复 swp 文件

1
vi -r 文件路径

web10

hint:cookie 只是一块饼干,不能存放任何隐私数据

url 解码一下

1
ctfshow{c3e9d906-4bfd-48c5-8d3c-ea45ad1e3970}

web11

hint:域名其实也可以隐藏信息,比如flag.ctfshow.com 就隐藏了一条信息‘

对域名进行 DNS 解析

web12

hint: 有时候网站上的公开信息,就是管理员常用密码

可疑信息

进入 /robots.txt

得到账号密码

web13

hint:技术文档里面不要出现敏感信息,部署到生产环境后及时修改默认密码

寻找技术文档

点击后会下载 pdf 文件,打开

url 后加入 /system1103/login.php 登录

web14

hint:有时候源码里面就能不经意间泄露重要(editor)的信息,默认配置害死人

ctrl+u 查看源码,搜索 editor

发现这个,尝试进入

在 var/www/html/nothinghere 里找到 fl000g.txt 文件

因此我们需要访问URL/nothinghere/fl000g.txt即可

web15

hint:公开的信息比如邮箱,可能造成信息泄露,产生严重后果

扫后台

进入 /admin,选忘记密码

搜索邮箱中的 qq 号,发现在西安。重置密码之后猜测用户名为 admin

web16

hint:对于测试用的探针,使用完毕后要及时删除,可能会造成信息泄露

扫目录啥也没扫出来,查资料要用 tz.php

web17

hint: 备份的sql文件会泄露敏感信息

扫后台

下载后打开

web18

hint:不要着急,休息,休息一会儿,玩101分给你flag

游戏题,查找关键代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if(game_over==false)
{
requestAnimationFrame(run);
}else
{
if(score>100)
{
var result=window.confirm("\u4f60\u8d62\u4e86\uff0c\u53bb\u5e7a\u5e7a\u96f6\u70b9\u76ae\u7231\u5403\u76ae\u770b\u770b");
}
else
{
var result=window.confirm("GAMEOVER\n是否从新开始");
if(result){
location.reload();}
}

令 game_over = false 且 score > 100 才行

控制台输入

1
game_over=false;score=200;run();

进入 110.php

web19

hint:密钥什么的,就不要放在前端了

查看源码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<script type="text/javascript">
function checkForm(){
var key = "0000000372619038";
var iv = "ilove36dverymuch";
var pazzword = $("#pazzword").val();
pazzword = encrypt(pazzword,key,iv);
$("#pazzword").val(pazzword);
$("#loginForm").submit();

}
function encrypt(data,key,iv) { //key,iv:16位的字符串
var key1 = CryptoJS.enc.Latin1.parse(key);
var iv1 = CryptoJS.enc.Latin1.parse(iv);
return CryptoJS.AES.encrypt(data, key1,{
iv : iv1,
mode : CryptoJS.mode.CBC,
padding : CryptoJS.pad.ZeroPadding
}).toString();
}

</script>
<!--
error_reporting(0);
$flag="fakeflag"
$u = $_POST['username'];
$p = $_POST['pazzword'];
if(isset($u) && isset($p)){
if($u==='admin' && $p ==='a599ac85a73384ee3219fa684296eaa62667238d608efa81837030bd1ce1bf04'){
echo $flag;
}
}
-->

AES 加密

mode模式: CBC padding填充方式: ZeroPadding
密文输出编码: 十六进制hex 偏移量iv: ilove36dverymuch 密钥:0000000372619038
密文为: a599ac85a73384ee3219fa684296eaa62667238d608efa81837030bd1ce1bf04

得到密码为 i_want_a_36d_girl

web20

hint:mdb文件是早期asp+access构架的数据库文件,文件泄露相当于数据库被脱裤了。

使用 dirsearch 递归扫描

下载后搜索 flag