dc-4学习到的知识

dc-4
相对于前面的几个靶机,dc-4的难度较低,学到的知识点如下:

  • 执行命令可以通过bp抓包,修改命令以达到自己想要实现的目的
    比如这题,可以通过修改命令改成nc监听来查看文件,更加的方便

  • 搜集讯息,在jim目录下的文件中找到了ssh的密码,利用hydra爆破得到charles的密码,利用ssh登陆

  • ssh登陆后,sudo -l 查看可以使用root权限无密码的命令,发现teehee

  • teehee提权的两种方法如下

1.查看帮助 teehee–help

发现利用可以利用a参数添加新的root权限的用户

#如:admin:x:0:0::/home/admin:/bin/bash   x表示有密码保护
 
#[用户名]:[密码]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell] 

设置uid和gid都为0,那么这个用户就相当于root

echo “test::0:0:::/bin/bash” | sudo teehee -a /etc/passwd
再切换为test,即成功提权

2.Linux crontab是用来定期执行程序的命令。
本题可以利用其写入将root权限设置为永久

f1 f2 f3 f4 f5 program
其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。
当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推;
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推;
当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推;
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其馀类推

*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- 星期中星期几 (0 - 7) (星期天 为0)
|    |    |    +---------- 月份 (1 - 12) 
|    |    +--------------- 一个月中的第几天 (1 - 31)
|    +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)

echo “* * * * * root chmod 4777 /bin/sh” | sudo teehee -a /etc/crontab
表示在/etc/crontab下写入定时计划,一分钟后由root用户给 /bin/bash 命令加权限(chmod 4777即开启suid和rwx权限):

切换编译器:/bin/sh 即成功提权。

上一篇:案例解读|迁云的灵魂3问,降多少本,增多少效,真平滑否?


下一篇:Linux部署YUM仓库