ctfshow web day2

信息收集类

web6

描述:源码泄露
解法:dirsearch扫描目录发现www.zip,解压发现flag

dirsearch常用参数

常用的参数

-u 指定网址
-e 指定网站语言
-w 指定字典
-r 递归目录(跑出目录后,继续跑目录下面的目录)
–random-agents 使用随机UA

web7

描述:git源码泄露
解法:dirsearch扫描目录发现git目录,访问直接获取flag

web8

描述:SVN泄露 SVN(subversion)是程序员常用的源代码版本管理软件。在使用 SVN 管理本地代码过程中,使用 svn checkout 功能来更新代码时,项目目录下会自动生成隐藏的.svn文件夹(Linux上用 ls 命令看不到,要用 ls -al 命令),其中包含重要的源代码信息。
造成SVN源代码漏洞的主要原因是管理员操作不规范,一些网站管理员在发布代码时,不愿意使用“导出”功能,而是直接复制代码文件夹到WEB服务器上,这就使得.svn隐藏文件夹被暴露于外网环境,黑客对此可进一步利用
解法:dirsearch扫描目录发现.svn目录,访问直接获取flag即可。

web9

描述:vim缓存信息泄露 .swp文件泄露
根据提示,在Linux生产环境上使用vim或者vi做修改时,会生成一个swp为后缀的文件

第一次意外退出生成的是.swp
第二次意外退出生成的是.swo
第三次为.swn
解法:尝试打开第一次退出时产生的这个文件,输入url/index.php.swp
https://blog.csdn.net/a597934448/article/details/105431367

web10

描述:cookie泄露flag
解法:抓包发现flag在cookie中

web11

描述:dns域名信息隐藏
题目提到,域名其实也可以隐藏信息,比如flag.ctfshow.com 就隐藏了一条信息
解法:查找flag.ctfshow.com域名下的txt记录
查询所有DNS记录
nslookup -query=any flag.ctfshow.com

特别关注TXT记录(可能包含flag)
nslookup -query=txt flag.ctfshow.com

查询特定子域名
nslookup -query=any secret.ctfshow.com

使用dig获取更详细信息
dig any flag.ctfshow.com +noall +answer

web12

描述 管理员账号密码泄露
解法 diresearch扫描发现目录有robots.txt,里面有admin。还发现有管理员登录界面。
发现网页里有一个Help Line Number : 372619038,尝试将其当做密码,发现能成功登陆。获取flag

web13

描述 技术文档泄露
解法 页面中发现有一个document可以下载,发现是技术文档,包含了后台网址和账号密码(/system1103/login.php)

web14

描述 editor目录遍历漏洞
小0day:某编辑器最新版默认配置下,如果目录不存在,则会遍历服务器根目录
解法 扫描发现editor组件,进入发现有图片上传,用本地上传发现可以看到服务器的根目录的内容,在/var/www/html/里发现了flag文件。

web15

描述 邮箱泄露
解法 扫描发现admin登陆界面,有忘记密码功能,密保问题是所在城市。主页面发现了一个qq,搜索发现现居陕西西安。登陆获取flag

web16

描述 php探针泄露
解法 考察PHP探针php探针是用来探测空间、服务器运行状况和PHP信息用的,探针可以实时查看服务器硬盘资源、内存占用、网卡 流量、系统负载、服务器时间等信息。 url后缀名添加/tz.php 版本是雅黑PHP探针,然后查看phpinfo搜索flag
/tz.php?act=phpinfo

web17

描述 数据库备份泄露
解法 扫描发现存在backup.sql,进入发现为sql备份文件泄露

web18

描述 js信息隐藏
解法 是一个game,要求获得一定分数。查看js文件发现

1
2
3
4
5
6
7
8
9
10
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();}
}

解码发现是110.php 访问直接获取flag

web19

描述 js源码泄露
解法

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
<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加密,直接解密出密码登录就行了。

web20

描述 mdb文件泄露
解法 mdb文件是早期asp+access构架的数据库文件,文件泄露相当于数据库被脱裤了;
dirsearch扫描一下发现有/db目录,虽然访问权限沐足。题目提示我们是asp+access,尝试访问/db/db.mdb 打开即为flag