你的服务器安全么?

1   概述

在本人所处的公司的服务器正式遭到黑客攻击之前,一直都以为 黑客 是个遥不可及的词,直到真正成为了受害者时,才猛然意识到安全的重要性。有一些基本经验和心得总结出来,和同行分享一下吧。

2   暴破手段

最粗暴的黑客行为,就是利用计算机对比人的逆天的计算能力,来暴力破解。一般的服务器都是不提供交互界面的,而且为了能够方便和其它程序进行自动化连接和集成,也是不会设置图灵测试验证码的,所以基于这种条件,服务器天然具备暴破的条件。

主要的暴破方法如下:

3   资产收集

所谓的资产收集,在服务器渗透领域,就是获取服务器的域名和IP等等相关信息,这是获取渗透目标的最基本要求。资产收集的手段有很多,主要有社会工程学手段,计算机信息检索手段及混合手段。

  • 社会工程学手段

    从内部人着手,采用诱导或者收买的方式来获取信息

  • 计算机信息检索手段
    • 从社会上公开的信息进行检索分析,例如:工商信息,域名信息
  • 混合手段
    • 研究企业内部人员,观察其社交网络行为,从邮箱,QQ号等等获得信息检索的线索,逐步弄清资产

这是一个类似于“战场”的场合,其目的只有一个:获取服务器资产相关信息。

这一领域到底有多严酷,可以从以前一些“某国家研究所向国外间谍出卖重要资料最终被判死刑”的案例可以看出。当然,大部分的普通人还是没法到那个程度的,所以就从普通的技术层次来进行实验。

比如:要获取指定企业的服务器信息。

一级线索:

  • 企业名称
  • 企业网址

任何人都可以通过企业名称,可以在 启信宝 上获得此企业的详细工商信息。

例如:阿里巴巴

对于小公司,特别是创业小公司来说,公司的域名一般都是以创始人或者联合创始人的名义来注册的,当然我们一般不会这个名字来查询公司域名,毕竟同名人太多,这个用于域名查询之后的验证。

一般公司肯定会有官网,有官网就有域名,通过任意的域名反查平台:

http://whois.chinaz.com/

查到相关信息如下:

  • 域名持有人姓名(可以和之前查到的企业相关人员进行验证)
  • 注册时间和到期时间
  • 电话/地址/邮箱

其实通过 电话/地址/邮箱 还可以继续进行深挖,挖到更多的线索,但是这和本文主题相关不大,略去不表。

在支持 whois反查 的平台,可以查出更多相关的域名,然后进行筛选分析得到和此企业相关的域名。

然后通过PING或者traceroute等等网络工具,可以查到服务器的具体IP地址及网络节点图。

当然,如果是自己内部人员做渗透测试,就没有这么麻烦了,直接找运维人员要一份 服务器资产清单 即可。

4   端口扫描

在获得 服务器资产清单 之后,就可以对服务器上运行的服务进行扫描。基本上所有的服务器都是以 IP+端口 作为服务地址来对外提供服务的。

通过常见的 nmap 等等工具可以扫描到服务器上暴露的端口,下面对内网的某个安全测试服务器进行扫描:

显然,服务器上面运行了哪些服务一目了然。

  • ftp
  • ssh
  • dnsmasq
  • web-http
  • mongodb服务器
  • mysql
  • redis
  • 其它

有了这些信息之后,可做的事情又多了:

  • ssh密码暴破

    估计很多小白用户的root账号密码都会中招,如果这一层被攻破,服务器就成了 肉机,所以操作及文件系统权限都被获取

  • ftp密码暴破
    • 匿名登录账号会中招
    • 简单密码账号会中招

    可以查看ftp上的文件,甚至有些没有设置好权限的,还能通过此端口获取整个服务器根目录权限

  • web密码暴破

    如果获取成功,再有web权限的疏忽,则可能通过web后台上传可执行文件,执行shell脚本,间接获取服务器所有权限

  • 数据库密码暴破

    暴破破功后,影响也是相当大的

