ctfshow-web信息搜集(web1-20)(Completed)
Ctfshow-Web信息搜集(Web1-20)
web1 源代码
打开链接即使源代码,直接get flag
web2 js前台拦截
它不让我看源代码,我就打开firefox,Fn+F12查看源代码获得flag
web3 头
打开题目是这样
查看源代码,没东西,F12截包查看消息头发现flag
web4 robots.txt
看题目提示非常明显了属于是
那我们就访问/robots.txt
发现flag藏的地方,直接访问获得flag
web5 phps源码泄露
打开页面没有什么东西
然后看提示
提示phps源码,那我们访问/index.phps,发现
获得flag
web6 网站源代码泄露
查看提示
提示源码泄露在当前目录,网站服务文件名为WWW,那么访问www.zip,获得压缩包
打开index.php
提示访问fl000g.txt,访问获得flag
web7 git泄露
看题目,提示版本控制,即有可能是git泄露
用dirsearch扫一波
居然啥都没找到,最后看hint,提示是在/.git/index.php里,只能说目录文件太常见了dirsearch不屑于去扫...
web8 svn泄露
看了提示仍然是泄露,查看师傅们的总结文章:web源码泄露总结
尝试过后发现是svn泄露,访问/.svn得到flag
web9 swap文件泄露
看题目
题目中说到用vim编辑并且理奈科斯挂了,众所周知,在编辑时会生成后缀为.swp的临时文件,因此访问目录下的index.php.swp,得到flag
web10 cookie
看题
提示和cookie有关,firefox截包查看cookie,得flag
web-11 域名隐藏信息
看题
说域名有隐藏信息,毫无思绪,只能查看Hint了
提示通过dns检查找到其记录,所以打开阿里云检测平台并对目标网址进行查找
得到flag
web12 页面信息泄露
看题目
那么我们打开网站,寻找信息
没有任何信息,找到一个电话号码但是无法使用登录接口,
所以只能查看hint,提示查看robots.txt文件,由于对于其不熟悉,遂度娘得
robots协议也叫robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的。因为一些系统中的URL是大小写敏感的,所以robots.txt的文件名应统一为小写。robots.txt应放置于网站的根目录下。如果想单独定义搜索引擎的漫游器访问子目录时的行为,那么可以将自定的设置合并到根目录下的robots.txt,或者使用robots元数据(Metadata,又称元数据)。 robots协议并不是一个规范,而只是约定俗成的,所以并不能保证网站的隐私。
所以其就是一个存在网站根目录下的制定了很多规则的限制文件,而后访问得
访问/admin,弹出对话框
如此恍然大悟,立马输入admin+电话号码,登录后即得flag
web13 document泄露
题目
技术文档里面不要出现敏感信息,部署到生产环境后及时修改默认密码
根据题目中的技术文档,在页面中找到document文件并点击下载
找到敏感信息
访问链接并根据账号密码登录得flag
web 14 网页源码泄露+编辑器信息泄露
题目
提示泄露editor,我们访问/editor
发现编辑器,直接在编辑器里输入命令因为没有编译运行等按钮所以肯定行不通,所以查看其他选项按钮,找到了文件上传功能,那么考虑通过此功能查看其文件目录,再加上题目里提及如果查找文件在目录里不存在会在根目录里遍历
靠直觉打开/var/www/html查看web服务
nothing = flag
于是我们访问/nothingishere/fl00g.txt获得flag
web15 邮箱泄露
查看网站前端信息,除了获得邮箱没有找到入口
于是访问/admin
得到登录界面,尝试刚才获得的邮箱登录,发现账号错误,那换条路,打开忘记密码康康有没有线索
需要知道管理员的权限,打开之前获得邮箱的界面查找城市信息
并没有给出城市信息,但是发现是qq邮箱,那么可以通过查询qq号查出城市
在西安,输入密保城市,获得管理员密码
在登录界面admin+admin7789登录得flag
web16 php探针
题目
提示探针,不太清楚,查看hint
根据Hint访问得
点击PHPINFO
页面查找flag即得flag
web17 dns解析
题目
需要得到真实ip,直接ping
拿到ip
web18 game代码泄露
题目
打开是一个游戏界面
玩游戏是不可能的
查看源代码
发现js文件,访问/js/Flappyjs.js
查看其源代码,发现游戏完成相关代码
if(score>100)
{
var result=window.confirm("\u4f60\u8d62\u4e86\uff0c\u53bb\u5e7a\u5e7a\u96f6\u70b9\u76ae\u7231\u5403\u76ae\u770b\u770b");
}
用控制台对其进行解码得
访问110.php即得flag
web19 前端密钥+伪CBC
题目
看题目描述是将密钥放在前端代码里了,打开源代码
发现关键代码
点击查看代码
<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加密后的内容告诉在js代码的注释里了,直接POST请求即可得flag(GET上传参数无法请求)
最后验证以下AES之CBC加密
web20 mdb文件(asp+access)
题目
mdb文件是早期asp+access构架的数据库文件,文件泄露相当于数据库被脱裤了。
关键词db,访问/db返回404,说明肯定有东西,再访问/db/db.mdb,就拿到了数据库文件,没用过ACCESS,于是只能改后缀为.txt然后搜索flag字符
拿到flag
完结撒花~~~