信息收集


web1

  • 描述: 开发注释未及时删除

F12, 然后在注释里面找到flag

web2

  • 描述: js前台拦截 === 无效操作

你懂的, js是可以被禁止使用的; 虽然本题禁止F12和右键,但是它没禁止右上角更多里面的开发者工具, 打开开发者工具界面就能在源码里面翻到flag, 或者在设置里面禁用js就行

web3

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

抓包就可以在返回包里面找到flag

web4

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

访问/robots.txt找到新的路由/flagishere.txt, 访问即可得到flag

/robots.txt 用于向搜索引擎爬虫提供指示,告诉它们哪些页面或部分不应该被抓取或索引, 我们就应该去那些不允许爬虫爬的地方

web5

  • 描述: phps源码泄露有时候能帮上忙

访问/index.phps可以获得当前页面的源码, 在注释里面可以找到flag

.phps 文件通常在开发和调试中有用, 只显示代码而不是执行, 我们利用这个来进行代码审计寻找漏洞

web6

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

一样的, 上一个是某个文件的phps, 这次是整个的www.zip,访问/www.zip下载源码

“flag in fl000g.txt”, 但是只有一个假的flag, 访问/fl000g.txt才是真的flag

可能会有的文件: www.zip, project.zip, source_code.zip, app.zip, release.zip

web7

  • 描述: 版本控制很重要,但不要部署到生产环境更重要

这次是.git文件, 直接访问就可以得到flag了

Git是一个版本控制工具, Git 会在项目的根目录下创建一个 .git 目录

那什么是版本控制工具呢, Github知道吧, 它们都用于管理和跟踪文件的更改,特别是源代码

web8

  • 描述: 版本控制很重要,但不要部署到生产环境更重要

SVN也是一个版本控制工具, 这次是.svn文件

web9

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

这次是vim非正常退出生成的临时文件index.php.swp, 下载文件之后查看即可

vim: .swp和.swo, 后者是在前者存在的情况下生成的备份交换文件

nano: .save文件

Emacs/Gedit: ~文件, 在文件名后加上~

web10

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

反着来就行, 查看cookie值就能得到flag

web11

域名解析查询过往txt文件即可, 但是我就是试不出来, 图我就不给了

web12

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

利用网站扫描工具进行扫描, 可以得到一些有用的界面, 比如robots.txt, 里面显示有一个/admin路由, 访问后发现需要账号密码才能继续访问

结合题目描述, 翻找网站能找到的一些公开信息只有页尾的Help Line Number : 372619038, 其他界面的页尾似乎是无效的, 我们就用这个去尝试登录, 账号是admin

web13

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

那就是说明书没有删除, 页尾刚好就有一个document, 通过源代码检查发现直接通往/document.pdf, 访问后发现正好是开发文档, 里面有后台地址, 默认账号密码, 登录获得flag

web14

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

进行目录扫描, 可以得到/editor路由:

插入文件->文件空间, 然后在里面扒拉, 扒拉半天找到了/var/www/html/nothinghere/fl000g.txt, 访问/nothinghere/fl000g.txt就能得到flag

web15

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

根据提示能拿到页尾的qq邮箱1156631961@qq.com, 后台扫描能拿到后台登录界面/admin, 尝试弱密码登录, 当用户名为admin的时候提示密码错误, 现在只有密码未知了

忘记密码的密保问题是"我的所在地是哪个城市?" 此时想起来qq似乎是显示所在地的(虽然可以自己编辑), 用qq搜索这个人, 可以看到所在地是中国的陕西西安, 提交答案, 提示密码重置为admin7789, 登录即可获得flag

web16

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

扫描可以发现tz.php,然后页面上这个 PHPINFO 是可以点击的, 点进去直接搜索ctfshow就可以拿下了

诸如此类的还有c99.php, r57.php, b374k.php 等等,你可在github上找到它们

web17

  • 描述: 备份的sql文件会泄露敏感信息

备份文件是/backup.sql, 打开就可以得到flag

web18

  • 描述: 不要着急,休息,休息一会儿,玩101分给你flag(一休是吧)

既然是101, 在js程序中搜索100(肯定大于100)看看结果

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鏄惁浠庢柊寮€濮�");

解码得到"你赢了,去幺幺零点皮爱吃皮看看". 即/110.php, 访问即可拿到flag

web19

  • 描述: 密钥什么的,就不要放在前端了

已经不是密钥了, 已经是源码了, 用对应变量发包就可以了, 直接输入似乎不行

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

web20

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

访问/db/db.mdb, 下载之后用access软件(微软的?)打开, flag在"返回主界切换面板选项"后面

随便总结

基本上都是网站泄露的文件/信息/架构, 这种一般就是先靠经验去试一试, 然后拿工具去扫描, 能不能扫描出来全靠字典;

再整不出来, 那就进入下一个阶段了