5 puan yazan polarisz00 7 일 전 | 34 yorum | WhatsApp'ta paylaş

Tipik güvenlik motorları izinsiz giriş engelleme ve izolasyona odaklanır; ancak ben, bir hacker saldırı girişiminde bulunduğu anda saldırı mantığını tersine kullanarak kendi hesaplama kaynaklarını tüketip kendi kendini imha etmesini sağlayan, tarpıt tarzı asimetrik bir savunma sistemi fikri üzerine düşünürken bu projeye başladım.

C++ çekirdek motorunu temel alarak, hacker’ın saldırı sürecini cezbedip izleyen ve sonunda OOM (Out of Memory) durumunu tetikleyen etkin güvenlik motoru Physical Ghost’un ilk iskeletini oluşturdum.

Temel kavramlar ve uygulama adresi burada: https://zenodo.org/records/19988807

Matematiksel ispat ve aksiyom sistemi ise burada derlenmiş durumda: https://zenodo.org/records/20113591 (binom katsayılarının p-adik gösterimi ve Kummer teoremi kullanılarak yapılan bir bilgi derinliği analizi).

Mimari yapı şu şekilde:

Mutlak izolasyon: Yem porta (honeypot) bağlantı algılandığı anda motor, en düşük yetkili hayalet hesapla kendini izole ederek asıl sisteme yayılımı kökten engeller.

Phantom tracking: Ağ parmak izini asenkron biçimde çıkarır ve motorun performansını düşürmeden saldırganın bilgisini anında dışarıya (Telegram/Discord) gönderir.

Temel işlev (bilgisayar eritme): Hacker analiz/şifre çözme amacıyla yem veriye bir debugger bağladığı anda, p-adik carry dinamikleri (p-adic Carry Dynamics) tabanlı Sierpinski tetrahedron yapısı devreye girer. Veri, düşmanın belleği içinde özyinelemeli olarak genişler ve sonunda CPU/RAM kaynaklarını tüketir.

Kendini imha: Çekirdek motorun bütünlüğü 0.1 bayt bile bozulursa süreç kendini sonlandırır (Self-Destruct); böylece motorun bir Truva atına dönüşmesi engellenir.

Mevcut durum: Şu anda çekirdek savunma mantığının iskeletini ve lisans doğrulama modülünü uyguladım, GitHub içeriğini hazırlıyorum. Fraktal bellek genişleme mantığının matematiksel çapraz doğrulamasını ve C++ çekirdeğe port edilmesini paralel olarak yürütüyorum.

Yerleşik güvenlik kalıplarının ötesine geçip saldırganın saldırı niyetini ve hesaplama kaynaklarını tersine kullanan yaklaşımlarla ilgilenen kişilerin keskin geri bildirimlerini duymak istiyorum. Özellikle p-adik topolojik yapıyı kullanarak hesaplama karmaşıklığını kontrol etme konusunda görüş paylaşırsanız motorun gelişmesine büyük katkı sağlar. Teşekkürler.

34 yorum

 
dongho42 7 일 전
  • Bellek yapısını fraktal bir yapıya doğru genişletiyor
  • Tarpit yöntemine dayalı asimetrik savunma sistemi
  • Sierpinski tetrahedron yapısı devreye giriyor
    Bunlar gerçekten anlamlı teknik terimler mi?? Gereksiz yere gösterişli ve akademik ifadeler çok gibi görünüyor.
 
dongho42 7 일 전

Kısa süre önce paylaşılan Show GN: verinin vektör yapısını matematiksel olarak çökertip kalıcı olarak silen VANI'yi geliştirdik ile benzer bir his verdiği için bana biraz olumsuz görünüyor...

 
ifmkl 6 일 전

Benim de aklıma tam bu gelmişti; ilgili yazının GitHub'ına gidince sonu not found oldu./

 
polarisz00 6 일 전

Görüşünüz için teşekkürler!
Açıkçası ben de araştırmayı yapay zekadan yardım alarak yürüttüğüm için, size biraz yapay zeka tıkırtısı gibi gelmiş olabilir...
Şimdilik C++'a port etme işiyle uğraşıyorum; tamamlanınca bir kez daha getiririm

 
polarisz00 6 일 전

