元做网站/巨量算数数据分析入口

元做网站,巨量算数数据分析入口,网站设计考虑因素,wordpress mobile api文章目录 前言一、常见的源码泄露漏洞git源码泄露SVN源码泄露DS_Store文件泄漏网站备份压缩文件泄露WEB-INF/web.xml泄露CVS泄露.hg源码泄露Bazaar/bzr泄露.swp文件泄露 前言 在Web应用方面对于安全来说,可能大家对SQL注入、XSS跨站脚本攻击、文件上传等一些漏洞已…

文章目录

  • 前言
  • 一、常见的源码泄露漏洞
    • git源码泄露
    • SVN源码泄露
    • DS_Store文件泄漏
    • 网站备份压缩文件泄露
    • WEB-INF/web.xml泄露
    • CVS泄露
    • .hg源码泄露
    • Bazaar/bzr泄露
    • .swp文件泄露


前言

在Web应用方面对于安全来说,可能大家对SQL注入、XSS跨站脚本攻击、文件上传等一些漏洞已经耳熟于心了,这些漏洞可以对系统造成严重的安全风险,今天的所讲述的漏洞不亚于我们所提及到的 Owasp top 10,那就是系统源码泄露,而且Web源码泄露在实际项目中并不少见,一些大的厂商有可能也存在这类安全问题。


一、常见的源码泄露漏洞

下图中把常见的源码泄露问题进行列举整理
在这里插入图片描述

git源码泄露

漏洞成因
Git是一个开源的分布式版本控制系统,在执行git init初始化目录的时候,会在当前目录下自动创建一个 .git目录,用来记录代码的变更记录等。发布代码的时候,如果没有把 .git这个目录删除,就直接发布到了服务器上,攻击者就可以通过它来恢复源代码。

在这里插入图片描述

  • HEAD 这个git项目当前处在哪个分支里
  • config 文件包含项目特有的配置选项,git config 命令会改动它
  • description 项目的描述信息
  • hooks/ 系统默认钩子脚本目录
  • info/ 目录包含一个全局性排除(global exclude)文件,用以放置不希望被记录在 .gitignore文件中的忽略模式(ignored patterns)
  • objects/ 目录存储所有数据内容(commits,trees,blobs,tags)
  • refs/ 标识你项目里的每个分支指向了哪个提交(commit)
  • index 文件保存暂存区信息

漏洞利用

利用工具 Githack

下载地址:https://github.com/lijiejie/GitHack

使用方式 python GitHack.py http://www.example.com/.git/
在这里插入图片描述
修复建议

删除 .git目录或者修改中间件配置进行对 .git隐藏文件夹的访问。

SVN源码泄露

漏洞成因

SVN是源代码本地管理软件。使用SVN管理本地代码过程中,会生成一个名为 .svn的隐藏文件夹,其中包含重要的源码信息,而造成 .svn文件泄露的主要原因还是网站管理员在发布代码时,没有使用导出功能,而直接进行复制粘贴。这就使 .svn隐藏文件夹被暴露于外网环境,可以利用 .svn/entries 文件,获取到服务器源码。

漏洞利用

利用工具 svnExploit
下载地址:https://github.com/admintony/svnExploit

使用方式

安装依赖库
sudo pip install -r requirements.txt
查看帮助
python SvnExploit.py -h
检测SVN源代码泄露
python SvnExploit.py -u http://192.168.27.128/.svn
下载源代码
python SvnExploit.py -u http://192.168.27.128/.svn --dump

修复建议

1、不要使用 svn checkoutsvn up 更新服务器上的代码,使用svn export (导出)功能代替。
2、服务器软件(NginxApacheTomcatIIS等)设置目录权限,禁止访问 .svn.git目录

DS_Store文件泄漏

漏洞成因

.DS_Store 是Mac OS保存文件夹的自定义属性的隐藏文件,如文件的图标位置或背景色,相当于Windows 的 desktop.ini。由于开发人员发布代码时未删除文件夹中隐藏的 .DS_Store,可能造成文件目录结构泄漏,源代码文件等敏感信息的泄露。

