企业互联网暴露面未知资产梳理
一、互联网暴露面梳理的重要性
当前,互联网新技术的产生推动着各种网络应用的蓬勃发展,网络安全威胁逐渐蔓延到各种新兴场景中,揭示着网络安全威胁不断加速泛化。当前网络存在着许多资产,这些资产关系到企业内部的安全情况,然而这些资产可能被攻击者利用,从而使得恶意攻击者能够获取敏感信息或者控制网络,如何避免上述问题产生,如何梳理企业资产暴露面是关键。
帮助企业梳理互联网暴露面资产尤为重要,旨在识别和评估组织或系统在网络上暴露给潜在攻击者的风险和漏洞,帮助企业了解可能受到攻击的所有可能入口和弱点。
二、互联网暴露面梳理思路
互联网暴露面检查主要以人智结合方式,在当前收集的资产信息基础上,进一步确认和挖掘企业暴露在互联网的未知资产,发现可能存在的安全隐患,进行梳理、分析,并提出处置建议。
主要根据资产表、企业敏感信息关键字等相关信息,通过各类工具扫描、资产平台测绘,再以人工核验的方式,同时结合企业信息化负责人访谈的结果。
互联网暴露面梳理主要从以下4个方面作为参考点进行分析,具体内容如下:
(一)互联网IP地址及域名暴露面
1、确定互联网出口地址:参考资产表中相关信息,结合企业当前网络拓扑,确认所有出口IP信息。
2、域名收集:搜索引擎查找,输入“site:xxx.com”;通过资产测绘网站获取,如微步在线、站长工具、DNSDUMPSTER、censys.io等;采用工具爆破方式,如fierce、dnsdict6、Layer子域名挖掘机。
3、自动化收集:启用网络、网络安全等设备的未知资产探测功能,对所有经过设备等数据包进行自动化分析,查找资产表之外的相关资产。
根据检查结果,将新发现IP、域名及其对应的服务器、应用等信息,补充至资产表中。
(二)端口及服务暴露面
1、参考资产表中的端口映射信息。
2、使用相关工具的资产识别功能,如nmap、masscan等工具进行交叉验证。
3、采用人工测试扫描,和自动化工具结果进行对比,确保准确性。
针对高危端口,与运维团队确认其用途,评估其对外开放的必要性。高危端口为数据库端口、各类应用端口等,尽可能关闭非必要性对外开放端口,减少资产暴露面。
(三)业务应用系统暴露面
1、结合资产表中的网络拓扑图、端口映射信息和网络及安全产品清单进行初步收集。
2、与企业信息化负责人访谈进行确认,VPN、堡垒机、云桌面等应用管理控制台不得对互联网开放,检查VPN、堡垒机、云桌面用户认证是否采用双因素认证,是否启用密码复杂度,是否开启防爆破攻击策略,是否对接入用户进行权限划分等。
3、针对端口进行服务识别,检测指纹并梳理出web应用。
4、针对梳理出的web应用,结合扫描工具,资产表和运维团队访谈的结果,确认技术架构(脚本语言,数据库,web框架),内容管理系统(例如:wordpresss,joomla等)。
针对梳理出的web应用,和业务系统人员确认以下信息:
(1)建议关闭非必要对外开放的web业务。(2)建议关闭非必要对外开放的web应用端口,如7001、8080、9080等端口。(3)建议关闭对外开放的web管理后台页面;检查对外开放的web用户登录页面应检查是否具备防爆破能力、是否加入安全设备的防爆破保护模块、部署Waf防止恶意爬虫、目录扫描等违规操作。
(四)敏感信息暴露面
在查找源代码暴露情况下,可以通过御剑等后台扫描工具,使用备份文件名字典进行扫描;根据与企业提供的关键字在github等代码分享、托管平台进行搜索查寻;通过各种云盘进行搜索查寻,对于扫描发现的网站后台备份文件,并进行清除。对于在github等代码托管平台发现的源代码泄露事件,定位相关责任人,并要求尽快进行清除。
在查找个人信息暴露情况下,首先,我们需要明确企业信息在互联网上是必要的,但不宜暴露过多,过多可能会给攻击者提供额外的信息,如员工姓名、身份证号、邮箱等,信息暴露可能会给攻击者提供进行社会工程学攻击,如在攻防演练中的网络钓鱼。同时在搜索引擎中能明确发现的员工信息、社工库泄露的员工信息,建议对这些人员要进行提醒,防止被攻击者利用。
三、互联网暴露面风险的防护策略
(一)互联网探测
建议部署空间测绘相关设备,根据企业提供的相关信息对互联网测进行24小时探测,一旦发现相关资产立刻和管理员同步。目前绝大多数产品具有对未知资产探测功能,可以对流量进行分析,找出未知资产。
(二)定期开展风险评估
确保所有网络设备、系统和应用程序都使用强密码和多因素身份验证,以减少未经授权访问的风险。
及时对网络设备、系统和应用程序进行更新,根据厂商发布的风险提示进行修复,减少漏洞隐患。
(三)开启访问控制策略
确保只有授权人员能够访问敏感数据和网络资源,限制外部访问,并使用网络隔离技术来划分安全区域。
(四)开启设备水印功能
对新添加资产进行注册认证,经管理员进行审核,同时下发管控软件及杀毒软件,通过之后才允许正常访问网页。同时对资产登记完成的设备添加水印,保证员工使用电脑时留痕,减少发生信息外泄的途径,同时在发生信息外泄时,能定位到信息外泄的个人。
(五)其他可能存在的风险点
1、关注任何新建业务系统及升级改造的业务系统,防止服务商未经允许将没有经过安全评估的系统发布到互联网侧。
2、加强对物联网设备的监控,如安防系统、大屏控制系统等。
四、互联网暴露面梳理的应用
通过以上方法,对企业在互联网侧的IP、域名、服务、业务系统、敏感信息进行梳理,梳理出了一些未经企业相关部门允许私自发布到互联网侧的相关资产;及时对发现的资产进行定位,与此同时对发现的未知资产进行安全评估,进一步降低发生网络安全事件等风险,行成企业暴露面全景图,为企业网络安全信息系统建设提供参考依据、并能够增加企业网络的防护水平。
相关文章:
企业互联网暴露面未知资产梳理
一、互联网暴露面梳理的重要性 当前,互联网新技术的产生推动着各种网络应用的蓬勃发展,网络安全威胁逐渐蔓延到各种新兴场景中,揭示着网络安全威胁不断加速泛化。当前网络存在着许多资产,这些资产关系到企业内部的安全情况&#…...
【动态规划刷题 12】等差数列划分 最长湍流子数组
139. 单词拆分 链接: 139. 单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例 1: 输入: …...
react-redux 的使用
react-redux React Redux 是 Redux 的官方 React UI 绑定库。它使得你的 React 组件能够从 Redux store 中读取到数据,并且你可以通过dispatch actions去更新 store 中的 state 安装 npm install --save react-reduxProvider React Redux 包含一个 <Provider…...
77 # koa 中间件的应用
调用 next() 表示执行下一个中间件 const Koa require("koa");const app new Koa();app.use(async (ctx, next) > {console.log(1);next();console.log(2); });app.use(async (ctx, next) > {console.log(3);next();console.log(4); });app.use(async (ctx,…...
【css】z-index与层叠上下文
z-index属性用来设置元素的堆叠顺序,使用z-index有一个大的前提:z-index所作用元素的样式列表中必须有position属性并且属性值为absolute、relative或fixed中的一个,否则z-index无效。 层叠上下文 MDN讲解 我们给元素设置的z-index都是有一…...
系统架构设计师(第二版)学习笔记----多媒体技术
【原文链接】系统架构设计师(第二版)学习笔记----多媒体技术 文章目录 一、多媒体概述1.1 媒体的分类1.2 多媒体的特征1.3 多媒体系统的基本组成 二、多媒体系统的关键技术2.1 多媒体系统的关键技术2.2 视频技术的内容2.3 音频技术的内容2.4 数据压缩算法…...
【面试经典150 | 数组】合并两个有序数组
文章目录 写在前面Tag题目来源题目解读解题思路方法一:合并排序方法二:双指针方法三:原地操作-从前往后方法四:原地操作-从后往前 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章…...
系统架构设计专业技能 ·操作系统
现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 点击进入系列文章目录 系统架构设计高级技能 操作系统 一、操作系统概述二、进程管理2.1 进程概念2.2 进…...
CSP 202209-1 如此编码
答题 题目就是字多 #include<iostream>using namespace std;int main() {int n,m;cin>>n>>m;int a[n],c[n1];c[0]1;for(int i0;i<n;i){cin>>a[i];c[i1]c[i]*a[i];}for(int i0;i<n;i){cout<<(m%c[i1]-m%c[i])/c[i]<< ;} }...
windows安装向量数据库milvus
本文介绍windows下安装milvus的方法。 一.Docker安装 1.1docker下载 首先到Docker官网上下载docker:Docker中文网 官网 1.2.安装前前期准备 先使用管理员权限打开windows powershell 然后在powershell里面输入下面那命令,启用“适用于 Linux 的 Windows 子系统”…...
Qt中,QScript对JavaScript的内置接口支持情况
支持 JSON.parse()/stringify() Object.keys() 不支持 console.info()/debug()/warn()/error() window setTimeout() clearTimeout() setInterval() clearInterval() 后续添加更多接口支持情况~...
C语言基础-typedef的用法
文章目录 前言基础用法高阶用法typedef作用于数组typedef作用于函数指针 总结 前言 熟悉C语言的同学,应该都见过typedef,但可能对typedef的用法并不是真的了解。本文介绍几种typedef的用法,相信会有所帮助 基础用法 一般typedef用来声明一个…...
Linux中安装MySQL5.7.42
1. 首先,下载mysql5.7.42的安装包(下方是下载地址),选择红色框框的下载(注意的是,这个链接只提供5.7的版本下载,可能还会更新,不一定打开就是5.7.42的版本,后续可能会有4…...
网络基础--1.网络纵横
网络的发展历程 计算机由原来的只能单一处理信息(单用户批处理)逐步发展为多用户批处理,可以实现一台计算机连接多个终端同时使用一台计算机(分时系统),但是多个终端之间不能相互通信,再发展成为…...
Django TypeError: Abstract models cannot be instantiated.错误解决方案
问题 [2023-09-05 10:23:41][dvadmin.utils.exception.CustomExceptionHandler():64] [ERROR] Traceback (most recent call last): File “D:\InstallSpace\Anaconda3\envs\py39\lib\site-packages\rest_framework\views.py”, line 506, in dispatch response handler(requ…...
vscode使用delve调试golang程序
环境配置 delve仓库,含有教程:https://github.com/go-delve/delve golang的debugging教程:https://github.com/golang/vscode-go/wiki/debugging > go version go version go1.20 windows/amd64> go install github.com/go-delve/de…...
如何从任何苹果、Windows或安卓设备访问iCloud照片
本文介绍了如何在各种设备上访问iCloud照片库,包括iPhone和iPad、Mac、Windows PC和Android设备。说明适用于iOS 13及以上版本、iPadOS 13及以上、macOS Big Sur(10.16)和Catalina(10.15)、Windows 10或11以及Android 10。 从iPhone、iPod Touch和iPad访问iCloud照片 照…...
关于“找不到mfc140u.dll,无法继续执行代码”问题的分析处理方法
我想和大家分享一个在编程过程中经常会遇到的问题——找不到mfc140u.dll,无法继续执行代码。找不到 mfc140u.dll,这个问题可能会让我们感到困扰。mfc140u.dll 是 Microsoft Foundation Classes(MFC)库的一部分,它是一个 Windows 系…...
用 TripletLoss 优化bert ranking
下面是 用 TripletLoss 优化bert ranking 的demo import torch from torch.utils.data import DataLoader, Dataset from transformers import BertModel, BertTokenizer from sklearn.metrics.pairwise import pairwise_distancesclass TripletRankingDataset(Dataset):def __…...
Tomcat安装及使用
这里写目录标题 Tomcat一.java基础1.java历史2.java组成3.实现动态网页功能serveltjsp 4.jdkJDK 和 JRE 关系安装openjdk安装oracle官方JDK 二.tomcat基础功能1.Tomcat介绍2.安装tomcat二进制安装Tomcat 3.配置文件介绍及核心组件配置文件组件 4.状态页5.常见的配置详解6.tomca…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分: 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...
Kafka主题运维全指南:从基础配置到故障处理
#作者:张桐瑞 文章目录 主题日常管理1. 修改主题分区。2. 修改主题级别参数。3. 变更副本数。4. 修改主题限速。5.主题分区迁移。6. 常见主题错误处理常见错误1:主题删除失败。常见错误2:__consumer_offsets占用太多的磁盘。 主题日常管理 …...