Görüşünüz için teşekkürler!
Bu, tarpitting yaklaşımını ağ katmanından bellek ve uygulama katmanına taşımaya yönelik bir denemedir.
Sierpinski tetrahedonu ya da fraktal yapı için bunu tam karşılayan bir ifade olmadığı için, beyaz kâğıtta yer aldığı şekliyle aktarmak zorunda kaldım; kusura bakmayın. Sonsuz döngü ya da çöp veri yağdırma diye yazmak da pek uygun olmazdı..
Yukarıdaki beyaz kâğıtlardan matematiksel ispat ve aksiyomatik sistem beyaz kâğıdına bakarsanız, bunun ultra-metrik ağaç benzeri yapısı nedeniyle belirli bir eşik değeri aşıldığında yapının özyinelemeli olarak genişlediğini görebilirsiniz. Ancak bunu, hackerın tersine mühendislik aracının verinin derinliğine indikçe Sierpinski tetrahedonu gibi öz-benzerlik taşıyarak genişleyen bir bellek bombası algoritmasını adlandırmak için kullandığımızı şeklinde anlarsanız memnun olurum!

 
ifmkl 6 일 전

Hangi tür olursa olsun herhangi bir reverse engineering aracı debug etmeye çalıştığında, kendi kendine çalışan başka bir yürütülebilirin devreye girdiğini mi söylüyorsunuz? Reverse engineering yaparsanız, dosya header bilgisi önceden belirlenmiş biçimde değilse en baştan sizin söylediğiniz gibi çalışması zaten mümkün değil ki...

 
polarisz00 5 일 전

Görüşünüz için teşekkür ederim
Açıkçası bunu hiç düşünmemiştim, gerçekten çok iyi bir bilgi, teşekkür ederim
AI'a sorunca şöyle söyledi
"Physical Ghost SW Edition'ın anti-reversing temel noktası, 'loader kodu belleğe yükledikten sonraki ilerleyiş biçiminde' yatıyor. Mevcut programlarda debugger (IDA, Ghidra vb.) ile inceleme yapıldığında assembly komutlarının doğrusal akışı görülür; ancak önerilen mimaride yürütme akışının kendisi 'carry pyramid (çok boyutlu fraktal topoloji)' yapısı içinde birbirine dolanmıştır."
"Reversing araçları belleği dump ettiğinde ya da breakpoint koyup tracing (single-stepping) denediğinde, bu yapısal işlemlerin akışı (p-adic carry dinamiği) kesintiye uğrar. Yani dışarıdan yapıyı zorla açmaya yönelik 'gözlem eylemi'nin kendisi Sierpinski tetrahedron biçiminde topolojik çatlaklar oluşturarak, özgün veri veya kodun anlamsız gürültüye çökmesi için tasarlanmış içkin bir obfuscation ve savunma mekanizmasına dönüşür."

Sayenizde bir şey öğrenmiş oldum, teşekkür ederim!

 
ifmkl 5 일 전

Yani o güvenlik motoruyla kodlanmış veriyi sadece gözlemlemeye çalışmak bile onun kendi kendine çalışıp kendi kendine çökmesine ya da hackerın kaynaklarını tüketmesine mi neden oluyor? Söylemeye çalıştığım şey, bunun mümkün olmadığı....

 
polarisz00 3 일 전

Yanıtım geciktiği için özür dilerim!(__)
Gözlemi yalnızca duran statik veriye gözle bakma eylemi olarak düşünürseniz bunun imkânsız görünmesi doğrudur. Ancak dijital dünyada gözlem, hedef sistem üzerinde mutlaka bir uyarım oluşturan bir etkileşimi beraberinde getirir.
Bu güvenlik motoru, statik bir dosya değil; saldırganın gözlem girişimini ya da isteğin kendisini girdi değeri-Trigger- olarak alıp gerçek zamanlı çalışan dinamik bir mimaridir. Gözlem denenir denenmez iç döngü çalışır, verinin mantıksal sürekliliğini etkisiz hâle getirir ve gözlemi tamamlamak için bekleyen saldırganın oturumunu zorla hold durumunda tutarak kaynak tüketen bir mekanizmadır.

