tryhackme--Overpass

tryhackme–Overpass

用nmap扫描主机,因为前面我已经简单扫过开放的端口了,所以我现在直接放上详细扫描的贴图和命令

nmap -T4 -sS -sV 10.10.220.203 -sC -p 22,80


扫描得到的目录

各种扫描,注入,爆破都试过了,也没有历史漏洞,看了wp才知道是js代码逻辑漏洞,这方面练的太少了,以至于没有找到切入点

async function login() {
    const usernameBox = document.querySelector("#username");
    const passwordBox = document.querySelector("#password");
    const loginStatus = document.querySelector("#loginStatus");
    loginStatus.textContent = ""
    const creds = { username: usernameBox.value, password: passwordBox.value }
    const response = await postData("/api/login", creds)
    const statusOrCookie = await response.text()
    if (statusOrCookie === "Incorrect credentials") {
        loginStatus.textContent = "Incorrect Credentials"
        passwordBox.value=""
    } else {
        Cookies.set("SessionToken",statusOrCookie)
        window.location = "/admin"
    }

条件检查有效凭证。如果不正确,则输出“Incorrect Credentials”,但如果正确,则设置一个名为SessionToken的Cookie,并将用户重定向到/ admin,在这里他是根据服务端返回的状态码,也就是Incorrect Credentials判定的,我们可以利用burp来重发响应包,来欺骗前端js验证

接下来看操作

转发,将得到的响应包删掉Incorrect Credentials再转发



然后刷新浏览器,看到James的ssh私钥

j将ssh私钥保存到本地,就可以用James用户的ssh私钥免密登录,保存私钥的文件的权限一定要为600

在这里还需要一个密码,Paradox也说了忘记了自己爆破,kali中也有工具可以从ssh私钥中提取密码

python /usr/share/john/ssh2john.py id_rsa > id_rsa.hash
john --wordlist=tools/dict/rockyou.txt id_rsa.hash


登录

ssh james@10.10.241.41 -i id_rsa


找到user.txt


在定时任务找到一个有趣的东西,可以利用定时任务提权,以root的身份下载一个sh的文件并且执行


修改/etc/hosts文件,将overpass.thm域名映射到我们kali的ip上,再在kali的web服务器上新建同样的目录以及文件,但不过文件的内容改为反弹shell的内容,这样一来,root权限,哦霍霍~~


又是垃圾的一天


  转载请注明: XingHe tryhackme--Overpass

  目录