Anonymous打靶学习笔记(5)

参考视频https://www.bilibili.com/video/BV1XufaYAEKc/?spm_id_from=333.1387.search.video_card.click

常见的100个端口都是关闭的

只有扩大扫描范围了

开了四个端口

ftp:文件共享服务

🔹 端口 139:NetBIOS Session Service

1、协议:**NetBIOS over TCP/IP(NBT)**

2、使用服务:SMBv1 协议

3、功能:用于早期 Windows 网络中的文件/打印共享

4、特点:

复制代码
- 基于 NetBIOS(老式协议)
- 一般在 Windows XP 或更早系统中常见
- 使用 TCP 协议

🔹 端口 445:Microsoft-DS(Directory Services)

1、协议:**SMB(Server Message Block) 直接在 TCP/IP 上传输**

2、使用服务:SMBv2 / SMBv3

3、功能:

复制代码
- 文件共享(Windows 网络共享)
- 打印机共享
- 远程服务调用
- Active Directory 通信

4、特点:

复制代码
- 新版本的 SMB 都使用这个端口(SMBv2、SMBv3)
- 不再依赖 NetBIOS(不需要 137-139)
- 默认启用在 Windows 2000 及之后的版本

🛡️ 安全相关:

**1、端口 445 是攻击目标的高危端口之一!**

复制代码
- 曾被用于 **永恒之蓝(EternalBlue)** 漏洞(利用 SMBv1)
- 被多个蠕虫、勒索病毒(如 WannaCry)广泛利用

2、SMBv1 不安全,建议禁用(微软官方早就不推荐使用)

第三个问题,直接匿名访问,无需输入密码

利用ftp

对ftp进行匿名访问时,需要指定用户名,这里就是这个房间的名字,这也是常见的ftp匿名登录的用户名之一

允许匿名访问,登录成功

这里看到三个文件,其中有一个脚本文件,把它下载下来看看

目前还没有学shell代码,所以查一下意思:

总结一下它就是一个被自动执行的定时清理任务

漏洞点分析:

超可爱的chatGPT的shell脚本漏洞讲解

但是这里好像直接覆盖脚本就行了(这里确实有写入权限

既然我们可以访问到这个共享,如果我们有写入权限的话,可以把它覆盖成反弹shell的代码,让它反弹一个shell给我们

第一台靶机也是反弹shell,我们可以把它们联系起来总结一下:

第一台:

首先我们都需要有一个拥有写入权限的脚本文件,这样才能注入payload覆盖原文件,然后再执行,从而成功反弹shell

那后面的步骤就很清晰了

1、get下载clsean.sh

2、修改成反弹shell的payload

3、监听指定的端口

4、put放回去(上传shell脚本)(先监听端口再上传脚本比较好)

这里提示需要tty-present

TY Spawn Shell(生成 TTY Shell)

在渗透测试(pen test)过程中,你可能会拿到一个 **没有 TTY 的 shell**,但你希望能更方便地与系统交互。这时可以尝试使用一些命令,**生成一个有 TTY 的交互式 shell**(也叫 "spawn a tty shell")。当然,是否成功取决于目标系统的环境和已安装的软件。

🔸解释一下背景:

在一些攻击过程中,比如通过某个漏洞执行命令拿到的反弹 shell(reverse shell),你拿到的是一个"非交互式 shell",特点是:

1、不能用方向键编辑命令

2、无法使用 Ctrl+C 中断

3、无法清屏或用 sudo(因为 sudo 会提示密码,需要 TTY)

4、交互很卡、不方便

这时候我们希望通过一些技巧,把这个 shell 升级成带 TTY 的"伪终端",就可以像正常登录进系统那样操作。

生成tty shell原理

那根据他的要求生成tty shell之后,我们再试试sudo -l

可以看到还是需要密码

这里可以一直换行防止shell断掉

于是枚举中sudo -l的思路就断了,我们可以跟着第三台靶机的枚举思路,SUID尝试

-p:加了之后会继承env的权限,因为这里设置了suid标志位是root权限,如果不加是以当前用户来执行的