Selamlar herkese bugün tryhackme üzerinden UltraTech adlı makineyi çözeceğim. Gerekli ağ konfigürasyonlarını yaptım ve bana verilen ip adresini nmap aracı ile (port tarama) gözden geçireceğim. Sistemde herhangi bir waff yok bu yüzden nmap'de paketleri bölme (-f, -ff) işlemi uygulamıyorum. Şimdilik sadece bilgi toplama safhasındayız, yeterli bilgimiz olmadan atak yaparsak yüksek ihtimalle patlayacağız.

Sistem üzerinde ilk görülen portum olan ftp hakkında bilgi toplamak için belirli scripler kullanıyorum lakin yapabileceğim tek potansiyel şey "dos" saldırısı (hizmeti devre dışı bırakma) olacaktır. Bu benim işime gelmiyor, bu yüzden ssh portuna yöneliyorum, ve araştırma yaparken OpenSSH 2.2 < 7.7 sürümü arasında username bilgisini bulabileceğini söylüyor. Hemen ilgili CVE paylaşalım ; "cve-2018-15473" hemen sistemime kurup hali hazırda olan wordlistimle tarıyorum.

İlgili wordlistimle taradığımda sadece bir adet ssh kullanıcısının ismini bulabildim. Bununla neler yapılabilir derseniz var olan user bilgisi ile şuan için en fazla şifre için brute force yapılabilir. Sistem içerisinde olsaydık o kullanıcıya ait hassas verileri veya sistemde izin verilen perm'ler ile veri sömürme ve pivoting e kadar adım atabilirdik. Ben yinede brute işlemi yapmadan geçmeyeceğim. Öncelikle hydra adlı crack işlemlerinde kullanılan toolu açıyorum "hydra" (tool) -l (login ismi r00t) (-P pass wordlistim rockyou) (ip adres) (atak servisi ssh:// )

Maalesef ki kıramadım, dileyen işi brute dan halledebilir. Lakin ben sistemde çalışan aktif diğer sevisi görmek istiyorum. 8081 servisinde Node.js çalışmakta içeriye girdiğimde hiçbirşey göremedim, biraz bakınıp robots.txt sitemap.xml gibi dosyalara bakmay çalışsamda birşey yok bunun için dirb aracı ile web dizinlerini bulmak istiyorum.

Tekrardan taradığımda ise ilgili yere girdiğim zaman sadece kimliğini doğrulamamı yazıyordu. Bende /auth/ klasörü üzerinden bir dizin tarama işlemi gerçekleştirdim. Bu işlemde gobuster denilen araç ile birlikte daha büyük bir wordlist tercih ettim.

Klasörleri ne kadar fuzz edersem edeyim sonuç değişmiyordu, bende diğer servisim ile ilgisi olabileceğini düşünmeye başladım. Bu servisi unutmadan kalan son portuma geçiş yapıyorum.

Evet sonunda bir web servisine ulaşabildim, peki işaretlediğim alanı görüyormusunuz ? ilk başta ssh adını bulduğumuz kişi ve sağda diğer isimler'de var /home klasörüne bağlı olabilir. Çok emin konuşmamak gerekiyor. Sitenin kaynak kodlarına baktığımda ilgilimi çeken pek bir şey bulamadım, buna rağmen sitenin infosunda sadece bir adet mail adresi vardı "[email protected]" yine bu servisin dizin taramasını yapacağım.

Web sitesinde sadece 1 adet mail gördüm harici olarak bir işime yaramaz diye düşünerek iyice kaynak kodlarını incelediğimde bir takım javascript kodları ve sitemap'in yolunu buldum. İlk 2 seçenekte site içerisinde ilerleyemeyeceğimiz bir bölüm. Partners tarafında ise bizlerden login bilgisi istediğini gördüm. No redirection, sql inj, brute denesem'de bir sonuç elde edemedim.

Ve dirb ile ilgili servisi taramaya aldığımda ise /assets/ /css/ /js/ klasörleri dönüyordu. Herhangi bir upload edebilecek bir yolum yok ama son şansımı javascript'den yana denemek istedim. İlk baştan 403 perm. hatası aldım ki klasörü /js/ vererek direk olarak girdim.