Ayrıca normal yetkiye sahip kullanıcının erişimi-tokalaşması tamamlanmış oturum-handshake completed session-, kimlik doğrulama mekanizması sayesinde tarpıt filtresinden geçmeden doğrudan iletilir. Gözlem sırasında kendi kendine çökme ve kaynak tüketiminin yaşandığı alan, yalnızca yetkisiz keşif ve izin verilmeyen tarama isteklerini ayıklamak için konumlandırılmış sanallaştırılmış yem veri-Decoy- alanıdır. Normal hizmet kaynaklarını %1 bile etkilemeden, yalnızca saldırganın oturumunu izole edip bataklığa hapseden hassas bir dinamik savunma mimarisidir.

 
ifmkl 3 일 전

Bunun hangi şekilde mümkün olduğunu anlayıp mı yanıt veriyorsunuz? Yukarıda bunun şifrelenmiş veriyi gözlemlerken olduğunu söylemiştim; ama yanıtınızda güvenlik motorunun bunu tespit edip devreye girdiğini söylediniz, değil mi? Peki hacker şifre çözmeyi, o güvenlik motorunun çalışıyor olacağı uzak sunucuda mı yapacak? Veriyi dışarı sızdırdıktan sonra izole bir ortamda şifre çözmeyi deneyecektir; bu ortamda sözünü ettiğiniz güvenlik motoru belleğe yüklenmiş bile değilken, gözlemi tetikleyici alarak çalışması mümkün olabilir mi? Yoksa şifreleme yapılan tüm verilerin içine çalıştırılabilir biçimde bir güvenlik motorunu da birlikte yerleştirdiğinizi mi kastediyorsunuz?

 
polarisz00 6 일 전

Ben ne diyorum ya, bağlam sıfır olmuş, kusura bakmayın..

 
cgl00 5 일 전

Böyle yazılara ciddi ciddi yorum yapma eyleminin kendisi bile topluluğu olumsuz etkilemiyor mu acaba..

 
myoun 3 일 전

Matematiksel yaklaşım ilginç, ancak modern bilgisayar mimarisinde bunun neredeyse imkânsız olduğunu düşünmemek elde değil.

 
holywork 6 일 전

Openclaw tarzı şeyler kullanılarak "üretilmiş" bir code slop hissi çok güçlü geliyor.

 
polarisz00 6 일 전

Görüşünüz için teşekkür ederiz!

 
neneka 5 일 전

Ah ya haha

 
dicebattle 4 일 전

Dijital kale havası veriyor.
Ancak teknik olarak anlamıyorum.

 
savvykang 6 일 전

Cümleler dağınık görünüyor; bu bana mı öyle geliyor?

 
polarisz00 5 일 전

Görüşünüz için teşekkürler, cümleyi biraz daha gözden geçirip iyileştirmeye çalışacağım!

 
picopress 6 일 전

Bütünlük bozulduysa bunu nasıl tespit ediyorsunuz..

 
polarisz00 5 일 전

Görüşünüz için teşekkürler

Mevcut bütünlük doğrulama, verinin hash değerini bire bir karşılaştıran düzlemsel bir yöntemken, Physical Ghost veriyi 3 boyutlu Sierpinski tetrahedronuna eşleyip bu yapı üzerinde işlem yapıyor. Bu yüzden değerlendirme, yapısal kararlılığa göre yapılıyor.

Yapay zeka yanıtı şöyle diyor: "Sistem içindeki veri yalnızca 1 bit bile değiştirilse, p-adic carry dinamikleri nedeniyle bu küçük hata 3 boyutlu yapının tamamına zincirleme biçimde büyüyerek yayılır. Bir saldırgan veriyi tahrif ettiği anda, verinin oluşturduğu 'matematiksel yapı (topoloji)' bizzat hizasını kaybeder ve çöker; bu nedenle bu topolojideki çatlaklar üzerinden bütünlük ihlali anında tespit edilebilir."

 
bungker 6 일 전

Ben de kendimce PE yapısı ayrıştırma, RE, Ghidra ve sürücü geliştirme gibi şeyler yaptım ama anlayamadım.

 
polarisz00 5 일 전

