web信息泄露 ctfshow-web入门web1-web10
01做题思路
- 判断做题的思路是读取,写入,还是执行
- 判断大概的类型,有登录逻辑就尝试sql注入,有下载逻辑就尝试文件读取,有源码就做源码审计
02信息泄露及利用
robots.txt
以ctfshow的web1为例,访问robots拿到敏感路径,进而进入后台
.git文件泄露
版本控制系统的作用:方便开发时版本的更新与多人协作,如git控制版本,会记录每一次更改的内容,可以借此漏洞收集到文件源码
- 工具
githack
https://github.com/lijiejie/GitHack
用法 python GitHack.py url
以ctfshow web7为例,访问.git拿到flag
dirsearch
在看wp的时候见到一个扫描工具dirsearch,简单用法如下
扫描网站目录
python dirsearch.py -u https://target这行代码运行 dirsearch 工具,扫描目标网站 https://target,
寻找扩展名为 .php、.html 和 .js 的文件或目录。
python dirsearch.py -e php,html,js -u https://target在扫描过程中,dirsearch 会尝试将字典文件中的每个条目附加到目标 URL 上,
以查找是否存在这些路径或文件。
python dirsearch.py -e php,html,js -u https://target -w /path/to/wordlist
ctfshow做题记录
信息搜集
web1
f12拿到flag
web2
JavaScript 前台拦截 : 通常指的是在客户端(即浏览器)通过 JavaScript 代码对用户的请求或输入进行控制和限制。通常这种拦截行为会在用户提交表单、发送请求或进行一些交互操作时发生,开发者可能会利用 JavaScript 实现数据验证、请求拦截、重定向或信息提示等功能。
- f12之后突然不知道提示有什么意义,看题解也是五花八门


web3
bp抓包,从返回内容中找到flag
在这里记录一次修改,8080端口被占用,于是寻找解决方案,查出8080端口是系统进程,不敢随便停止,后来发现只要浏览器代理的端口与bp设置监听的端口一致即可正常抓包,即一个控制从哪出,一个选择从哪等
web4
提示的很清楚了,访问robots.txt,拿到提示后找到flag
web5
phps源码泄露,phps是用来显示php代码的高亮版本,而不是像php一样的执行版本 ,访问index.phps,拿到flag
web6
这道题没啥思路,于是用到刚刚提到的工具dirsearch,扫一下发现存在www
.zip源码泄露,访问下载解压得到flag
web7
git泄露,直接访问.git即可
web8
- svn泄露
SVN泄露与 Git泄露的区别
-
版本控制方式不同:
- SVN 是集中式版本控制系统,所有的版本信息存储在服务器端,客户端获取的是最新的文件和历史记录。泄露
.svn目录时,攻击者只能获取到服务器上提交的文件历史记录。 - Git 是分布式版本控制系统,每个开发者都有完整的本地仓库,包含所有提交记录。如果 Git 仓库泄露,攻击者可以获取本地所有的提交记录、文件以及历史数据。
- SVN 是集中式版本控制系统,所有的版本信息存储在服务器端,客户端获取的是最新的文件和历史记录。泄露
-
泄露数据的范围:
- SVN 的泄露通常是针对某个仓库的历史记录。它的访问一般是集中在仓库所在的服务器上,仓库的元数据和配置文件会在
.svn目录中泄露。 - Git 的泄露影响范围更广,因为每个开发者本地的仓库都包含完整的版本历史和提交记录。如果一个开发者的本地仓库被泄露,攻击者可以得到所有的历史记录和文件。
- SVN 的泄露通常是针对某个仓库的历史记录。它的访问一般是集中在仓库所在的服务器上,仓库的元数据和配置文件会在
-
泄露的方式:
- SVN 的
.svn目录可以通过 Web 服务器等方式直接暴露在公网,如果没有配置好访问控制(如.htaccess),攻击者可以直接访问。 - Git 的仓库泄露通常是由于错误地将
.git目录上传到公共代码托管平台(如 GitHub、GitLab 等),或者开发者不小心暴露了完整的 Git 仓库。
- SVN 的
-
工具和处理方式:
- SVN 通常使用
svnadmin、svnserve等工具来管理和保护仓库,但.svn目录的暴露仍然是个问题。 - Git 在处理泄露时,可以通过
git filter-branch等工具清除历史记录中的敏感信息,并且 Git 提供了gitignore和git hook等方法来避免将敏感数据上传到远程仓库。
- SVN 通常使用
- .svn泄露 是指 SVN 的
.svn目录被暴露,导致敏感信息泄露,通常发生在仓库没有正确配置访问控制时。 - Git泄露 则是指 Git 仓库(通常是
.git目录)被公开或错误上传,攻击者能够访问完整的历史记录、提交和文件内容。 - 两者的核心区别在于 版本控制方式:SVN 是集中式,Git 是分布式,Git 泄露的影响范围更大,因为开发者本地也有完整的仓库。

