← Ana Sayfaya Dön

OverTheWire Bandit: Seviye 2 → Seviye 3

Teknik Not

1. Bağlam

bandit2 kullanıcısı olarak giriş yaptık. Bir sonraki seviyenin şifresi, ev dizinimizde bulunan --spaces in this filename-- isimli dosyanın içindedir. Görevimiz, adında hem boşluklar hem de başında tireler olan bu dosyayı okumaktır.

2. Teknik Mantık

Bu dosya ismi Linux kabuğu (Shell) için iki ayrı zorluğu birleştirir:

  1. Boşluklar: Shell için bir ayraçtır.
  2. Tireler (- veya --): Komutlar için bir parametre (flag) başlangıcıdır.

Sadece tırnak içine almak yetmez (cat "--spaces..."), çünkü komut bunu hala bir parametre sanabilir. Bu yüzden hem tırnak içine almalı, hem de dosya olduğunu belirtmek için başına yol (path) eklemeliyiz.

3. Uygulama

Adım 1: Dosyayı Görüntüle

ls
# Çıktı: --spaces in this filename--

Adım 2: İçeriği Oku En güvenli ve temiz yöntem, dosyayı “bulunduğum klasördeki şu dosya” (./) olarak belirtip tırnak içine almaktır.

Yöntem: Tırnak + Göreceli Yol (Best Practice)

cat "./--spaces in this filename--"

Alternatif: Escaping

cat \-\-spaces\ in\ this\ filename\-\-

Yöntem C: Tab Tamamlama (Pratik) Dosya adının ilk birkaç harfini yazıp TAB tuşuna basarsanız, Shell otomatik olarak en uygun formatı (genellikle escaping) uygular.

cat "./--<TAB>"
# Otomatik dönüşür: cat "./--spaces in this filename--"

4. Sonuç

Şifreyi kopyalayın, oturumu kapatın ve bir sonraki seviyeye bağlanın. Çıkış: exit Yeni Bağlantı: ssh bandit3@bandit.labs.overthewire.org -p 2220