Görüşünüz için teşekkürler
Bu, mevcut sistem hooking gibi şeylerden farklı; muhtemelen algoritmanın kendisi obfuscation veya encryption ile yazıldığı içindir.

 
polarisz00 5 일 전

Aslında emin değilim... Üzgünüm

 
dydwls140 6 일 전

İlginç bir yaklaşım olduğu için merak ettiğim birkaç nokta var ve sormak istiyorum.

  1. Bellek şişirme tetikleyicisi, "saldırganın gerçekten payload'u çalıştırdığı/debug ettiği" varsayımına dayanıyor gibi görünüyor; ancak saldırgan statik analiz ağırlıklı ilerlerse ya da bunu cgroups, Firejail, gVisor gibi kaynak kısıtlamalı bir sandbox içinde çalıştırırsa OOM ana makinede değil yalnızca sandbox içinde oluşacaktır. Bu durumda bu vakayı nasıl ele alıyorsunuz, merak ediyorum.

  2. Anti-debug tetikleyicisi de ptrace tabanlı bir tespit ise, hardware breakpoint veya hypervisor seviyesinde debugging karşısında iz bırakmayacaktır; bu tür katmanlarda analiz edilen senaryolara yönelik ayrıca tasarlanmış bir karşı önlem var mı?

  3. "0.1 byte bile bozulursa kendi kendini imha eder" dediniz; ancak bütünlük kontrol rutinini bizzat patch'leyerek ya da memory dump alıp offline analiz yaparak dolaşma yolunu nasıl engelliyorsunuz, bunu da merak ediyorum!

  4. Saldırgan kaynaklarını aktif biçimde tüketen davranış, fiilen hack-back kapsamına girebilir gibi görünüyor; bu nedenle Bilgi ve İletişim Ağları Yasası bağlamında aktif savunmanın hukuki sınırını nasıl çerçeveliyorsunuz, merak ediyorum! (Özellikle saldırı trafiği bir botnet üzerinden geliyorsa, gerçek mağdur ayrı bir taraf da olabilir.)

  5. C++ core engine'in kendisi yem port parser'ı, parmak izi çıkarıcı ve harici aktarım kanalı gibi bileşenleri de üstleniyor; bu yüzden saldırı yüzeyi epey geniş görünüyor. Motorun kendi bellek güvenliğini hangi yöntemlerle doğruluyorsunuz? Binary içinde webhook token gibi sırlar da bulunacak gibi duruyor; o kısım da merak konusu.

Matematiksel modellemenin kendisini ilgi çekici buldum. Yukarıdaki noktaların nasıl çözüldüğünü öğrenebilirsem konsepti anlamama yardımcı olur. Teşekkürler.

 
polarisz00 5 일 전

