第19天:信息收集-Web应用源码获取闭源备份开发泄漏WebPack打包资源搜索ICO定位

news/2024/12/22 14:07:14/
#知识点

1、信息收集-Web应用-源码获取-已知指纹&未知指纹

2、信息收集-Web应用-源码获取-泄漏问题&发现指纹

一、参考文章:

https://www.secpulse.com/archives/124398.html

https://mp.weixin.qq.com/s/QgLDdaefXlZtvlSiFQShZw

二、源码泄漏原因:

由于开发者不好的习惯或者开发工具,如IDEA、vscode等,有时还会在公网,如github、gitee、oschina上遗留下历史存档(或者说是备份),给攻击者获取网站源代码提供了切入口;

1、从源码本身的特性入口

2、从管理员不好的习惯入口

3、从管理员习惯的开发入口

4、从管理员不好的配置入口

5、从管理员不好的意识入口

6、从管理员资源信息搜集入口

三、源码泄漏大概集合:

1、Webpack打包器泄漏(前端技术出现)

一般在Vue、Node.js的前端技术,用js传输的,造成泄露(用php、java语言写的后端是看不到的);这两种语言开发的,一般会用到webpack打包器做存档

识别泄露的步骤:

①通过指纹识别->发现使用了webpack打包器

②利用chrome浏览器的source detector插件->获取到泄露的部分源代码

案例1:https://mp.weixin.qq.com/s/zhjxW2mUEgq6dFAp3kBcgQ

案例2:SRC挖掘-js.map泄露到接管云上域控

https://mp.weixin.qq.com/s/QZsNjbTiaqC1qwzARVAiGQ

2、composer.json

一般出现在php语言开发的网站,PHP语言在composer的功能和python语言中的pip类似,主要用来管理调用的第三方库的框架等信息;

3、GitHub源码泄漏

最好使GitHub处于登录状态,再进行源码搜索

①特定文件->GitHub搜索

②特征联系方式->如qq号、手机邮箱等->github搜索

③对github进行监控,有些源码作者上传后,后因某种原因,可能删除;这时持续对GitHub进行监控就有一定的必要,可以及时获得源码资源,以免后期资源找不着( 除了源码,漏洞更新,工具更新等都有用处)

补:GitHub搜索需注意目标使用的源码是开源还是闭源,是否公开,github可以搜到的一般是开源的、公开的源码泄露;

4、git源码泄露

实验:

5、svn源码泄露

实验:

6、网站备份压缩文件如.zip文件

思路:利用工具进行目录扫描->发现.zip文件->url地址访问.zip文件->成功下载该文件

.zip文件里面可能打包了所有的网站源代码

7、DS_Store文件泄露

实验:

 类似案例:渗透测试实战---某资金盘信息收集(.idea目录泄露)

https://mp.weixin.qq.com/s/7cSrDZci_drE6wTGvQOOHw

8、hg源码泄漏

9、SWP 文件泄露

10、CVS泄露

11、Bzr泄露

12、‘WEB-INF/web.xml 泄露

四、源码搜集思路点:

1、使用指纹识别平台获取到目标是什么名字的源码程序(指纹已识别的情况

通过搜索引擎获取到源码

2、使用指纹识别平台不能获取目标信息(指纹不能识别的情况

后端:借助svn git composer.json ds_store 备份扫描(.zip)等配置泄漏安全

前端webpack打包 谷歌插件source detector获取源码

如果没有这些问题 还想获取源码怎么办 见下面方法

3、借助资源平台去搜索(github gitee oschina等源码)

-特定文件

-特征联系方式,如手机号、邮箱等

-github监控( 除了源码,漏洞更新,工具更新等都有用处)

目标使用的源码是开源还是闭源,是否公开

五、Github资源搜索-未知指纹识别获取源码途径

*拓展:配合后期监控保证第一时间通知

资源搜索语法:

in:name test #仓库标题搜索含有关键字

in:descripton test #仓库描述搜索含有关键字

in:readme test #Readme文件搜素含有关键字

stars:>3000 test #stars数量大于3000的搜索关键字

stars:1000..3000 test #stars数量大于1000小于3000的搜索关键字 forks:>1000 test #forks数量大于1000的搜索关键字

forks:1000..3000 test #forks数量大于1000小于3000的搜索关键字 size:>=5000 test #指定仓库大于5000k(5M)的搜索关键字 pushed:>2019-02-12 test #发布时间大于2019-02-12的搜索关键字 created:>2019-02-12 test #创建时间大于2019-02-12的搜索关键字 user:test #用户名搜素

license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字 language:java test #在java语言的代码中搜索关键字

user:test in:name test #组合搜索,用户名test的标题含有test的

关键字配合谷歌搜索:

site:Github.com smtp

site:Github.com smtp @qq.com

site:Github.com smtp @126.com

site:Github.com smtp @163.com

site:Github.com smtp @sina.com.cn

site:Github.com smtp password

site:Github.com String password smtp

六、另类目标源码获取

一般是不正规网站,多采用的网站源码选择地址

这些不正规网站,还可以通过网站的icon图标(一般不会改),在fofa等网络空间引擎搜索,从而找到源码

https://www.huzhan.com/

https://www.goofish.com/

从目标转到寻找源码系统上,从源码系统上找应用目标


http://www.ppmy.cn/news/1557206.html

相关文章

第十四届蓝桥杯Scratch国赛真题—转动的车轮

转动的车轮 编程实现: 转动的车轮(车轮使用画笔绘制,画面中不能出现其他角色,否则0分)。 注:角色、背景非源素材。 具体要求: 1). 点击绿旗,背景如图所示; 2). 等待1…

练习题 最小栈

最小栈 最小栈 class MinStack {private Stack<Integer> stack;private Stack<Integer> minstack;public MinStack() {stacknew Stack<>();minstacknew Stack<>();}public void push(int val) {stack.push(val);if(minstack.empty()){minstack.push(…

【C++11】可变模板参数

目录 可变模板的定义方式 参数包的展开方式 递归的方式展开参数包 STL中的emplace相关接口函数 STL容器中emplace相关插入接口函数 ​编辑 模拟实现&#xff1a;emplace接口 C11的新特性可变参数模板能够让您创建可以接受可变参数的函数模板和类模板&#xff0c;相比 C9…

Odoo:免费开源ERP的AI技术赋能出海企业电子商务应用介绍

概述 伴随电子商务的持续演进&#xff0c;客户对于便利性、速度以及个性化服务的期许急剧攀升。企业务必要探寻创新之途径&#xff0c;以强化自身运营&#xff0c;并优化购物体验。达成此目标的最为行之有效的方式之一&#xff0c;便是将 AI 呼叫助手融入您的电子商务平台。我们…

Debian环境安装Docker Engine

Debian环境安装Docker Engine 卸载旧版本使用APT工具安装Docker设置存储库安装Docker设置权限 docker compose命令卸载Docker 卸载旧版本 要卸载的非官方软件包是&#xff1a; docker.iodocker-composedocker-docpodman-docker 此外&#xff0c;Docker Engine 依赖 containe…

.Net Core框架创建一个Windows服务类型的应用程序

在NuGet中的包管理中添加两个包 System.ServiceProcess.ServiceController Microsoft.Extensions.Hosting.WindowsServices 在Program.cs中添加.UseWindowsService()&#xff0c;另外还需要设置管理员身份运行 Program.cs代码如下 public class Program {public static void…

YOLOv8目标检测(七)_AB压力测试

YOLOv8目标检测(一)_检测流程梳理&#xff1a;YOLOv8目标检测(一)_检测流程梳理_yolo检测流程-CSDN博客 YOLOv8目标检测(二)_准备数据集&#xff1a;YOLOv8目标检测(二)_准备数据集_yolov8 数据集准备-CSDN博客 YOLOv8目标检测(三)_训练模型&#xff1a;YOLOv8目标检测(三)_训…

wepack如何进行性能优化

Webpack 是一个模块打包工具&#xff0c;可以将多个模块打包成一个或多个文件。在进行性能优化时&#xff0c;可以从以下几个方面入手&#xff1a; 减少打包文件的体积&#xff1a;可以通过代码压缩、去除无用代码、按需加载等方式来减少打包文件的体积。可以使用 UglifyJSPlug…