Buraya girdiğimde ise 3 adet javascript dosyası vardı, 2 si benim işime yaramayacakken bir tanesi var ki içime su serpti. Bana input verebileceğim bir alan çıkardı ki herhangi bir auth. istemiyor. Hatta bilgi topladığımız servislerden 8081 port node.js express framework : /ping/ klasörünü bana hatırlattı.
Bu servis içerisinde bu bilgiden başka herhangi bir şey bulamadığım için artık 8081 servisine girip APİ dan deneme vaktimin (UltraTech API v0.1.3) geldiğini düşünmekteyim.

Lokal hostuma ping gönderebiliyor, LFI atağı denedim lakin açık söz konusu değil (sistem içinden dosya okuyamıyoruz). Sistem içerisinden ping atıyorsak sanırım bunun bir yolunu bulup içerisine kendi istediğimiz kodları çalıştıracağız.
Sistem içinden bir çok bypass yolu denedim ama ip adresi vermeden tırnak yolu ile veri alabildik. Örnek senaryoda İP && kod - İP | kod - İP ; kod gibi deneyebilirsiniz. Veya otamatize araç kullanmak istiyorsanız "commix" adlı aracı ilgili açık için (RCE) kullanabilirsiniz.

Şimdi ise bu datayı cat ile okumayı deneyeceğim. Hashlı veri gösteriyor şuan buradan devam edeceğim.

İlgili hashleri hash finder uygulamasına gönderiyorum, eğer ki leak değilse yine cracklemeye uğraşacağız. Ben hash'i md5 olarak buldum ve crack-station'a hashi bırakıyorum.

id : r00t pass : n100906 olarak buluyorum. Bundan sonra işlem basit ya bu kullanıcı 31331 servisinde bulunan panelin yada ssh servisinin bilgileri olabilir. Öncelikle web servisinde benden kullanıcı ve şifre isteyen panele giriyorum.

Sanırım artık web servisleri ile işimiz kalmadığını ve el altından bize hint verip son yolculuğumuz olan ssh servisini işaret ediyor.

Ben /var klasöründen backuplara .bash_history'lere, lokal exploitlere kadar baktıysam da naafile ama yukarıdaki "docker" için GFTO dan baktığımda root shell verilebileceğini söylüyor.

Evet sevgili okucuyu lokalde ilerlemek için böyle bir adım uyguladık ve artık root yetkisine ulaşabildik. Beni okuduğun için teşekkür ederim, hatasız insan olmaz konularda hata yapıyorsam çekinmeden uyar.

Hayırlı günler dilerim
|| My.B

Sistem üzerinde ilk görülen portum olan ftp hakkında bilgi toplamak için belirli scripler kullanıyorum lakin yapabileceğim tek potansiyel şey "dos" saldırısı (hizmeti devre dışı bırakma) olacaktır. Bu benim işime gelmiyor, bu yüzden ssh portuna yöneliyorum, ve araştırma yaparken OpenSSH 2.2 < 7.7 sürümü arasında username bilgisini bulabileceğini söylüyor. Hemen ilgili CVE paylaşalım ; "cve-2018-15473" hemen sistemime kurup hali hazırda olan wordlistimle tarıyorum.

İlgili wordlistimle taradığımda sadece bir adet ssh kullanıcısının ismini bulabildim. Bununla neler yapılabilir derseniz var olan user bilgisi ile şuan için en fazla şifre için brute force yapılabilir. Sistem içerisinde olsaydık o kullanıcıya ait hassas verileri veya sistemde izin verilen perm'ler ile veri sömürme ve pivoting e kadar adım atabilirdik. Ben yinede brute işlemi yapmadan geçmeyeceğim. Öncelikle hydra adlı crack işlemlerinde kullanılan toolu açıyorum "hydra" (tool) -l (login ismi r00t) (-P pass wordlistim rockyou) (ip adres) (atak servisi ssh:// )

Maalesef ki kıramadım, dileyen işi brute dan halledebilir. Lakin ben sistemde çalışan aktif diğer sevisi görmek istiyorum. 8081 servisinde Node.js çalışmakta içeriye girdiğimde hiçbirşey göremedim, biraz bakınıp robots.txt sitemap.xml gibi dosyalara bakmay çalışsamda birşey yok bunun için dirb aracı ile web dizinlerini bulmak istiyorum.