漏洞利用

利用工具:ds_store_exp

下载地址:https://github.com/lijiejie/ds_store_exp

使用方式

python3 ds_store_exp.py http://27.0.0.1/.DS_Store

在这里插入图片描述
修复建议

不影响应用运行的情况下删除 .DS_Store 文件

网站备份压缩文件泄露

漏洞成因

在网站正常使用中,往往需要经过修改和升级,这时就需要对网站或对某处数据进行备份。而备份文件会因为各种原因保存在网站Web目录下,而当对此目录没有访问权限限制时,就很可能会导致备份或缓存文件被下载下来。
该漏洞往往会导致服务器整站源代码或者部分页面的源代码被下载,利用。源代码中所包含的各类敏感信息,如服务器数据库连接信息,服务器配置信息等会因此而泄露,造成巨大损失。

常见备份文件后缀名

  • .rar
  • .zip
  • .7z
  • .tar
  • .gz
  • .bak
  • .swp
  • .txt
  • .html

常见的网站源码备份文件名

  • web
  • website
  • backup
  • back
  • www
  • wwwroot
  • temp

漏洞利用

像备份压缩文件泄露,可以直接用专门的目录扫描工具进行敏感文件扫描

利用工具:御剑、dirseach.py、gobuster 等

修复建议

1、做好目录访问限制
2、在不影响运行的情况下,及时删除备份文件

WEB-INF/web.xml泄露

漏洞成因

WEB-INF是Java的WEB应用的安全目录,该目录原则上来说是客户端无法访问,只有服务端才可以访问。如果想在页面中直接访问其中的文件,必须通过 web.xml 文件对要访问的文件进行相应映射才能访问。

WEB-INF主要包含以下文件或目录:

/WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则
/WEB-INF/classes/:含了站点所有用的 class 文件,包括 servlet class 和非servlet class,他们不能包含在 .jar文件中
/WEB-INF/lib/:存放web应用需要的各种JAR文件,放置仅在这个应用中要求使用的jar文件,如数据库驱动jar文件
/WEB-INF/src/:源码目录,按照包名结构放置各个java文件。
/WEB-INF/database.properties:数据库配置文件

WEB-INF/web.xml泄露的起因就是我们在使用网络架构的时候,对静态资源的目录或文件的映射配置不当,可能会引发一些的安全问题,导致web.xml等文件能够被读取。

漏洞利用

扫描后台有没有WEB-INF/web.xml,然后直接访问 通过找到web.xml文件,分析可用敏感信息,推断class文件的路径,直接class文件,最后再通过反编译class文件,得到网站源码。

修复建议

合理配置,控制目录访问权限

CVS泄露

漏洞成因

cvs项目在初始化(cvs checkout project)的时候,会在project目录下创建一个名为CVS的目录,其中保存了各个文件的修改和commit记录,通过此目录可以获取代码的历史版本,其中两个关键文件为:CVS/Root和CVS/Entries,分别记录了项目的根信息和所有文件的结构

漏洞利用

主要是针对CVS/Root以及CVS/Entries目录,直接就可以看到泄露的信息。

利用工具:dvcs-ripper

下载地址:https://github.com/kost/dvcs-ripper

使用方式

rip-cvs.pl -v -u http://www.example.com/CVS/

修复方式

删除CVS的CVS目录

.hg源码泄露

漏洞成因

Mercurial是一种轻量级分布式版本控制系统,使用 hg init 新建仓库的时候,会生成一个备份文件 .hg

利用方式

利用工具:dvcs-rippergithub
下载地址:https://github.com/kost/dvcs-ripper
Example run (for hg):

rip-hg.pl -v -u http://www.example.com/.hg/

It will automatically do hg revert
or if you would like to ignore SSL certification verification (with -s):

rip-hg.pl -s -v -u http://www.example.com/.hg/

修复建议

删除Web目录中所有 .hg 隐藏文件夹

Bazaar/bzr泄露

漏洞成因