Görüşünüz için teşekkürler!

  1. maddede bellek şişirme tetikleyicisinin birincil amacı saldırganın ana makinesindeki fiziksel donanımı yok etmek değil, analiz için gereken hesaplama kaynaklarının kritik eşiğini zorla aşmasını sağlamak. cgroups ya da gVisor gibi bir sandbox içinde süreç OOM nedeniyle ölürse, bu başlı başına başarılı bir savunma sayılmaz mı? Amaç, p-adic işlemlerdeki sonsuz carry genişlemesi üzerinden analiz araçlarına veriyi yorumlayacak zamansal ve uzamsal alan bırakmadan, analiz ortamının kendi kendini kapatmasını sağlamak.

  2. maddede sistem çağrılarını ya da debugging API'lerini izlemiyoruz. Bunun yerine, çok boyutlu fraktal topoloji ya da Sierpinski tetrahedron yapısı içinde verinin işlendiği zamansal tutarlılığı ve carry dinamiklerinin sürekliliğini esas alıyoruz. Hypervisor üzerinde breakpoint koyup durdurursanız, hesaplamanın timing window'u kayar ve sonraki topolojik işlemler çöp değerlere çöküşe uğrayacak şekilde matematiksel olarak dolaşık -Entangled- hale getirilmiştir.

  3. maddede en önemli noktalardan birine değindiniz; bu sistemde saldırganın NOP ile etkisizleştirebileceği bağımsız bir bütünlük denetimi fonksiyonu (if atlatma) yok. Bütünlük doğrulama mantığı, core logic ve topolojik geometriyle birleşmiş, white-box şifrelemeye benzer bir yapıda.
    Ayrıca bellek dökümü alıp offline analiz yapılsa bile, dump edilen veri sürekli mutasyona uğrayan 3 boyutlu topolojik yapının belirli bir andaki 2D kesiti yalnızca. Tüm dinamik kuralı, yani carry pyramid modelini bilmeden, yalnızca dump verisiyle orijinal payload'u tersine mühendislikle çıkarmak mümkün olmaz diye düşünüyorum. (En azından matematiksel olarak..)

  4. madde benim de düşündüğüm noktaydı. Dediğiniz gibi aktif savunma, dışarıdaki C&C sunucularına karşı saldırı başlattığında hukuki açıdan ciddi sorunlar doğurabilir; ancak önerdiğim sistem çizgiyi kesin biçimde inbound trap tarafında tutuyor. Dışarıya kötü niyetli trafik göndermek yerine, saldırgan binary'yi kendi ortamına alıp kendisi çalıştırdığında yalnızca onun içinde labirent gibi hesaplama kaynaklarını tüketen bir yapı olduğu için, dışarıya zarar verme riskinden kaçınabileceğini düşünüyorum. (Umarım)

  5. maddede C++ tabanlı monolitik yapının bellek güvenliği riskleri beni de düşündürüyor. İleride Rust kullanımı eklemek ya da benzeri yollarla bunu sürekli doğrulamak gerekecek tabii.
    Ayrıca Webhook token gibi secret değerler plaintext ya da basit obfuscation biçiminde bulunmuyor. Daha önce sözünü ettiğim normal çok boyutlu topolojik işlemler sonuna kadar tamamlandığında, çıkan sonucu decryption key olarak kullanıp bunları geçici olarak bellekte birleştiriyoruz. Analiz amacıyla yapıyı bükmeye kalktığınız anda token'ın birleştirilmesi de imkânsız hale geliyor.

Sayenizde çok şey öğrendim, teşekkür ederim!

 
dydwls140 5 일 전

Öncelikle yanıtınız için teşekkürler. Ancak değinmek istediğim birkaç nokta daha var.

  1. (Bellek şişmesi): Metinde saldırganın kaynak tüketimi/kendi kendini çökertmesi demiştiniz, ama yanıtta ton biraz "sandbox içindeki OOM da savunmadır" tarafına kaymış gibi. O zaman 42.zip ya da billion laughs’tan farkı tam olarak nedir? Ayrıca Ghidra/IDA statik analizinde tetikleyici hiç devreye girmeyecek..

  2. Anti-debug: Entangled ifadesinin bir benzetme mi yoksa mekanizma mı olduğunu anlayamadım, ama içeriğin kendisi RDTSC zamanlama tespitinin bir varyantı gibi duruyor. VMProtect’in 90’lardan beri kullandığı bir teknik; gerçekten yeni bir isim gerektiriyor mu? Ayrıca HyperDbg TSC scaling ortamında nasıl çalışıyor?

  3. Bütünlük: White-box AES, BGE attack’tan sonra neredeyse tamamen kırılmış bir alan; bunu white paper haline getirdiyseniz bu başlı başına ayrı bir makale konusu olur. "Dump, 3D’nin 2D kesiti" benzetmesi de WinDbg TTD veya Intel PT karşısında geçerli bir ifade değil. Sonunda "yalnızca matematiksel olarak..." demeniz, sanki tüm yanıtın özeti gibi duruyor...

 
polarisz00 3 일 전

Geç yanıt verdiğim için özür dilerim(__) Her zaman değerli görüşleriniz için teşekkür ederim

