信息打点-WEB应用-架构&&域名&&源码获取&&JS前端架构

WEB应用
1.架构
1.1分类
1.2指纹识别平台

2.域名
2.1单域名
2.2子域名
2.3平台

3.源码获取
3.1开源
3.2闭源
3.2.1泄露方案
3.2.2码云资源搜索
3.3黑产行业

4.JS前端架构
4.1前后端语言差异
4.2JS识别
4.3JS安全
4.4获取JS路径&&敏感信息

WEB应用

1.架构

1.1分类

1.程序语言比如 : JS 、 Java 、 Python 、 PHP 、 GO、C等

2.框架源码 : 分为开源和闭源

3.搭建平台 : 分为WEB服务器如 : Apache、Nginx、IIS 和 应用服务器如 : Tomcat、Jboss、weblogic等

4.数据库 : 分为关系型数据库如 : MYSQL等等 和非关系型数据库如 redis等等 , 在开发中的应用场景不同

5.操作系统 : Linux、Unix、Windows等等 , 操作系统也是软件

1.2指纹识别平台

指纹识别在线cms指纹识别http://whatweb.bugscaner.com/look/
Wappalyzerhttps://github.com/AliasIO/wappalyzer
TideFinger潮汐http://finger.tidesec.net/
工具强大的子域名收集器https://github.com/shmilylty/OneForAll
云悉指纹https://www.yunsee.cn/
WhatWebhttps://github.com/urbanadventurer/WhatWeb
数字观星Finger-Phttps://fp.shuziguanxing.com/#/
内网cmsseek cmsmap

2.域名

2.1单域名

1、备案信息

2、企业产权

3、注册域名

4、反查解析

2.2子域名

1、DNS数据

2、证书查询

3、网络空间

4、威胁情报

5、枚举解析

2.3平台

域名信息查询平台大全


3.源码获取

3.1开源

1.利用CMS指纹识别

2.官方或者开源平台下载


3.2闭源

3.2.1泄露方案
git源码泄露

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

漏洞利用工具:GitHack

github项目地址:https://github.com/lijiejie/GitHack

工具用法示例:GitHack.py http://www.openssl.org/.git/

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

SVN 源码泄露

SVN是一个开放源代码的版本控制系统。在使用SVN管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。网站管理员在发布代码时,没有使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn隐藏文件夹被暴露于外网环境,可以利用.svn/entries文件,获取到服务器源码。

漏洞利用工具:Seay SVN漏洞利用工具

修复建议:删除web目录中所有.svn隐藏文件夹,开发人员在使用SVN时,严格使用导出功能,禁止直接复制代码。

hg源码泄漏

Mercurial 是一种轻量级分布式版本控制系统,使用 hg init的时候会生成.hg。

漏洞利用工具:dvcs-ripper

github项目地址:https://github.com/kost/dvcs-ripper

用法示例:rip-hg.pl -v -u http://www.example.com/.hg/

CVS泄露

CVS是一个C/S系统,多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步的目的。主要是针对 CVS/Root以及CVS/Entries目录,直接就可以看到泄露的信息。

  1. http://url/CVS/Root 返回根信息
  2. http://url/CVS/Entries 返回所有文件的结构

漏洞利用工具:dvcs-ripper

github项目地址:https://github.com/kost/dvcs-ripper.git

运行示例 : rip-cvs.pl -v -u http://www.example.com/CVS/

Bazaar/bzr泄露

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

运行示例:rip-bzr.pl -v -u http://www.example.com/.bzr/

网站备份压缩文件

管理员将网站源代码备份在Web目录下,攻击者通过猜解文件路径,下载备份文件,导致源代码泄露。

常见的备份文件后缀:

  • .rar

  • .zip

  • .7z

  • .tar.gz

  • .bak

  • .txt

  • .old

  • .temp

    漏洞利用工具:御剑

WEB-INF/web.xml 泄露

WEB-INF是Java的WEB应用的安全目录,如果想在页面中直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问。

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

  1. WEB-INF/web.xml  :   Web应用程序配置文件, 描述了servlet和其他的应用组件配置及命名规则.
  2. WEB-INF/database.properties   :   数据库配置文件
  3. WEB-INF/classes/   :   一般用来存放Java类文件(.class)
  4. WEB-INF/lib/   :   用来存放打包好的库(.jar)
  5. WEB-INF/src/   :   用来放源代码(.asp和.php等)

通过找到 web.xml 文件,推断 class 文件的路径,最后直接 class 文件,再通过反编译 class 文件,得到网站源码。

DS_Store 文件泄露

