安全运维:内网安全检查和渗透履历总结
安全运维:内网安全检查和渗透履历总结007 Gorchitsa Rmx,Alyona Vinnitskaya - 007
互联网的迅速普及,网络应用已成为信息化发展中必不可少的一部门。然而,在感受网络所带来的便利的同时,也面对着各种各样的进攻和威胁:秘密泄漏、数据丢失、网络滥用、身份冒用、非法入侵……
虽然大多数安全职员都非常重视内网安全问题,内网安全防护投入也不停增加,但是内网安全问题却仍然严峻。本文重在引导安全运维职员如何对内网进行安全检查和渗透。
一、内网安全检查/渗透先容
1.1 攻击思路
\1. 攻击外网服务器,获取外网服务器的权限,接着利用入侵成功的外网服务器作为跳板,攻击内网其他服务器,末了获得敏感数据,并将数据传递到攻击者,看情况安装长期后门,实现长期控制和获得敏感数据的方式;
\2. 攻击办公网的体系、办公网电脑、办公网无线等方式,一般是采用社工,实现控制办公电脑,再用获得的办公网数据,大概是内网的各种登录账号和暗码,再获取办公网或者生产网的有用数据。
一般内网安全检查利用第一种思路,实际的攻击2种思路联合实现。
1.2 敏感资料/数据/信息
高管/体系管理员/财政/人事/业务职员的个人电脑
文件服务器/共享服务器
邮件服务器
OA服务器
数据库服务器
1.3 攻击过程
按照第一种思路,个人认为可以分为4个阶段:
\1. 信息网络
\2. 弊端验证/弊端攻击
\3. 后渗透
\4. 日志清理
第二种思路,社工的比重更大一些,后续文章再做先容。
二、信息网络
该阶段辨认内网存活的主机 IP, 运行端口扫描和弊端扫描获取可以利用的弊端
2.1 主机发现
利用端口扫描工具可以实现主机发现的功能,但也有些动作小的主机发现工具(Kali),可以有效的发现存活主机。本身写个 ping 的循环脚本也可以。不受限的测试直接端口扫描了。
2.2 端口扫描
有授权的情况下直接利用 nmap 、masscan 等端口扫描工具直接获取开放的端口信息。
作为跳板机可以利用 Metasploit 做端口扫描,也可以在跳板主机上上传端口扫描工具,利用工具扫描。
入侵到服务器上也可以根据服务器的情况利用自定义的端口扫描脚本扫描端口。
备注:1、Python 端口扫描的先容可以参照下述链接:
https://thief.one/2018/05/17/1/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
2、Windows 下基于 Powershell 的端口扫描脚本以参照下述链接:
https://github.com/BornToBeRoot/PowerShell_IPv4PortScanner/tree/master/Scripts
发现端口后利用客户端连接工具或者 nc 连接,获取服务端的 banner 信息。
2.3 弊端扫描
有授权的情况下,利用绿盟极光、Nessus、Nexpose 等漏扫工具直接扫描目标,可以直接看到存活主机和主机的弊端情况。
2.4 辨认内网情况
获取目标的主机存活信息和端口开放信息后,就可以尝试分析目标的网络布局,安全防御策略。按照办公网和生产网分别说一下:
2.4.1 办公网
按照体系区分:
l OA体系
l 邮件体系
l 财政体系
l 文件共享体系
l 域控
l 企业版杀毒体系
l 上网举动管理体系
l 内部应用监控体系
按照网络区分:
l 管理网段
l 内部体系网段
l 按照部门区分的网段
按照设备区分:
l 个人电脑
l 内网服务器
l 网络设备
l 安全设备
办公网的安全防护程度一般较差(相对),能绕过杀毒软件基本上就畅通无阻了,利用信任关系容易扩大攻击面,获取数据也比生产网简单。
2.4.2 生产网
按照体系区分:
l 业务体系
l 运维监控体系
l 安全体系
l 按照网络区分:
l 各不同的业务网段
l 运维监控网段
l 安全管理网段
根据目标开展的不同业务,对应的服务器大概存在不同的网段上,分析服务器上运行的服务和进程可以推断目标利用的运维监控管理体系和安全防护体系,可以大概推断出入侵目标的 IT 运维程度和安全防护程度,在接下来的入侵考虑采用什么样的方法。
三、弊端验证与攻击
利用端口扫描、弊端扫描验证扫描目标开放的端口,在对应端口上开放的服务,运行该服务的软件和版本号。
如果只是利用端口扫描,只是发现开放的端口,接着利用 nc 可以获取端口上服务的 banner 信息,获取 banner 信息后必要在弊端库上查找对应 CVE,背面就是验证弊端是否存在。如果是利用弊端扫描工具可以直接获取对应端口上的弊端,背面也是验证弊端。
安全检查一般是尽大概的发现全部弊端,对弊端的风险进行评估和修复。入侵的话只关注高危远程代码实验和敏感信息泄漏弊端等可以直接利用的弊端。
弊端验证可以找对应的 CVE 编号的 POC、EXP,利用代码在 ExploitDB 、seebug上查看或者在 github 上搜索是否有相关的弊端验证或利用的工具。
3.1 Web
3.1.1 自定义 Web 应用
从公网直接攻击目标对外的 Web 应用,或者在授权的情况下在内网进行渗透测试,如果是入侵目标可以直接探求注入、上传、代码实验、文件包罗等高危弊端,尝试获取体系权限,或者直接能拿到敏感数据。
答应扫描的话一般利用 AWVS 直接扫描,也可以利用专门扫描特定弊端的扫描工具如 sqlmap、XSStrike 等工具扫描特定范例的弊端。不答应直接扫描,利用 Burp 手工逐步找了。
3.1.2 Web 中间件
1. Tomcat
Tomcat是Apache Jakarta软件组织的一个子项目,Tomcat是一个JSP/Servlet容器,它是在SUN公司的JSWDK(Java Server Web Development Kit)基础上发展起来的一个JSP和Servlet规范的尺度实现,利用Tomcat可以体验JSP和Servlet的最新规范。
端口号:8080
攻击方法:
l 默认口令、弱口令,爆破,tomcat5 默认有两个脚色:tomcat和role1。此中账号both、tomcat、role1的默认暗码都是tomcat。弱口令一般存在5以下的版本中。
l 在管理背景部署 war 后门文件
l 远程代码实验弊端
l 参考:https://paper.seebug.org/399/
2. Jboss
是一个运行EJB的J2EE应用服务器。它是开放源代码的项目,遵照最新的J2EE规范。从JBoss项目开始至今,它已经从一个EJB容器发展成为一个基于的 J2EE 的一个Web 操作体系(operating system for web),它体现了 J2EE 规范中最新的技术。
端口:8080
攻击方法:弱口令,爆破
l 管理背景部署 war 后门
l 反序列化
l 远程代码实验
l 参考:http://www.vuln.cn/6300
3. WebLogic
WebLogic是美国Oracle公司出品的一个Application Server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise尺度的安全性引入大型网络应用的开发、集成、部署和管理之中。
端口:7001,7002
攻击方法:弱口令、爆破,弱暗码一般为weblogic/Oracle@123 or weblogic
l 管理背景部署 war 后门
l SSRF
l 反序列化弊端
l weblogic_uac
l 参考:
https://github.com/vulhub/vulhub/tree/master/weblogic/ssrf
4. WebSphere
IBM公司一套典范的电子商务应用开发工具及运行情况。
l 端口:默认端口:908*;第一个应用就是9080,第二个就是9081;控制台9090
l 攻击方法:
l 控制台登录爆破
l 许多内网 websphere 的控制台存在弱口令 / 默认口令,可以利用 admin/admin 以及 webshpere/webshpere 这种口令登录。 通过该口令登录控制台后,可以部署 war 包,从而获取到 WEBSHELL 。
l 反序列化
l 任意文件泄漏
l 参考: https://gist.github.com/metall0id/bb3e9bab2b7caee90cb7
3.1.3 Web 框架
1. Struts2
Struts2是一个优雅的,可扩展的框架,用于创建企业准备的Java Web应用程序。出现的弊端也着实的多每爆一个各大弊端平台上就会被刷屏。
可利用弊端:
l S2-046 CVE-2017-5638 Struts 2.3.5-2.3.31,Struts 2.5-2.5.10
l S2-045 CVE-2017-5638 Struts 2.3.5-2.3.31,Struts 2.5-2.5.10
l S2-037 CVE-2016-4438 Struts 2.3.20-2.3.28.1
l S2-032 CVE-2016-3081 Struts 2.3.18-2.3.28
l S2-020 CVE-2014-0094 Struts 2.0.0-2.3.16
参考:
l https://github.com/hktalent/myhktools
l https://github.com/Lucifer1993/struts-scan
l https://github.com/SecureSkyTechnology/study-struts2-s2-054_055-jackson-cve-2017-7525_cve-2017-15095
2. Spring 框架
Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache License 2.0开源许可协议的形式发布,也有.NET平台上的移植版本。Spring Framework提供了一个简易的开发方式,这种开发方式,将避免那些大概致使底层代码变得繁杂紊乱的大量的属性文件和帮助类。
可利用弊端
l CVE-2018-1274
l CVE-2018-1270
l CVE-2018-1273
反序列化
目录穿越
参考
http://www.open-open.com/news/view/1225d07
3.1.4 Web 服务器
IIS:Windows 的 WWW 服务器
l 端口:80
l 攻击方法:
IIS,开启了 WebDAV,可以直接详服务器 PUT 文件
l 短文件名枚举弊端
l 远程代码实验
l 提权弊端
l 解析弊端
l 参考:https://www.anquanke.com/post/id/85811
Apache
l 端口:80
l 攻击方法:
l 解析弊端
l 目录遍历
Nginx
l 端口:80
l 攻击方法:
l 解析弊端
l 目录遍历
l CVE-2016-1247:必要获取主机操作权限,攻击者可通过软链接任意文件来更换日志文件,从而实现提权以获取服务器的root权限。
l 参考:https://www.seebug.org/vuldb/ssvid-92538
lighttpd
l 端口:80
l 攻击方法:目录遍历
3.2 常见运维体系
一般分自动化部署和运维监控相关的的工具。弊端可以通过搜索引擎搜索,github搜索,ExploitDB搜索,官网上的安全通告获取。
内网的通用类应用比较常见的问题是弱口令,如果一个管理员可以登录几个体系,那在这几个体系的账号、暗码也基本上是一样的。
常见运维体系有许多,笔者对Gitlab相对较熟,以此为例:
GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的项目仓库,可通过Web界面进行访问公开的或者私人项目。
可利用弊端:
l 任意文件读取弊端
l 意用户 token 泄漏弊端
l 下令实验弊端
l 参考:http://rinige.com/index.php/archives/577/
3.3 常见 Web 应用
最常见是邮件应用,在搜索引擎上查找对应的弊端,利用已知弊端进行攻击。
一部门是利用腾讯企业邮箱、阿里企业邮箱的,很难有可利用的弊端,别的一种是能独立部署的邮件体系,政企常用的邮箱应用:
l Coremail
l 亿邮
l 35互联
l TurboMail
l Exchange
l IBM Lotus
3.4 数据库/缓存/消息服务
3.4.1 MySQL数据库
默认端口:3306
攻击方法:
l 爆破:弱口令
l 身份认证弊端:CVE-2012-2122
l 拒绝服务攻击
l Phpmyadmin万能暗码绕过:用户名:‘localhost’@’@” 暗码任意
l 提权
l 参考:https://www.seebug.org/appdir/MySQL
3.4.2 MSSQL数据库
默认端口:1433(Server 数据库服务)、1434(Monitor 数据库监控)
攻击方法:
l 爆破:弱口令/利用体系用户
l 注入
l 参考:https://www.anquanke.com/post/id/86011
3.4.3 Oracle数据库
默认端口:1521(数据库端口)、1158(Oracle EMCTL端口)、8080(Oracle XDB数据库)、210(Oracle XDB FTP服务)
攻击方法:
l 爆破:弱口令
l 注入攻击;
l 弊端攻击;
l 参考:https://www.leiphone.com/news/201711/JjzXFp46zEPMvJod.html
其他的数据库笔者不太熟,在此不做过多先容。
3.5 常见服务/协议
3.5.1 FTP 服务
FTP服务:ftp服务我分为两种情况,第一种是利用体系软件来配置,好比IIS中的FTP文件共享或Linux中的默认服务软件;第二种是通过第三方软件来配置,好比Serv-U另有一些网上写的简易ftp服务器等;
默认端口:20(数据端口);21(控制端口);69(tftp小型文件传输协议)
攻击方式:
l 爆破:ftp的爆破工具有许多,这里我保举owasp的Bruter 以及msf中ftp爆破模块;
l 匿名访问:用户名:anonymous 暗码:为空或任意邮箱
l 嗅探:ftp利用明文传输技术(但是嗅探给予局域网并必要诱骗或监听网关)
l 后门 vsftp
l 远程溢出
l 跳转攻击
3.5.2 NFS 服务
NFS(Network File System)即网络文件体系,是FreeBSD支持的文件体系中的一种,它答应网络中的盘算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。如今NFS具备了防止被利用导出文件夹的功能,但遗留体系中的NFS服务配置不妥,则仍大概遭到恶意攻击者的利用。
l 攻击方法:未授权访问
l 参考:http://www.vuln.cn/6368
3.5.4 SSH 服务
SSH 是协议,通常利用 OpenSSH 软件实现协议应用。SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其它网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄漏问题。
端口:22
攻击方法:
l 爆破
l 后门
l 弊端:28退格弊端、OpenSSL弊端
l 参考: https://cloud.tencent.com/developer/article/1078187
3.5.5 Telnet 服务
Telnet协议是TCP/IP协议族中的一员,是Internet远程登岸服务的尺度协媾和主要方式。它为用户提供了在本地盘算机上完成远程主机工作的本事。在終端利用者的电脑上利用telnet程序,用它连接到服务器。終端利用者可以在telnet程序中输入下令,这些下令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控礼服务器。
默认端口:21
攻击方法:
l 爆破
l 嗅探
3.5.6 Windows 远程连接
默认端口:3389
攻击方法
l 爆破
l Shift粘滞键后门:5次shift后门
l 利用ms12-020攻击3389端口
3.5.8 SMTP协议
smtp:邮件协议,在linux中默认开启这个服务,可以向对方发送钓鱼邮件!
默认端口:25(smtp)、465(smtps)
攻击方式:
l 爆破:弱口令
l 未授权访问
3.5.9 POP3协议
默认端口:109(POP2)、110(POP3)、995(POP3S)
攻击方式:
l 爆破;弱口令
l 未授权访问
3.5.10 DNS服务
默认端口:53
攻击方式:区域传输弊端
3.5.12 SNMP协议
默认端口:161
攻击方式: 爆破:弱口令
3.5.13 DHCP服务
默认端口:67&68、546(DHCP Failover做双机热备的)
攻击方式:DHCP挟制
三、总结
笔者曾经在数据中央做过安全运维,在内网安全检查上积累些履历;上文主要是针对传统内网情况的检查和渗透,在云情况下:比方:VMware可以利用主机逃逸等弊端,OpenStack可以利用权限绕过、信息泄漏、代码实验等弊端实现攻击,后续再总结分享。
末了
从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同砚们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,本事越强机会才越多。
因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,必要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。
干货主要有:
①1000+CTF历届题库(主流和经典的应该都有了)
②CTF技术文档(最全中文版)
③项目源码(四五十个风趣且经典的练手项目及源码)
④ CTF大赛、web安全、渗透测试方面的视频(恰当小白学习)
⑤ 网络安全学习门路图(告别不入流的学习)
⑥ CTF/渗透测试工具镜像文件大全
⑦ 2023暗码学/隐身术/PWN技术手册大全
如果你对网络安全入门感爱好,那么你必要的话可以点击这里
页:
[1]