Tekrardan taradığımda ise ilgili yere girdiğim zaman sadece kimliğini doğrulamamı yazıyordu. Bende /auth/ klasörü üzerinden bir dizin tarama işlemi gerçekleştirdim. Bu işlemde gobuster denilen araç ile birlikte daha büyük bir wordlist tercih ettim.

Klasörleri ne kadar fuzz edersem edeyim sonuç değişmiyordu, bende diğer servisim ile ilgisi olabileceğini düşünmeye başladım. Bu servisi unutmadan kalan son portuma geçiş yapıyorum.

Evet sonunda bir web servisine ulaşabildim, peki işaretlediğim alanı görüyormusunuz ? ilk başta ssh adını bulduğumuz kişi ve sağda diğer isimler'de var /home klasörüne bağlı olabilir. Çok emin konuşmamak gerekiyor. Sitenin kaynak kodlarına baktığımda ilgilimi çeken pek bir şey bulamadım, buna rağmen sitenin infosunda sadece bir adet mail adresi vardı "[email protected]" yine bu servisin dizin taramasını yapacağım.

Web sitesinde sadece 1 adet mail gördüm harici olarak bir işime yaramaz diye düşünerek iyice kaynak kodlarını incelediğimde bir takım javascript kodları ve sitemap'in yolunu buldum. İlk 2 seçenekte site içerisinde ilerleyemeyeceğimiz bir bölüm. Partners tarafında ise bizlerden login bilgisi istediğini gördüm. No redirection, sql inj, brute denesem'de bir sonuç elde edemedim.

Ve dirb ile ilgili servisi taramaya aldığımda ise /assets/ /css/ /js/ klasörleri dönüyordu. Herhangi bir upload edebilecek bir yolum yok ama son şansımı javascript'den yana denemek istedim. İlk baştan 403 perm. hatası aldım ki klasörü /js/ vererek direk olarak girdim.

Buraya girdiğimde ise 3 adet javascript dosyası vardı, 2 si benim işime yaramayacakken bir tanesi var ki içime su serpti. Bana input verebileceğim bir alan çıkardı ki herhangi bir auth. istemiyor. Hatta bilgi topladığımız servislerden 8081 port node.js express framework : /ping/ klasörünü bana hatırlattı.
Bu servis içerisinde bu bilgiden başka herhangi bir şey bulamadığım için artık 8081 servisine girip APİ dan deneme vaktimin (UltraTech API v0.1.3) geldiğini düşünmekteyim.

Lokal hostuma ping gönderebiliyor, LFI atağı denedim lakin açık söz konusu değil (sistem içinden dosya okuyamıyoruz). Sistem içerisinden ping atıyorsak sanırım bunun bir yolunu bulup içerisine kendi istediğimiz kodları çalıştıracağız.
Sistem içinden bir çok bypass yolu denedim ama ip adresi vermeden tırnak yolu ile veri alabildik. Örnek senaryoda İP && kod - İP | kod - İP ; kod gibi deneyebilirsiniz. Veya otamatize araç kullanmak istiyorsanız "commix" adlı aracı ilgili açık için (RCE) kullanabilirsiniz.

Şimdi ise bu datayı cat ile okumayı deneyeceğim. Hashlı veri gösteriyor şuan buradan devam edeceğim.

İlgili hashleri hash finder uygulamasına gönderiyorum, eğer ki leak değilse yine cracklemeye uğraşacağız. Ben hash'i md5 olarak buldum ve crack-station'a hashi bırakıyorum.

id : r00t pass : n100906 olarak buluyorum. Bundan sonra işlem basit ya bu kullanıcı 31331 servisinde bulunan panelin yada ssh servisinin bilgileri olabilir. Öncelikle web servisinde benden kullanıcı ve şifre isteyen panele giriyorum.

Sanırım artık web servisleri ile işimiz kalmadığını ve el altından bize hint verip son yolculuğumuz olan ssh servisini işaret ediyor.

Ben /var klasöründen backuplara .bash_history'lere, lokal exploitlere kadar baktıysam da naafile ama yukarıdaki "docker" için GFTO dan baktığımda root shell verilebileceğini söylüyor.

Evet sevgili okucuyu lokalde ilerlemek için böyle bir adım uyguladık ve artık root yetkisine ulaşabildik. Beni okuduğun için teşekkür ederim, hatasız insan olmaz konularda hata yapıyorsam çekinmeden uyar.

Hayırlı günler dilerim
Bu içeriği görmek için giriş yapın.