当前位置: 首页 > news >正文

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泄露的区别

  1. 版本控制方式不同

    • SVN 是集中式版本控制系统,所有的版本信息存储在服务器端,客户端获取的是最新的文件和历史记录。泄露 .svn 目录时,攻击者只能获取到服务器上提交的文件历史记录。
    • Git 是分布式版本控制系统,每个开发者都有完整的本地仓库,包含所有提交记录。如果 Git 仓库泄露,攻击者可以获取本地所有的提交记录、文件以及历史数据。
  2. 泄露数据的范围

    • SVN 的泄露通常是针对某个仓库的历史记录。它的访问一般是集中在仓库所在的服务器上,仓库的元数据和配置文件会在 .svn 目录中泄露。
    • Git 的泄露影响范围更广,因为每个开发者本地的仓库都包含完整的版本历史和提交记录。如果一个开发者的本地仓库被泄露,攻击者可以得到所有的历史记录和文件。
  3. 泄露的方式

    • SVN.svn 目录可以通过 Web 服务器等方式直接暴露在公网,如果没有配置好访问控制(如 .htaccess),攻击者可以直接访问。
    • Git 的仓库泄露通常是由于错误地将 .git 目录上传到公共代码托管平台(如 GitHub、GitLab 等),或者开发者不小心暴露了完整的 Git 仓库。
  4. 工具和处理方式

    • SVN 通常使用 svnadminsvnserve 等工具来管理和保护仓库,但 .svn 目录的暴露仍然是个问题。
    • Git 在处理泄露时,可以通过 git filter-branch 等工具清除历史记录中的敏感信息,并且 Git 提供了 gitignoregit hook 等方法来避免将敏感数据上传到远程仓库。
  • .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数组即可。 至于每一种情况是否可以达到&#xf…...

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关&#xff0…...