一般情况下:

  • 没经验的开发人员没有系统的安全意识,服务器漏洞百出
  • 公司用于测试的服务器,没有足够的安全意识和投入,往往成为了突破口

基于如上获取的信息,就可以对很多服务器形成很好的渗透了。因为这个世界上有太多的人还没有足够的安全意识,就已经敢把自己的服务放在公网上了。

5   预防措施

服务器 端口扫描 这一行为,最好的方法,就是尽量伪装好自己的服务器上的服务。主要手段有:

  • 禁用ICMP,防止别人通过网络工具获取网络拓扑图
  • 局域网的多台服务器之间禁止公网IP访问
  • 没有必要对外公开的信息就不要给外界权限访问
  • 对外尽量使用代向代理,不要暴露过多端口信息

当然,肯定会有很多开发小白会觉得这样很不方便,特别是在很多创业公司里面,早期如果在安全上下太多功夫,而把本来用于产品开发的保贵人力放在这边,有点不划算,这是普遍的早期企业的矛盾之处。

所以会存在这样的诉求:

  • 既要开发服务器隐藏端口
  • 也需要开发人员在自己机器上访问到相应的数据库,方便查看数据开发调试

本文提出了一种中间代理模式,来实现以上诉求。

5.1   生产配置图

一般的web应用程序都有数据库服务器和web应用服务器,还有一台反向代理服务器(nginx),如下图:

其中:

  • Web服务器通过内网IP及端口连接数据库服务器
  • Nginx服务器通过内网IP及端口连接Web服务器
  • 只有80端口的Web服务暴露给客户访问

整体来说:不需要对外的服务器都对公网形成了很好的隔离。

5.2   开发配置图

对于开发调试阶段需要连接公网服务器的数据库时,可以使用如下模式:

5.3   方法总结

上面的 端口映射 方法,其思想都是基于 代理映射 。即都会使用一个中间人做传话,内部的系统对外都是黑盒状态,然后安全人员集中精力守住门口即可,毕竟守门的难度比守个方圆十公里的大庄园要简单得多,真的是省时省心省力。

类似的方法在ssh登录管理服务器的时候,也有用到:开发人员要登录集群的其它服务器,必需要登录到某一台中间服务器,然后再通过中间服务器对其它服务器内网访问。

毕竟:隐藏得越深,往往就越安全也越省事。即使技术十分精湛,也没有必要去自找麻烦吧。

6   小结

上面提到的那些知识,对于专门做安全行业的人来说,估计是太自然不过的知识储备了。本文提到的这些渗透手段,主要目的是根据提出一些服务器部署的安全建议,给开发人员一些警示:尽量能够养成良好的开发习惯,做到防患于未然。

本文只是开篇,只针对服务器 端口扫描 这一行为提出了一种 端口伪装 的可行方法,后续还会出一些专题:

  • 密码暴破的预防
  • 服务器权限控制,预防小漏洞导致大问题
  • 其它

警告:本文提供的一些思路和方法仅用于学习和内部的渗透测试,千万不要用于攻击外部的服务器,否则会被法律所追究,后果自负