bzr也是个版本控制工具, 虽然不是很热门, 但它也是多平台支持, 并且有不错的图形界面。

利用方式

利用工具:dvcs-rippergithub
下载地址:https://github.com/kost/dvcs-ripper

Example run (for bzr):

rip-bzr.pl -v -u http://www.example.com/.bzr/

It will automatically do bzr revertor if you would like to ignore SSL certification verification (with -s):

rip-bzr.pl -s -v -u http://www.example.com/.bzr/

修复建议

删除web目录中所有.bzr隐藏文件夹

.swp文件泄露

漏洞成因

swp即swap文件,在编辑文件时产生的临时文件,它是隐藏文件,如果程序正常退出,临时文件自动删除,如果意外退出就会保留,文件名为 .filename.swp

漏洞利用

可通过直接访问.swp文件,下载回来后删掉末尾的.swp,获得源码文件。

修复建议

删除web目录中所有.swp隐藏文件夹

防范措施

源码泄露的危害是巨大的,因此在企业内要根据实际情况选择恰当的方式去发现以及杜绝此类风险。

1) nginx上配置拒绝对对相应目录的访问
2)上线时检测是否存在相应的目录,防止带有.git的目录上线
3)线上定期巡检web目录,检查是否有相关的目录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/71617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录一次wifi版有人物联串口服务器调试经过

1、首先买了一个华为的wifi路由器,连接上以后,设置好网络名字和wifi密码 2、用网线连接串口服务器,通过192.168.1.1登录,进行配置 找到无线客户端配置,先在基本配置中打开5G配置,然后再去5.8G配置中设置 …

Android 平台架构系统启动流程详解

目录 一、平台架构模块 1.1 Linux 内核 1.2 硬件抽象层 (HAL) 1.3 Android 运行时 1.4 原生 C/C 库 1.5 Java API 框架 1.6 系统应用 二、系统启动流程 2.1 Bootloader阶段 2.2 内核启动 2.3 Init进程(PID 1) 2.4 Zygote与System Serv…

【Windows下Gitbook快速入门使用】

Windows下Gitbook快速入门使用 1 工具安装1.1 Node.js下载安装1.1 环境变量1.2 npm配置1.3 安装gitbook 2 gitbook使用2.1 gitbook 无法执行2.2 gitbook常用命令 Gitbook是一个软件,使用Git和Markdown来编排书本; GitBook helps you pushlish beautiful …

RK3588V2--HYM8563TS RTC 实时时钟适配移植

1. 什么是RTC RTC(Real-Time Clock,实时时钟)是一种电子设备或芯片,它用于保持当前时间和日期,即使系统关闭或断电也能持续计时。RTC 通常用于计算机、嵌入式系统、物联网设备等需要精确时间管理的场景。 1.1 RTC 的…

MHA集群

一.MHA集群 MHA master high avavibility 主服务器高可用 如上图所示,我们之前说过,如果在主从复制架构中主服务器出现故障,就需要我们将从服务器作为主服务器,等故障的主服务器修复好之后,再将修好的主服务器作为从服…

10 【HarmonyOS NEXT】 仿uv-ui组件开发之Avatar头像组件开发教程(一)

温馨提示:本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦! 目录 第一篇:Avatar 组件基础概念与设计1. 组件概述2. 接口设计2.1 形状类型定义2.2 尺寸类型定义2.3 组件属性接口 3. 设计原则4. 使用…

微信小程序+SpringBoot的单词学习小程序平台(程序+论文+讲解+安装+修改+售后)

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,我会一一回复,希望帮助更多的人。 系统背景 (一)社会需求背景 在全球化的大背景下,英语作为国际…

鸿蒙HarmonyOS评论功能小demo