42.zip gibi klasik bombalar statik verinin basitçe şişmesidir; bu yüzden yalnızca OOM (bellek aşımı) yaratır ve orada biter. Ancak bu mimari, veri değil, white paper'da da görebileceğiniz gibi carry pyramid'in p-adic carry işlem döngüsünü zorlayan bir hesaplamalı bataklıktır (Computational Tarpit).
Ghidra veya IDA ile statik analiz yapıldığında tetikleyicinin devreye girmemesi normal. Zaten öyle olmalı. Çünkü statik binary'nin içinde gerçek mantık yok. Saldırgan runtime (dinamik) ortamda etkileşime girmeye başladığında ancak o zaman topolojik geometrik obfuscation gerçek zamanlı olarak açığa çıkıyor; bu yüzden statik analiz araçlarıyla yalnızca boş bir kabuk görüyorsunuz.

RDTSC kullanan basit timing detection'ın artık eskimiş bir teknik olduğu doğru. HyperDbg'nin TSC Scaling'i ile zamanı kandırırsanız elbette atlatılabilir.
Ama benim white paper'da söz ettiğim entangled, zaman kontrolü değil. Runtime sırasında ilerleyen matematiksel topolojik değişimin (11'in n'inci kuvveti boyunca uzanan carry yapısı) hesaplama fazı (Phase), yürütme ortamının yüküyle matematiksel olarak bağlı bir yapı. HyperDbg ile ortamı aldatıp hesaplama zamanlamasını yapay olarak bükerseniz ne olur? Savunma motoru "ha, debugger var!" deyip sizi dışarı atmaz; bunun yerine carry pyramid'in faz açılım formülünün kendisi bambaşka bir boyuta doğru uzanır ve sonuç olarak tamamen işe yaramaz çöp veriyi kendi kendine deşifre eder. Kandırmaya çalıştığınız anda kendi tuzağınıza düşmüş olursunuz.

White-box AES, sabit bir matematiksel şifreleme anahtarını gizleme yöntemidir; bu yüzden BGE saldırısına karşı zayıftır. Bu bir gerçek. Ama bu mimari sabit bir anahtarı gizlemiyor; onun yerine, her erişim anında fazı değişen dinamik bir runtime topolojisi kullanıyor.
WinDbg TTD ya da Intel PT ile CPU'nun tüm instruction akışını %100 kaydedip bir zaman makinesi gibi geri oynattığınızı varsaysak bile, kaydedilen o yolun kendisi zaten saldırganın gözlem eylemi nedeniyle çökmüş ve bozulmuş şekilde oluşmuş bir çöp bataklıkta (tarpit) dolaşan bir yörüngeden ibarettir. Bir labirentin içinde yolunu kaybedip dolaşırken bıraktığınız ayak izlerini ne kadar hassas biçimde %100 kaydederseniz kaydedin, bu sizi labirentin çıkışını bulmaya hiçbir şekilde yaklaştırmaz

Mevcut paradigmalardan çok farklı olduğu için özür dilerim..

 
dydwls140 3 일 전

Ayrıntılı açıklama için teşekkürler. Mevcut paradigmaya fazla alışkın olduğum için sanırım sizi iyi takip edemiyorum. PoC yayımlandığında mutlaka tekrar gelip bakacağım. Destekliyorum :)

 
crawler 6 일 전

Ne kadar dâhi bir hacker olduğunu hayal bile edemiyorum

 
polarisz00 5 일 전

Görüşünüz için teşekkürler!
Ne dâhiyim ne de hackerım, sadece matematikle uğraşan biriyim..

 
computerphilosopher 6 일 전

Kendini imha: Çekirdek motorun bütünlüğü 0,1 bayt bile bozulursa süreç kendini sonlandırır (Self-Destruct); böylece motorun Truva atına dönüşmesi durumuna karşı koruma sağlar.

Bilgisayarda 0,1 bayt diye bir şey var mı?

1 bayt 8 bit olduğuna göre 0,1 bayt 0,8 bit eder. 1 bitten daha az bilgi diye bir şey olduğunu ilk kez duyuyorum.

 
picopress 6 일 전

Ben de böyle düşündüm

 
polarisz00 5 일 전

Görüşünüz için teşekkürler!
Ben, şey, core engine'in aşırı hassasiyetini vurgulamak istemiştim; kusura bakmayın!
İfadeyi düzelteceğim! 0,1 bayt demek olacak şey değil.