Sizin kaçıp sığınabilecek bir yeriniz yok. Savaş olsa bir ülkeye kaçsanız size köpek muamelesi yapacaklar. Sanıyor musunuz herkes Türkler gibi her kaçana kapı açacak. Maalesef vatan kavramı öğretilmediği için toprağım yoksa savaşmam diyebiliyorsunuz. Yazık..
🎙️ Muhbir@ajansmuhbir1923Oct 15Turkey
TurkeyConnected via Turkey App StoreAccount-level information, not a live location or per-post device.
Bir adam, kendisini ülkeye bağlayan herhangi bir mal varlığı olmadığı için savaş çıkarsa kaçacağını paylaştı:
• Yarın bir gün bir savaş çıksa ben savaşmam, kaçarım. Kaçarım abi.
• Yani ben ev sahiplerinin evini korumak için, araba sahiplerinin arabalarını korumak için, arsa sahiplerinin arsalarını korumak için ölemem.
• Benim bu ülkede bir avuç dahi toprağım yok, hiçbir şeyim yok. Yani ben kendim bildim bileli kiracıyım.
• Neyini savunacağım ki yani? Neyi, kimin için yani? Yok ya, kaçarım yani mümkünse eğer. Kaçarım veya teslim olurum.
• Teslim olmak gibi bir seçenek varsa teslim olurum. Yani belki bu söylediğim şeyler size çok aykırı.
• "Hadi ya korkak! İnsan vatanı için yaşar, vatanı için ölür" diyebilirsiniz.
• Hayır, ben pragmatistim bu konuda. Ben bu dünyada yaşayan herhangi bir canlı türünden biriyim.
• Yani öyle bir şey yapamam. Kaçabiliyorsam kaçarım. Benim asli amacım zaten hayatta kalmak, tıpkı diğer canlı türleri gibi.
• Ben işte hiçbir ideoloji uğruna, hiçbir şey uğruna ben ölmem. Hayır, ben sadece kendi uğruma ölürüm.
• Yani benim ölmeye değer bir şeyim varsa bu hayatta, mesela kedim için ölürüm. Mesela kedilerim var, çok tatlı. Onlar için ölürüm ama onun dışında yok.
Replying to @okan_kurtuluss
Ya ne günlerdi yaa. Serverde root olma, Mass index atma, config çekme vs vs. Old but gold days.:)
Replying to @FCBarcelona
Her firavunun bir Musa’sı var. İnşAllah sizi biz durduracağız.:)
Grok ile ilgili bir zafiyet bildireceğim ama hackerone üzerinden bildirdiğimde model ile ilgili zafiyetler kapsam dışı deyip [email protected] ye yönlendirdiler. Oradan dönüş almam uzun sürer sana göstersem inceleyebilir miyiz? @yagiznizipli .Yetkili arkadaşa chat linkini iletebilirim
ChatGPT Stored XSS Vulnerability Bug Bounty PoC
youtu.be/mc53Yr-60ZQ?si=VabR…
Bir JavaScript hatasından başlayıp işletim sisteminin belleğini değiştirmeye kadar giden süreç… @fatihguzeldev oturmuş her şeyi adım adım anlatmış.
Mutlaka okuyun.👏
geçen hafta ps5'in tarayıcı üzerinden kırıldığını neredeyse herkes duymuştur. bir türlü fırsat bulup detaylarını yazamamıştım, sonunda oturup kurcalayabildim.
bir web sayfasındaki javascript'ten başlayıp işletim sisteminin belleğini değiştirmeye kadar falan uzanıyor hikaye.
tahmin edebileceğiniz üzere, ps5'e kendi yazdığınız bir programı yükleyip çalıştıramıyorsunuz. ama aynı konsolda bir web sayfası açıp o sayfanın javascript'i ile konsolu sony'nin izin vermediği programları çalıştırabilir hale getirebiliyorsunuz. bu jailbreak'in en kısa özeti bu sanırım. "relapse" adlı exploit 29 eylül'de yayımlanmış. ama "ps5 ilk defa kırıldı" demek yanlış, çünkü eski sürümlerde de çalışan jailbreak'ler de varmış. bunun olayı temmuz ayında yayımlanan 13.60 sürümüne kadar destekliyor olması.
peki bir web sayfasından buralara nasıl geliniyor?
önce kendi yazdığımız programların neden ps5'te çalışmadığını anlayalım:
bir programı compile ettiğimizde işlemcinin çalıştıracağı instruction'lar üretiyoruz. işlemci mimarisini biliyoruz, dosya biçimini ve sistem arayüzlerinin de doğru olduğunu varsayalım. bunlar mevcutta bir programın çalışabilmesi için gerekli; fakat çalıştırılmasına izin verileceği anlamına gelmiyor.
ps5'in işlemcisi x86-64 instruction set'ini kullanıyor. burada instruction dediğimiz şey işlemcinin gerçekleştirdiği tekil işlemler; bir değeri register'a yazmak, toplamak ya da başka bir adrese jump'lamak gibi. işlemciye uygun makine kodunu üretmek tek başına yeterli değil çünkü bu kodun ve kullandığı verilerin belleğe nasıl yerleştirileceğini, programın hangi adresten başlayacağını da belirtmemiz gerekiyor. bunları bilgileri çalıştıracağımız programla beraber dosyalarda tutuyoruz; işletim sisteminin yükleyicisi (loader), programı bu bilgilere göre çalışmaya hazırlıyor.
sony burada ELF (executable and linkable format) tabanlı signed ELF (SELF) formatını kullanıyor. yani istediği şey yalnızca programın kodu ve yükleme bilgileri değil, aynı zamanda imzası ve yetkilendirme bilgileri. imzalanmamış dosyalar da bu güvenlik kontrollerinden geçemediği için istediğimiz programı ps5'te çalıştıramıyoruz.
"o zaman programı dosya olarak yüklemeyelim, byte'larını belleğe yazıp oradan çalıştıralım?"
bu da ayrıca engellenmiş durumda. bellekteki bir bölgenin yazılabilir (writable) olması, çalıştırılabilir (executable) olduğu anlamına gelmiyor. işlemci, bellek erişimleri sırasında sayfa (bellek blokları) izinlerini de denetliyor. çalıştırma izni olmayan bir bölgeye atlamak, oradaki byte'lar geçerli talimatlar olsa bile normal şekilde çalışamıyor. bu da "veri" olarak içeri alınan byte'ların doğrudan çalıştırılabilir programlara dönüşmesini engelliyor.
jailbreak dediğimiz şey, bu sınırlamaların bir bölümünü aşarak normalde izin verilmeyen çalıştırma ve erişim yetkilerini elde etmek aslında. bütün güvenlik mekanizmalarının ortadan kalkması ya da sony'nin SELF için kullandığı private key'in bulunmasına gerek yok.
bu işin geçmişi de birkaç gün öncesine dayanmıyor. 2022'de ps5'i hedefleyen araştırmalarda eski 3.xx/4.xx sürümleri için benzer şekilde webkit üzerinden ilerleyen bir kernel exploit'i de varmış. bu yeni exploit (relapse), eski ntfargo, ufm42, sonic-iso ve jordy gibi geliştiricilerin katkılarıyla, önceki araştırmalar üzerine kurulmuş bir çalışma.
hatta bu exploit zincirinde kullanılan kernel hatasının teknik analizi 6 eylül 2026'da (relapse 29 eylül'de yayınlanıyor), exploit'in geniş biçimde paylaşılmasından önce yayımlanmış.
şimdi tarayıcıya geri dönelim.
javascript çalıştırabiliyor olmamız, zaten konsolda hesaplama yapabildiğimiz anlamına geliyor. 20 + 22 işlemini hesaplatmak için jailbreak gerekmiyor. eksik olan şeyler:
- tarayıcının kendi iç verilerine erişmek
- execute'un devam edeceği adresi değiştirmek
- native os fonksiyonlarını çağırmak
relapse, webkit'in javascript motoru içindeki sızıntıları (daha iyi bir kelime bulamadım) bir structured clone* hatasıyla birleştiriyor
*structured clone, javascript'te bir değeri kopyalamak için kullanılan basit bir mekanizma.
const object = { value: 42 };
const copy = structuredClone([object, object]);
copy[0] === copy[1]; // true
aslında burada iki ayrı nesne oluşturmuyoruz. aynı nesneye iki kere referans veriyoruz. kopyalama işlemi de bu ilişkiyi korumak zorunda. bunun için hangi nesnenin daha önce işleneceğini takip etmesi gerekiyor.
webkit hatasında, nesne referanslarını takip eden yapı başka bir iş için de kullanılıyor: bazı nesnelerin garbage collector tarafından temizlenmesini önlemek.
bu sorumluluklar birbirine karışınca veriyi yazan tarafla geri oluşturan tarafın nesne kayıtları uyuşmuyor. yani referans, olması gereken nesneyle eşleşmiyor.
(bu kısım çok derin ve karmaşık olduğu için hızlıca geçiyorum)
webkit, bu sorunu 26 ocak 2024 tarihinde çıkardıkları patch ile düzeltiyor. düzeltme iki işi de ayrı yapılara ayırıyor. ama işte, upstream projede düzeltmenin yapılması ile onu kullanan bütün ürünlerin embedded sürümlerinin bunu uygulaması bambaşka iki şey.
relapse, "özel" hazırlanmış nesneleri ve bellekteki yerleşimlerini kullanarak bu hatayı bir typed array'in iç yapısını bozmak için kullanıyor.
örneğin Uint8Array, yalnızca javascript'te gördüğümüz elemanlardan oluşmuyor; javascript motorunun içinde verisinin hangi adreste bulunduğunu belirleyen bilgiler de var.
sonuçta şu tarz bir şey oluşuyor:
const buffer = new ArrayBuffer(8) // 8 byte'lık
const view = new Uint8Array(buffer) // bu alana byte byte erişebiliriz
view[0] = 42; // ilk byte'a 42 yazdık
console.log(view[0]); // 42
normal durum:
view[0] -> oluşturduğumuz buffer'ın ilk byte'ı
adres bilgisini bozduğumuzda:
view[0] -> değiştirdiğimiz adresin göstereceği ilk byte
yani webkit'teki bu açığı, istediğimiz adreslere okuma/yazma yapmak için kullanıyoruz. buna arbitrary read/write deniyor. bu aşamada henüz tarayıcının erişebildiği bellek içindeyiz.
şu an belleğe yazabiliyoruz ancak yazdığımız makine kodunu çalıştıramıyoruz.
burada return-oriented programming (rop) adında bir teknik kullanılıyor.
bir fonksiyon çalışmayı bitirdiğinde, execution işleminin hangi adresten devam edeceğini belirleyen bir dönüş adresi bulunuyor. bu adresi ve devamında kullanılacak stack verilerini kontrol edebilirsek execution'u kendi istediğimiz başka bir kod parçasına yönlendirebiliriz.
yani, yeni talimatlar yazmak yerine, süreçte zaten bulunan çalıştırılabilir instruction'ları dilediğimiz sırada çalıştırabiliyoruz. bu kısa kod parçalarına "gadget" deniyor. bu parçaların sonunda genellikle "ret" instruction'ı bulunuyor. normalde bir fonksiyondan dönerken stack'teki dönüş adresi kullanılıyor. bu adresi kontrol edebildiğimizde işlemcinin sırada hangi kodu çalıştıracağını da belirleyebiliyoruz.
relapse'in kodunun içinde şöyle gadget'lar var, offset'ler:
"pop rdi": 0x000288B2,
"pop rsi": 0x00014EAD,
"pop rdx": 0x000FA7A2,
"pop rsp": 0x000A1138,
peki bu gadget'ları nereden buluyoruz?
webkit ve kullandığı native kütüphaneler zaten derlenmiş. araştırmacılar bu kodu disassemble ederek işlerine yarayacak instruction'ların konumlarını önceden belirliyorlar. bu adresleri kullanarak rop zincirini oluşturup, register'lara istedikleri değerleri yerleştirip yürütmeyi sistem kütüphanelerindeki native fonksiyonlara yönlendiriyorlar.
mesela libkernel'deki syscall wrapper'larını çağırabiliyoruz.böylece javascript'in doğrudan sunmadığı sistem çağrılarını, kendi hazırladığımız argümanlarla fiilen execute edebiliyoruz..
fakat henüz kernel yetkilerine sahip değiliz, güvenlik kontrollerini hala aşamıyoruz. işin ikinci kısmı da burada başlıyor.
relapse, kernel'daki "aio_multi_wait" adlı fonksiyonda bulunan bir use-after-free açığını kullanıyor. bu fonksiyon, async i/o işlemlerinin tamamlanmasını beklemek için kullanılıyor. bu açık yüzünden belirli koşullarda aynı bekleme kaydı (i/o isteklerinin tamamlanmasını beklemek için) birden fazla isteğe bağlanıyor. temizleme sırasında da bütün referanslar kaldırılmadan bellek serbest bırakılıyor.
yani kernel, artık geçerli olmayan bir bellek adresine referans tutmaya devam ediyor. bu bellek başka bir veri için yeniden kullanıldığında, kernel eski nesneyle işlem yaptığını sanarken farklı bir veri üzerinde işlem yapıyor.
exploit, bunu kontrollü biçimde tetikleyerek kernel belleğinden okuma/yazma yapabilecek bir mekanizma oluşturuyor. yani artık tarayıcının belleğiyle sınırlı değiliz. kernel'in tuttuğu process bilgilerine erişebiliyoruz.
relapse burada kendi çalıştığı process'in kullanıcı kimliğini, yetki bilgilerini ve sandbox kısıtlamalarıyla ilgili alanlarını değiştiriyor. ardından ELF loader aracılığıyla normalde çalıştırılmasına izin verilmeyen programların yüklenmesini sağlıyor.
ve jailbreak böylece yapılmış oluyor. istenilen programlar ps5 içerisinde bu sayede çalıştırılabiliyor.
özetlemek gerekirse;
- javascript motorundaki bir hatayla bellek erişimi elde ediliyor,
- ardından mevcut makine kodunun yürütülmesi kontrol ediliyor,
- son olarak kernel'deki başka bir hatayla sistemin uyguladığı yetki kısıtlamaları aşılıyor.
baya ilginç hikaye.
New Video: Google XSS Vulnerability Bug PoC
youtu.be/KwPJqAFc4Fw
New Video: CSP Bypass, DOM Clobbering & Sandbox Escape | BugPoC XSS Walkthrough
youtube.com/watch?v=MD2wDuPN…
Replying to @catgirl_root @enesen251653
Replying to @catgirl_root @enesen251653
Zamanında az eziyet görmedim bu bilgileri öğrenmek için 😂
Ahmet Çakar’ında dediği gibi bizim çocuklar başka çocuklar olma yolunda gidiyorlar..
#ITATUR
Arşiv unutmaz cihan..:)
zone-h.org/mirror/id/2625695…
Tabii ki halen pesinden gelen, sana saf gibi inanan geri zekali bir kitle oldugunu da gorebiliyoruz ama biz kimin ne oldugunu biliyoruz. Kisisel reputasyonunu yesinler senin :)
New Video: Why I Disappeared… And What’s Coming Next..?
(Destek veren herkese teşekkürler)😄
youtu.be/WwjcsaiJde4
NullSecurityX retweeted
The very first edition of @LatentShiftAI conference now brings you the @OmarchyLinux community booth at the event day 🔥
17 Oct, Istanbul
You will meet Omarchy’s website design team lead, @BarisGirismen!
Then catch @GoktugVatandas on stage for Omarchy 101: a 20-minute live demo and introduction to Omarchy!
I promise you will see what malleable computers can do!
İsrail ile ortaklığını resmileştirmiş. Halkın böyle düşündüğünü düşünmüyorum. Böyle düşünen Azerbaycanlı varsa da İsrail ile onu da yok edeceğiz. Bu e herfi zaten islam düşmanı İsrailli orevladı ajan..
This quoted post is unavailable.
Replying to @KadikoyMedya_
Bursaspor’a neden salladığı belli oldu ter*rist oevladının