评论页面小demo 效果展示 1.拆解组件,分层搭建 我们将整个评论页面拆解为三个组件,分别是头部导航,评论项,回复三个部分,然后统一在index界面导入 2.头部导航界面搭建 Preview Component struct HmNavBar {// 属性&a…

解析 SQL,就用 sqlparse!

文章目录 解析 SQL,就用 sqlparse!一、背景:为什么你需要 sqlparse?二、什么是 sqlparse?三、如何安装 sqlparse?四、简单易用的库函数1\. parse(sql)2\. format(sql, **options)3\. split(sql)4\. get_typ…

点云软件VeloView开发环境搭建与编译

官方编译说明 LidarView / LidarView-Superbuild GitLab 我的编译过程: 安装vs2019,windows sdk,qt5.14.2(没安装到5.15.7),git,cmake3.31,python3.7.9,ninja下载放到…

DeepSeek系列模型技术报告的阅读笔记

DeepSeek系列模型技术报告的阅读笔记 之前仔细阅读了DeepSeek系列模型的主要技术方面内容与发展脉络,以下是DeepSeek系列模型技术报告的笔记,有错误的地方欢迎指正! 文章目录 DeepSeek系列模型技术报告的阅读笔记GQADeepseek MoEAbstractIn…

SparkStreaming之04:调优

SparkStreaming调优 一 、要点 4.1 SparkStreaming运行原理 深入理解 4.2 调优策略 4.2.1 调整BlockReceiver的数量 案例演示: object MultiReceiverNetworkWordCount {def main(args: Array[String]) {val sparkConf new SparkConf().setAppName("Networ…

Gauss数据库omm用户无法连接处理

确保gauss数据库服务已经打开 重启gauss服务 gs_om -t restart 连接gauss gsql -d postgres -p 26000 -r 结果发现 查看数据库运行情况 gs_om -t status --detail 我们可以看到 cluster_state 的值是 Unavailable 不可用 那么问题大概率是出现在了这里 然后我们再查看一…

计算机毕业设计Python+DeepSeek-R1大模型医疗问答系统 知识图谱健康膳食推荐系统 食谱推荐系统 医疗大数据(源码+LW文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

数字体验推荐TOP8提升用户参与

数字内容体验推荐核心优势 在数字化竞争日益激烈的市场环境中,数字内容体验的差异化优势已成为企业突围的关键。通过智能算法驱动的个性化推荐系统,能够精准捕捉用户行为轨迹与兴趣偏好,实现内容与受众的动态匹配。这种技术不仅显著提升页面…

redis数据迁移教程(使用RedisShake实现不停机迁移十分便捷)

1.我的场景 需要把本地的redis数据上传到阿里云服务器上面,服务器上redis并没有开aof持久化,但是将rdb文件上传至服务器后每次重启redis,rdb文件会被覆盖导致无法同同步数据,最终决定使用RedisShake 2.RedisShake介绍 什么是 RedisShake​ RedisShake 是一个用于处理和迁移…

C语言_数据结构总结4:不带头结点的单链表

纯C语言代码,不涉及C 0. 结点结构 typedef int ElemType; typedef struct LNode { ElemType data; //数据域 struct LNode* next; //指针域 }LNode, * LinkList; 1. 初始化 不带头结点的初始化,即只需将头指针初始化为NULL即可 void Init…

【数据集】社区天气资讯网络CoWIN-香港小时尺度气象数据(含MATLAB处理代码)

社区天气资讯网络CoWIN-香港小时尺度气象数据 数据概述气象变量说明数据提取(MATLAB全代码)输出WRF所需站点气温数据参考数据概述 官网-Community Weather Information Network (CoWIN) data policy CoWIN 提供 2010 - 2024 年 的数据下载,每年数据均可单独下载。下载数据…

尚硅谷爬虫note15

一、当当网 1. 保存数据 数据交给pipelines保存 items中的类名: DemoNddwItem class DemoNddwItem(scrapy.Item): 变量名 类名() book DemoNddwItem(src src, name name, price price)导入: from 项目名.items import 类…

LVGL直接解码png图片的方法

通过把png文件解码为.C文件,再放到工程中的供使用,这种方式随时速度快(应为已经解码,代码中只要直接加载图片数据显示出来即可),但是不够灵活,适用于哪些简单又不经常需要更换UI的场景下使用。如…