web9
vim编辑器使用时会有一个缓存文件,这个缓存文件在保存时进行删除,但是在vim意外退出时这个缓存文件,会以源文件加一个.swp后缀进行保存,我们可以尝试访问这些文件来尝试获取一些文件。
- 访问\index.php.vim

web10
根据提示,在应用里找到cookie
相关文章:
web信息泄露 ctfshow-web入门web1-web10
01做题思路 判断做题的思路是读取,写入,还是执行判断大概的类型,有登录逻辑就尝试sql注入,有下载逻辑就尝试文件读取,有源码就做源码审计 02信息泄露及利用 robots.txt 以ctfshow的web1为例,访问robots…...
Log4j在Spring项目中的应用与实践
在现代Java开发中,日志记录是不可或缺的一部分。它不仅帮助开发者调试和监控应用程序的运行状态,还能在出现问题时快速定位原因。今天,我们就来探讨如何在Spring项目中使用Log4j进行日志管理,并通过具体的实例来展示其强大的功能。…...
docker安装mysql:8.0
1.docker源 目前docker国内的源基本上用不了了,建议去淘宝找一找,我整了一个大概是10R一个月。 2.拉取镜像 docker pull mysql:8.0 3.启动容器 命令如下: docker run \-p 3306:3306 \-e MYSQL_ROOT_PASSWORD123456 \-v /home/data/mysq…...
搭建一个 Spring Boot 项目,解决jdk与springboot版本不匹配
搭建一个 Spring Boot 项目 方式一:使用 Spring Initializr Spring Initializr 是一个基于 Web 的工具,用于快速生成 Spring Boot 项目的基础结构。 访问 Spring Initializr 网站:https://start.spring.io/配置项目信息: …...
心心相系:十颗心
心心相系:十颗心 【1】心脏;人心,热心 heart //注:h-通c-或k- warmhearted a.热心的,热心肠的;亲切的a warm-hearted person 为人古道热肠 词根cardi(o)-(heart),例词:cardiology(…...
ChatGPT行业热门应用提示词案例-AI绘画类
AI 绘画指令是一段用于指导 AI 绘画工具(如 DALLE、Midjourney 等)生成特定图像的文本描述。它通常包含场景、主体、风格、色彩、氛围等关键信息,帮助 AI 理解创作者的意图,从而生成符合要求的绘画作品。 ChatGPT 拥有海量的知识…...
前端面试手写--虚拟列表
目录 一.问题背景 二.代码讲解 三.代码改装 四.代码发布 今天我们来学习如何手写一个虚拟列表,本文将把虚拟列表进行拆分并讲解,然后发布到npm网站上. 一.问题背景 为什么需要虚拟列表呢?这是因为在面对大量数据的时候,我们的浏览器会将所有数据都渲染到表格上面,但是渲…...
达梦数据库针对慢SQL,收集统计信息清除执行计划缓存
前言:若遇到以下场景,大概率是SQL走错了执行计划: 1、一条SQL在页面上查询特别慢,但拿到数据库终端执行特别快 2、一条SQL在某种检索条件下查询特别慢,但拿到数据库终端执行特别快 此时,可以尝试按照下述步…...
李沐--动手学深度学习 序列模型
1.使用正弦函数和可加性噪声生成序列数据 import torch from torch import nn from d2l import torch as d2l#使用正弦函数和可加性噪声生成序列数据 T 1000 #总共产生1000个点 time torch.arange(1,T1,dtypetorch.float32) x torch.sin(0.01*time) torch.normal(0,0.2,(…...
数据分析、商业智能、业务分析三者之间的关系
商业智能 (Business Intelligence, BI)、业务分析 (Business Analytics, BA) 和数据分析 (Data Analytics, DA) 三者都与数据密切相关,但在目标、方法和应用上存在差异。为了能够清晰地解释,下面将从定义入手,然后阐述它们之间的联系和区别。…...
【Spring+MyBatis】留言墙的实现
目录 1. 添加依赖 2. 配置数据库 2.1 创建数据库与数据表 2.2 创建与数据库对应的实体类 3. 后端代码 3.1 目录结构 3.2 MessageController类 3.3 MessageService类 3.4 MessageMapper接口 4. 前端代码 5. 单元测试 5.1 后端接口测试 5.2 使用前端页面测试 在Spri…...
让编程变成一种享受-明基RD320U显示器
引言 作为一名有着多年JAVA开发经验的从业者,在工作过程中,显示器的重要性不言而喻。它不仅是我们与代码交互的窗口,更是影响工作效率和体验的关键因素。在多年的编程生涯中,我遇到过各种各样的问题。比如,在进行代码…...
【嵌入式Linux应用开发基础】fork()函数
目录 一、fork 函数概述 1.1. 函数作用 1.2. 函数原型与头文件 1.3. 返回值 1.4. 核心特性 二、父子进程的区别与联系 2.1. 相同点 2.2. 不同点 三、典型应用场景 3.1. 多任务处理 3.2. 守护进程创建 3.3. 执行外部程序 3.4. 并行计算 四、fork 函数的关键注意事…...
2024 年 CSDN 博客之星年度评选:技术创作与影响力的碰撞(统计时间2025-02-17 11:06:06)
摘要:在技术的海洋里,每一位博主都像是一座独特的灯塔,用自己创作的光芒照亮他人前行的道路。2024 年 CSDN 博客之星年度评选活动,正是对这些灯塔的一次盛大检阅,让我们看到了众多优秀博主在技术创作领域的卓越表现以及…...
串的基本操作--数据结构
目录 一、串的基本概述 二、串的存储结构 2.1定义属性存储结构 串长有两种表示方法: 1、用一个额外的变量length来存放串的长度; 2、串值后面加一个不计入串长的结束标记字符“\0”,此时的串长为隐含值。 2.2堆的顺序存储结构 三、串的基本操…...
Unity 命令行设置运行在指定的显卡上
设置运行在指定的显卡上 -force-device-index...
Dest1ny漏洞库: 美团代付微信小程序系统任意文件读取漏洞
大家好,今天是Dest1ny漏洞库的专题!! 会时不时发送新的漏洞资讯!! 大家多多关注,多多点赞!!! 0x01 产品简介 美团代付微信小程序系统是美团点评旗下的一款基于微信小程…...
设计模式:状态模式
状态机有3个要素:状态,事件,动作。 假如一个对象有3个状态:S1、S2、S3。影响状态的事件有3个:E1、E2、E3。每个状态下收到对应事件的时候,对象的动作为AXY。那么该对象的状态机就可以用如下表格来表示。S1收到事件E1的…...
【故障处理】- 执行命令crsctl query crs xxx一直hang
【故障处理】- 执行命令crsctl query crs xxx一直hang 一、概述二、故障处理三、解决方法 一、概述 Oracle RAC环境中,遇到执行crsctl query crs xxx等相关命令不返回任何结果,一直hang在那里。系统下执行命令ps -ef |grep crsctl query crs softwarever…...
Zabbix——监控Nginx
背景 在项目中使用Nginx之后,有时候我们需要知道Nginx具体的工作情况,这时候就需要使用zabbix进行Nginx的相关监控 这边我们有两种方法 使用普通的http请求的方式获取基本信息如果使用了Nginx Plus,就可以通过Nginx Plus的接口获取更多的信…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