.DS_Store是Mac下Finder用来保存如何展示 文件/文件夹 的数据文件,每个文件夹下对应一个。如果将.DS_Store上传部署到服务器,可能造成文件目录结构泄漏,特别是备份文件、源代码文件。

漏洞利用工具:ds_store_exp

github项目地址:https://github.com/lijiejie/ds_store_exp

用法示例:ds_store_exp.py http://hd.zj.qq.com/themes/galaxyw/.DS_Store

SWP 文件泄露

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

漏洞利用:直接访问.swp文件,下载回来后删掉末尾的.swp,获得源码文件。

GitHub源码泄漏

GitHub是一个面向开源及私有软件项目的托管平台,很多人喜欢把自己的代码上传到平台托管。攻击者通过关键词进行搜索,可以找到关于目标站点的敏感信息,甚至可以下载网站源码。

3.2.2码云资源搜索
1.平台

gitee

github

oschina

2.信息搜索

QQ号

邮箱地址

作者名

注释关键信息

3.特征关键文件

JS文件名

脚本文件名


3.3黑产行业

比如互站网或者其它的通过搜索引擎查找的各类站点(涉及违法犯罪 , 这里不展示资源链接)


4.JS前端架构

4.1前后端语言差异

前端语言如 : JS 和 JS的主流框架 ( Vue、React、Angular) , 我们是可以在浏览器上查看到它们的源代码 , 前端的工作主要就是做页面的展示和炫酷特效

后端语言如 : Java、PHP、Python、C/C++ 、Go等语言 , 我们不能直接通过浏览器获取到源代码 , 需要通过对方的一些信息泄露或漏洞获取 , 后端的工作主要是做数据传输、处理 , 优化性能 , 帮助前端实现数据交互的功能


4.2JS识别

  1. 使用WEB第三方插件wappalyzer
  2. 引入多个JS文件
  3. 一般有/static/js/app.js等顺序的JS文件
  4. 一般cookie中有connect.sid

4.3JS安全问题

源码泄露

未授权访问 = JS代码里边分析 , 得到更多的URL访问确定接口路径

敏感key泄露 = JS文件中可能配置了接口信息 (云应用、短信、邮件、数据库等)

API接口安全 = (代码中加密提交参数传递 , 更多的URL路径)


4.4获取JS路径和敏感信息

4.4.1手工-浏览器搜索

​ src=

​ path=

​ method:“get”

​ http.get("

​ method:“post”

​ http.post("

​ $.ajax

​ http://service.httppost

​ http://service.httpget

4.4.2半自动Burp分析

自带功能:Target->sitemap->Engagement tools->Find scripts

官方插件:JS Link Finder & JS Miner

第三方插件:HaE & Unexpected_information

插件加载器:jython-standalone-2.7.2

Unexpected_information:https://github.com/ScriptKid-Beta/Unexpected_information

用来标记请求包中的一些敏感信息、JS接口和一些特殊字段,

防止我们疏忽了一些数据包,使用它可能会有意外的收获信息。

HaE:

https://github.com/gh0stkey/HaE

https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Config.yml

基于BurpSuite插件JavaAPI开发的请求高亮标记与信息提取的辅助型插件。该插件可以通过自定义正则的方式匹配响应报文或请求报文,可以自行决定符合该自定义正则匹配的相应请求是否需要高亮标记、信息提取。


4.4.3自动化项目分析

Jsfinder-从表现中JS中提取URL或者敏感数据

https://github.com/Threezh1/JSFinder

一款用作快速在网站的js文件中提取URL,子域名的工具


URLFinder-从表现中JS中提取URL或者敏感数据

https://github.com/pingc0y/URLFinder

一款用于快速提取检测页面中JS与URL的工具。

功能类似于JSFinder,但JSFinder好久没更新了。


JSINFO-SCAN-从表现中JS中提取URL或者敏感数据

https://github.com/p1g3/JSINFO-SCAN

递归爬取域名(netloc/domain),以及递归从JS中获取信息的工具


FindSomething-从表现中JS中提取URL或者敏感数据

https://github.com/momosecurity/FindSomething

该工具是用于快速在网页的html源码或js代码中提取一些有趣的信息的浏览器插件,

包括请求的资源、接口的url,请求的ip和域名,泄漏的证件号、手机号、邮箱等信息。


ffuf-FUZZ爆破找到更多的js文件分析更多的信息

https://github.com/ffuf/ffuf

https://wordlists.assetnote.io

功能强大的模糊化工具,用它来FUZZ模糊化js文件。


Packer-Fuzzer-针对JS框架开发打包器Webpack检测

https://github.com/rtcatc/Packer-Fuzzer

一款针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风一样的男子a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值