1 puan yazan GN⁺ 2025-02-08 | 1 yorum | WhatsApp'ta paylaş
  • LinuxPDF, PDF içinde bir Linux VM çalıştıran bir demo; VM ekranı ve klavye giriş arayüzü PDF içine birlikte yerleştirilmiş
  • Çalışma ortamı Chromium tabanlı tarayıcılarla sınırlı olduğundan, diğer PDF ortamlarında çalışması beklenmemeli
  • Tuş girdileri, ekrandaki tuş düğmelerine basılarak ya da üstteki giriş kutusuna doğrudan yazılarak VM'e gönderilebiliyor
  • Sunulan tuşlar arasında Esc, Tab, Enter, Shift, Ctrl, Alt, yön tuşları, Home/End, PgUp/PgDn, F1~F12 ve sayı-harf tuşları yer alıyor
  • Uygulamanın nasıl gerçekleştirildiğini görmek isteyen kullanıcılar, GitHub'daki linuxpdf deposunda kaynak kodunu inceleyebilir

PDF içindeki Linux VM demosu

  • LinuxPDF, PDF belgesi içinde Linux VM çalıştıran bir demo
  • Çalışma ortamı Chromium tabanlı tarayıcılarla sınırlı
  • Ekranda, VM'in yüklenme durumunu gösteren Loading... ifadesi yer alıyor

VM'e tuş girdisi gönderme

  • İki giriş yöntemi bulunuyor
    • Ekranda gösterilen tuş düğmelerine basmak
    • Type here for keyboard inputs. giriş kutusuna doğrudan yazmak
  • O anda basılan tuş, Pressed: alanında görülebiliyor

Sunulan tuş düzeni

  • Kontrol ve özel tuşlar
    • Esc, Tab, Caps, Enter, Shift, RShift, Ctrl, Alt, Space, Menu
    • Home, Ins, Del, End, PgUp, PgDn
  • Yön tuşları ve fonksiyon tuşları
    • ^, <, v, >
    • F1'den F12'ye kadar
  • Genel tuş girdileri
    • 1~0 rakamları, -, =
    • QWERTY harf tuşları
    • [, ], ;, ', ,, ., /, \, `

Kaynak kodu

1 yorum

 
GN⁺ 2025-02-08
Hacker News yorumları
  • Çalışmıyor ve belge yanıt vermiyor. Not olarak, HP DeskJet 2820e Printer kullandım

    • Her taramada doğru anahtarı daire içine alarak bunu tarayıcıya tekrar tekrar girmek gerekecek gibi görünüyor
    • PDF’lerde aslında hangi öğelerin ekranda gösterileceğini ve yazdırılacağını ayrı ayrı tanımlama özelliği var (Optional Content)
  • Son birkaç gün içinde “PDF içinde Linux çalıştırma” ve “PDF’leri LLM’e verme yöntemi” ayrı ayrı gündem oldu; insanlar çeşitli PDF parser’ları ve değerlendiricileri LLM’lere bağlamaya başladığında epey ilginç hack olasılıkları doğacak gibi

    • LLM’in içinde Linux çalıştırıp bunu hesaplama kaynaklarını ele geçirmek için kullanabilir, onunla LLM eğitebilir ya da Bitcoin madenciliği yapabilirler
    • PDF her zaman çok cazip bir saldırı vektörü oldu. Çoğu kişi PDF’yi sadece metin belgesi sanıyor ve içine çalıştırılabilir kodun kolayca konabileceğini bilmiyor
      Acrobat gibi popüler okuyucularda korkunç sayıda açık olmasıyla birleşince, bir şirketi hacklemek için kusursuz bir giriş kapısına dönüşüyor
  • Birkaç gün önce yayımlanan yazıydı: https://news.ycombinator.com/item?id=42891937
    Depoda da iç mekanizmanın nasıl çalıştığına dair açıklama ve bilgiler var

  • Nihayet çıktı. “Linux.js’i PDF’ye koyup, Linux içindeki tarayıcı içindeki PDF içindeki Linux içindeki tarayıcı içindeki PDF içindeki Linux’u çalıştıracağım” şakasını çok uzun zamandır yapıyordum

    • Tam olarak öyle değil. Bu PDF henüz tarayıcı açamıyor!
  • Bunu JavaScript ile yapmak biraz hile gibi geliyor. PostScript ile de benzeri mümkün mü merak ediyorum

    • Mümkün, ama PDF içinde değil. PDF, PostScript’in yalnızca Turing-tamam olmayan bir alt kümesini destekliyor; çünkü PDF tasarımcıları belge biçiminin içine Turing-tamam bir dil koymanın performans sorunları yaratacağını düşünmüştü
      Sonra fikir değiştirip JavaScript desteği eklediler
    • Hesaplama açısından mümkün. PostScript’te x86 CPU emülasyonu için gereken tamsayı aritmetik işlemleri var; emülasyon belleği olarak kullanmaya uygun değiştirilebilir bayt dizeleri de var
    • PostScript’te metin macera oyunları oynatabilen bir ZMachine yorumlayıcısı olan zmachine.ps var
      Elbette PostScript ile yapılmış satranç motoru ve tic-tac-toe da var; yeterince sabırlıysanız NES oyunları bile oynayabilirsiniz, ama stack ile epey uğraşmanız gerekebilir
  • Sonunda PDF içinde rm -rf / çalıştırabileceğiz

    • PostScript bunu "shredpage" operatörüyle destekliyor
  • Bundan 10 kopya alıp bir USB sürücüye koyarsanız taşınabilir Kubernetes kümesinin keyfini çıkarabilirsiniz
    https://news.ycombinator.com/item?id=42681039

  • VirusTotal’da en az 3 tespit çıkıyor, ama bunun anlamlı olup olmadığından emin değilim
    ClamAV: Js.Trojan.Obfus-48
    Cylance: Unsafe
    Google: Detected

  • Firefox’ta about:config içinde pdfjs.enableScripting değerini false olarak ayarlamak yeterli

  • Peki PDF içinde Linux çalıştıran Linux için bir PDF editörü de var mı? Evince’te yüklenmiyor

    • Çalıştırabildiğim tek yer Chrome oldu. Adobe Reader, Firefox, Evince vb. çalışmadı
      Bu “PDF içinde kodlama” türü şeylerin çoğu yalnızca çalışma ortamı olarak Chrome’u hedefliyor gibi. Chrome’un belge içinde daha fazla kod çalıştırmaya izin vermesi gibi bir nedeni var mı, pek bilmiyorum