本文章用于记录本人web学习的全过程与涉及相关知识点总结~
第一篇文章用于记录ctfshow网站有关于web信息搜集的相关知识点及题目解法。
第一题:web1
F12打开开发者工具,查找源代码或元素即可获得flag
<!--
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date: 2020-09-01 13:45:32
# @Last Modified by: h1xa
# @Last Modified time: 2020-09-02 03:12:48
# @email: h1xa@ctfer.com
# @link: https://ctfer.com
-->
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>CTFshow 新手入门题目 </title>
<script type="text/javascript">
</script>
</head>
<body>
<h3>web1:where is flag?</h3>
<!-- ctfshow{0863357e-8a14-46f3-ad21-1163e8966d2d} -->
</body>
</html>
第二题:web2
由于本页面无法通过F12检查源代码,可以使用ctrl+U的方式检查源代码
<!--
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date: 2020-09-01 13:45:32
# @Last Modified by: h1xa
# @Last Modified time: 2020-09-02 03:20:04
# @email: h1xa@ctfer.com
# @link: https://ctfer.com
-->
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>CTFshow 新手入门题目 </title>
<script type="text/javascript">
window.oncontextmenu = function(){return false};
window.onselectstart = function(){return false};
window.onkeydown = function(){if (event.keyCode==123){event.keyCode=0;event.returnValue=false;}};
</script>
</head>
<body>
<h3>无法查看源代码</h3>
<!-- ctfshow{094e4d83-6a77-40b8-a3c5-58d26000618e} -->
</body>
</html>
第三题:web3
根据题目提示,没思路可以选择抓包
本题可以通过F12 —>选择网络—>F5刷新页面,查看响应头获得flag
第四题:web4
根据题目提示,总有人把后台地址写入robots
引入关于robots的相关定义:
【1】robots是搜索引擎爬虫协议,也就是你网站和爬虫的协议。
【2】由于robots文件是一个纯文本文件,也就是常见的.txt文件,而且必须要存放在网站的根目录下,所以域名/robots.txt 是可以访问文件。
针对本题:首先域名后增加/robots.txt,得到提示为:flagishere.txt
域名后增加/flagishere.txt,获得本题flag
第五题:web5
根据题目提示:phps源码泄露有时候能帮上忙
引入phps源码泄露的相关定义:
【1】phps文件就是php的源代码文件,通常用于提供给用户(访问者)直接通过Web浏览器查看php代码的内容。因为用户无法直接通过Web浏览器“看到”php文件的内容,所以需要用phps文件代替。用户访问phps文件就能看到对应的php文件的源码。
【2】使用方式:原网页请求后增加/index.phps
本题同理:域名后增加/index.phps,获得phps源码
<?php
/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date: 2020-09-01 14:14:17
# @Last Modified by: h1xa
# @Last Modified time: 2020-09-01 14:34:53
# @email: h1xa@ctfer.com
# @link: https://ctfer.com
*/
//ctfshow{cd7f575c-e8d7-4310-b46a-8e7244f7700c}
echo "web5:where is flag ?"
第六题:web6
根据本题提示:解压源码到当前目录,测试正常,收工
本题使用dirsearch进行目录扫描,发现/www.zip,域名后添加/www.zip,难度不大,就是扫描目录比较慢,之后根据www.zip访问相应的fl000g.txt文件
第七题:web7
本题提示:版本控制很重要,但不要部署到生产环境更重要。
引入.git源码泄露的相关定义:
采用git管理项目时,上传项目忘记删除.git文件,攻击者可通过该文件恢复源码历史版本,从而造成源码泄露。
毫无头绪就dirsearch扫描目录,得到/.git/,访问即可
第八题:web8
本题提示:版本控制很重要,但不要部署到生产环境更重要。
本题和上一题类似,版本控制器问题常用的就是Git和SVN,直接dirsearch扫描目录,得到/.svn,访问即可。
第九题:web9
本题提示:发现网页有个错别字?赶紧在生产环境vim改下,不好,死机了
引入vim相关知识点:
// vim 在编辑文件时会创建临时文件
// 如果文件正常退出 临时文件自动删除
// 如果文件意外退出 就会保留临时文件
// 例如
// vim 在编辑 demo.txt 文件时意外退出 会保留临时文件 .demo.txt.swp
// 再次编辑 demo.txt 文件时意外退出 会保留临时文件 .demo.txt.swo
// 第三次编辑 demo.txt 文件时意外退出 会保留临时文件 .demo.txt.swn
// 第四次编辑 demo.txt 文件时意外退出 会保留临时文件 .demo.txt.swm
// 第五次编辑 demo.txt 文件时意外退出 会保留临时文件 .demo.txt.swl
本题直接访问url/index.php.swp即可获得flag
第十题:web10
本题提示:cookie 只是一块饼干,不能存放任何隐私数据
本题为cookie信息泄露类型题目,F12检查cookie,发现url编码,进行解码
第十一题:web11
本题提示:最终flag flag{just_seesee}
第十二题:web12
本题提示:有时候网站上的公开信息,就是管理员常用密码
那这题肯定得在网站寻找公开信息,且与密码很相似的文件,通过查找发现网页下方有一个号码,利用dirsearch扫描目录发现robots.txt,接下来:
/robots.txt
/admin
要求输入用户名与密码,本题不涉及sql注入万能密码使用,利用网站公开信息,输入用户名admin,密码为网页下端号码,得到flag
第十三题:web13
提示信息: 技术文档里面不要出现敏感信息 部署到生产环境后及时修改默认密码
首先万能三件套未发现有效信息,选择从网页查找相关信息,最后在网页下方发现可以点进document.pdf,在pdf下方发现登录后台地址与密码,直接进入
第十四题:web14
本题提示:有时候源码里面就能不经意间泄露重要(editor)的信息,默认配置害死人
目录扫描发现 /editor, 访问 /editor,文件空间,发现可以遍历靶场服务器的文件,在 /var/www/html 下发现 /nothinghere/fl000g.txt,访问 /nothinghere/fl000g.txt 得到 Flag
第十五题:web15
本题提示信息:公开的信息比如邮箱,可能造成信息泄露,产生严重后果
目录扫描发现 /admin 访问 点击忘记密码,密保问题为: 我的所在地是哪个城市?在页面底部发现QQ邮箱,搜索QQ号码 在资料中发现所在地为 陕西-西安,填写密保问题 西安,密码重置为 admin7789,尝试使用 admin/admin7789 登录,登录成功 得到 Flag