服务器防渗透(1)--信息收集相关推荐

  1. 信息收集(四)服务器信息收集

    信息收集(一)域名信息收集 信息收集(二)IP信息收集 信息收集(三)端口和目录信息收集 WAF指纹识别 什么是WAF WAF的全称是(Web Application Firewall )Web 应用 ...

  2. 信息收集-服务器信息

    服务器上面可以运行大量的系统服务和第三方应用服务,如果操作系统或者第三方软件没有及时升级打补丁,攻击者就有可能直接通过服务器上运行的服务进行攻击. 服务器需要收集的信息包含三个方面: 操作系统信息等识 ...

  3. 信息收集——Apache/IIS服务器版本的获取与隐藏

    一.目的 加固WEB服务器,隐藏服务器的版本. 在信息收集阶段,黑客会通过服务器版本的信息,来寻找web服务器可能存在的漏洞来攻击服务器.因此在部署web服务器的时候,最好是隐藏不让其显示. 二.准备 ...

  4. Kali Linux信息收集工具全

    可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得那个戏份不多但一直都在的Q先生(由于年级太长目前已经退休).他为007发明了众多神奇 ...

  5. 内网渗透测试:内网信息收集与上传下载

    在之前的几节中,我们讲了隐藏通讯隧道技术的运用,那其实都是渗透测试的后话,接下来要讲的信息收集才是内网渗透的基础. 可以说内网渗透测试,其本质就是信息收集.信息收集的深度,直接关系到内网渗透测试的成败 ...

  6. APT 信息收集——shodan.io ,fofa.so、 MX 及 邮件。mx记录查询。censys.io查询子域名。...

    信息收集 目标是某特殊机构,外网结构简单,防护严密.经探测发现其多个子机构由一家网站建设公司建设. 对子域名进行挖掘,确定目标ip分布范围及主要出口ip. 很多网站主站的访问量会比较大.往往主站都是挂 ...

  7. 介绍一款facebook信息收集工具FBI

    为什么80%的码农都做不了架构师?>>>    概述 作为一个工具党,收集一些工具肯定是少不了的,今天介绍的是一款facebook的信息收集工具叫fbi,虽然对国内用户用处不大,哈哈 ...

  8. 渗透测试之全方位信息收集神器 instarecon

    功能介绍 instarecon将从以下几个方面展开渗透测试前的信息收集工作 1. DNS (direct, PTR, MX, NS) lookups 包括域名的dns解析结果: PTR记录:是电子邮件 ...

  9. 【安全技术】红队之windows信息收集思路

    前言 很久没做内网了,温习一下.希望正在学习安全的小伙伴不要踏入我初学内网的误区. 先来谈谈我对内网的理解吧,不是技术的方向. 内网学的东西很多,很杂.当时我问了我的大哥,他给我的一句话确实影响我至今 ...

最新文章

  1. Confluence 6 创建小组的公众空间
  2. 智能指针auto_ptr介绍
  3. ROS系统的安装 ubuntu 18.04.5 LTS
  4. mysql cluster自动安装_MySQL Cluster 安装
  5. Web开发环境搭建 Eclipse-Java EE 篇
  6. Android开源控件----Android显示GIF图像控件------android-gif-drawable
  7. 使用Schematics启用SAP Spartacus的SSR模式
  8. esp8266 html文件,ESP8266 基ESP8266_RTOS_SDK (ESP-IDF )中嵌入网页文件(示例代码)
  9. LeetCode 剑指Offer 64.求1,2到n的和, 不使用循环/判断及乘除
  10. 基于ADS的c语言程序设计实验,实验一:基于ADS软件传输线理论仿真设计与分析.docx...
  11. 计算机二级vb资料百度云,全国计算机等级考试二级VB复习资料.pdf
  12. ubuntu20.04安装mysql_Ubuntu 20.04安装MySQL 8.0.20记
  13. Low Power概念介绍<Level Shifter>
  14. Tricks(十七) —— 数组与字典(map)
  15. AngularJS 之 ng-model
  16. 免费的音视频格式转换网站-ncm, qmc, mflac, mgg转mp3
  17. matlab进行多光栅衍射仿真,光栅衍射MATLAB仿真.docx
  18. 未来人类笔记本 T5 67SH2 扩展内存条
  19. 计算机硬盘容量单位有kbmb1,mb和kb换算(MB换算成GB)
  20. 区块链究竟有什么价值体现?

热门文章

  1. css制作按钮按下去效果
  2. vue 路由按需加载
  3. CSS 文字显示在图片的中间
  4. JavaScript splice() 方法使用
  5. element UI 制作模糊搜索框
  6. windows下连接db2数据库
  7. CNN:测试一下YoloV3
  8. C++:数据流和缓冲区
  9. 阿里云专家穆轩的《杭州九年程序员之“修炼”手册》
  10. 13个开发者技能必知必会!