博文

目前显示的是 五月, 2020的博文

HackTheBox - Oouch

图片
Nmap扫描:  21  open  ftp  22  open  ssh  5000  open  nginx service  8000  open  http-alt 为了防止丢失信息,又用udp 协议扫描了一边,结果一样。 通过匿名登录ftp获取  kali@kali:~/Desktop/oouch$ cat project.txt Flask -> Consumer Django -> Authorization Server 通过这个文件在 hosts 追加以下的解析 10.10.10.177 consumer.oouch.htb 10.10.10.177 authorization.oouch.htb 简单描述: 端口5000 注册一个用户 test111 ,用这个用户和管理员用户通过【欺骗点击链接】达到关联用户的目的。然后通过应用授权获取 access_token ,授权后,通过access_token 调用 api接口,达到获取 ssh 私钥的目的。 端口8000: 授权服务器,application的注册都是在这里进行完成的。5000 的端口通过拿到 8000 端口分发的token 来达到其关联用户的目的。 注册完用户登录后,这里显示没有账户链接。consumer.oouch.htb 在这个oauth认证中心这里,点击注册用户。authorization.oouch.htb 用户名随便起。 注册完后,登录。 接下来我们来通过oauth2.0 来关联admin用户 这个页面是通过 ffuf 扫描出来的。 点击【Authorize】之前通过burpsuite 来拦截链接。 第一次的链接,直接放走。上图是第二次来自服务的应答,这里已经获取到了 【code】,点击Drop,不要关联。 组装成这样的格式:【http://consumer.oouch.htb:5000/oauth/connect/token?code=ySdhhj57X9KEGAzWPxuUgVFleViGy1】 点击【send】这是个漏洞,会自己点击访问这个URL。 然后就是高潮部分了,在 url 里输入 consumer.oouch.htb:5000/oauth/login后,直接回车 下图就是按过回车后的页面。点击authorize,即可完成关联后台管理员的步骤。

HackTheBox - Admirer

HackTheBox - Multimaster

图片
做这台机器之前,我仔细看了这台机器的点数。果然,光是寻找立足点就花了7天时间。 扫描到的信息,大概如下表格:  53  domain?  open  80  http  open  88  kerberos-sec  open  135  msrpc  open  139  netbios-ssn  open  445  microsoft-ds  open  464  kpasswd5?  open  593  ncacn_http  open  636  tcpwrapped  open  3268  ldap  open  3269  tcpwrapped  open  3389 ms-wbt-server Terminal Services  open  5985  http  open  9389  mc-nmf  open  49666  msrpc  open  49669  msrpc  open  49674  msrpc  open  49675  ncacn_http  open  49677  msrpc  open  49698  msrpc  open  49743  msrpc  open 80端口无法登录,应该是被前端屏蔽了,根据其它的url规则,尝试猜后台登陆接口地址,无果。 仅仅找到一个HTTP接口,如下图: 请求数据是JSON格式。 尝试着目录扫描,目录猜测等等。服务器上因为有WAF的原因,同一个IP限制了请求次数,不是根据Cookies来检测的,导致无法进行目录爆破。 80端口仅仅找到一个接口,看贴说是存在sql注入漏洞,需要unicodo进行编码处理。 值得说明的是:unicode有两种编码格式,1种是charunicodeescape,第二种是charunicodeencode 这个地方必须得用  charunicodeescape 编码 下面的命令行就是关于这个sql 漏洞利用的过程。 post.txt 文件内容 POST http://10.10.10.179/api/getColleagues HTTP/1.1 Host: 10.10.10.179 Content-Length: 11 Pragma: no-cache Cache-Control: no-cache Accept: application/json

HackTheBox - Quick

已ROOTED。等待机器退休。

HackTheBox - Nest

图片
一如既往的扫描 nmap -v -p1-65535 -Pn 10.10.10.178  445  open  microsoft-ds  信息的主要来源  4386  open  unknown   通过枚举,发现可以匿名访问共享。 kali@kali:~$ smbclient -L 10.10.10.178 Enter WORKGROUP\kali's password: Sharename Type Comment --------- ---- ------- ADMIN$ Disk Remote Admin C$ Disk Default share Data Disk IPC$ IPC Remote IPC Secure$ Disk Users Disk SMB1 disabled -- no workgroup available 《匿名访问》发现以下两个文件   \\10.10.10.178\data\Shared\Maintenance\Maintenance Alerts.txt There is currently no scheduled maintenance work \\10.10.10.178\data\Shared\Templates\HR\Welcome Email.txt We would like to extend a warm welcome to our newest member of staff, <FIRSTNAME> <SURNAME> You will find your home folder in the following location:  \\HTB-NEST\Users\<USERNAME> If you have any issues accessing specific services

HackTheBox - Monteverde

图片
开放端口如下  53  open  domain    88  open  kerberos-sec    135  open  msrpc    139  open  netbios-ssn    389  open  ldap  主要信息来源  445  open  microsoft-ds    464  open  kpasswd5    593  open  http-rpc-epmap    636  open  ldapssl    3268  open  globalcatLDAP    3269  open  globalcatLDAPssl    5985  open  wsman    9389  open  adws   枚举发现用户 经过暴力逐个尝试后,发现存在弱密码 然后继续闭着眼睛操作。查看 samba共享 samba共享里 发现用户密码 就这么就获得了 user 权限。 然后继续枚举了N久,找不到相关的服务可以直接提权,只有一个Azure-ADConnect 服务。 相关的表结构看了又看依旧找不到可以利用的地方。 直到遇到了它,说是可以直接导出 Azure AD Connect 的密码。 https://github.com/fox-it/adconnectdump 好坑。这玩意,不仔细查资料,根本搞不出来。

HackTheBox - forwardSlash

图片
首先说明,这台机器是比较困难的。 一开始扫描的时候开放了2个端口  22  open  ssh    80  open  http  主要信息来源 1,80 端口就挂着一张图片,联系到以前看过有人把图片和文件结合,试着破解文件。 2,提取关键字暴力破解ssh。 最后事实证明我的2个思路都错了,看了官网的提示信息这是一台多域名主机。 果然扫描出来了 backup.forwardslash.htb 一个本地文件包含漏洞 获取 Pain 用户: 这个地方有点复杂,/usr/bin/backup 程序自动读取当前的【时:分:秒】进行MD5加密,所以写了个 python 程序 from datetime import datetime import hashlib,os hl = hashlib.md5() datetime = datetime.now().strftime('%H:%M:%S') hl.update(datetime.encode(encoding='utf-8')) time_now = os.popen("date +%T").read() md5 = lambda x: hashlib.md5(x).hexdigest() name_file_new = md5(time_now.replace("\n", "")) execute = "ln -s /var/backups/config.php.bak ./{0} && /usr/bin/backup".format(name_file_new) os.system("touch /home/chiv/1.txt") t = os.system(execute + " && touch /home/chiv/1.txt") print(t) 执行完,顺利输出 /var/backups/config.php.bak 文件内容 一开始打算用 shell 脚本写的,shell 脚本的 md5sum 太坑,计算还带特殊符号的。 破解程序,给的程序片段是如下的代码: def encrypt (key, msg):