Bluesnarfing, Bluetooth bağlantısını kullanarak telsiz bir aygıttan bilgi çalmanın literatür adı. Şaşırmaya gerek yok bu tür yeni şeylerin literatüre girmesi için fazla bir zaman geçmesine gerek olmuyor. Farklı bir ifadeyle çoğunlukla telefonlar, dizüstü ve el bilgisayarları gibi cihazlardan telsiz bağlantısı kullanılarak bilgi sızdırmada kullanılan, yöntem ve teknikler topluluğuna verilen isim diyebiliriz. Bu yöntemlerle aygıtın ajandasına, kontak listesine ve kayıtlı mesajlarına erişiliyor. Saldırganın aygıtlara bu yöntemle erişilebilmesi için Bluetooth bağlantısının açık ve discoverable (sınırlar içindeki diğer Bluetooth cihazları tarafından bulunabilmesi) özelliğinin aktif olması gerekiyor. Bu özellik kapalı olsa bile saldırganın kaba kuvvetle cihazı tanımlaması mümkün. Bluejacking ise yakındaki Bluetooth cihazlara isim alanında mesaj yer alan reklamlar göndermek olarak tanımlanmış ikinci jargon. Canlı bir bluesnarfing gösterisini izlemek için buradan buyrun.
Ajax ile güvenli veri aktarımı
XML yada AJAX ile sunucu tarafına güvenli bir şekilde veri göndermek gerektiğinde bazı özel durumları da düşünmek ve kodda ekstra bazı eklemeler yapmak gerekiyor. Kullanmış olanlar bilirler, XMLHTTP nesnesi kullanıldığında, gönderilecek veri open üye fonksiyonuna parametre olarak verilir. Örneğin:
http.open(‘POST’, VERI, true);
veya
http.open(‘GET’, VERI, true);
Yukarıdaki veri değişkeni her iki gönderim metodunda da (GET ve POST) aynı şekilde ve formatta kullanılır. Veri isimli değişkenin formatı şu şekildedir:
degisken1=veri1°isken2=veri2°isken3=veri3
Aslında güvenli aktarımdaki bir sıkıntı da tam burada oluşuyor. Verilerden birinin muhteviyatında &, n veya + (ve özel amaçlı yazdırılamaz karakterler) karekterleri bulunduğunda, veriler sunucu tarafındaki script’te düzgün olarak ayrıştırılamıyor veya aktarılamıyor . Bu sorunun üstesinden gelmek için veri kısmıdaki zararlı karakterklerin ayıklanarak URL’i bozmayacak şekilde kodlanması gerekiyor. Base64, veriyi kendi karakter tablosunu kullanarak (64 adet karakterden oluşur) kodlayan bir algoritma. Web’de base64 encoder ve decoder olarak birçok javascript fonksiyonu bulmanız mümkün. Ancak bunların hepsi PHP’nin (sunucu tarafında php script kullanıldığını varsaydım) base64_decoder fonksiyonuyla uyumlu çalışmıyor. Webtoolkit sitesindeki kodlayıcı ve çözücü fonksiyonlar php.net sitesinde de belirtildiği gibi PHP’nin base64 kodlama ve kod çözme fonksiyonlarıyla uyumlu çalışıyor.
Gönderilecek veriyi base64 ile kodlamak ve karşı tarafta çözmek tek başına sağlam bir veri aktarımı yapmak için yeterli değil. Base64 esasında ikili veriyi yazdırılabilir formattaki karakterlere çevirmeye yarıyor. Bu sayede içerisinde veri taşıyıcısını etkileme ihtimali olan zararlı karakterler güvenli bir formata çevrilmiş oluyor. Base64 algoritması içerisinde (A-Za-z0-9+/) karakterlerinin yer aldığı 64 adet karakteri kullanarak kodlanmış çıktıyı oluştururuyor . (Base64 algoritmasının çalışmasını çok güzel bir şekilde açıklayan bir PDF dosyasını buradan indirip okuyabilirsiniz. ~46KB)
Sanırım çıktı karakter kümesinde yer alan + ve / karakterleri dikkatinizi çekmiştir. Bu karakterlerin XMLHTTP
nesnesine verilen veri isimli parametrede yer alması aktarım açısından sorun oluşturmuyor. Benim farkettiğim tek sorun + karakterinin Apache+PHP ikilsinin çalıştığı sunucu tarafında otomatik olarak boşluk karakterine çevrilmesi.Yani + karakterleri boşluk olarak aktarılıyor. + işaretinin yok olması (yani boşluk karakterine çevrilmesi) base64 verisinin orjinalliğini bozduğu için base64_decoder’ın ürettiği çözülmüş veri de bambaşka birşey olarak çıkıyor. Bu nedenle base64 ile kodlanmış veriyi göndermeden önce içerisindeki + karakterini bir javascript fonksiyonu olan encodeURIComponent ile kodlamak gerekiyor. Bu kodlamadan sonra + karakteri %3B URL koduna çevriliyor. PHP tarafında base64_decode’dan önce encodeURIComponent’in yaptığının tersini yapacak bir kod kullanmaya gerek yok. Nitekim, web sunucu URL karatker kodlarıyla gelen %20, %FB ve %3B gibi verileri otomatik olarak orjinal haline zaten çeviriyor. Yani %3B olan kod +’ya istek PHP ye ulaşmadan çevrilmiş oluyor.
Hazır bol bol karakter kodlamaya dalmışken son bir gerekli kodlamadan ve gerekliliğinden de bahsetmek istiyorum. Latin karakter kümesi dışında bir veri girişi söz konusu olduğunda muhtemelen sunucu tarafında yada veri tabanında karakter kodlama sorunları yaşayacaksınız. Bu sorun esasında verinin sunucu veya istemci tarafında ele alınış şeklindeki farklılıktan kaynaklanır. Verinin sahip olduğu mutlak sayısal değerler farklı kodlama tablolarında farklı karakterler ile yorumlanırlar. Gönderilen veride yer alan karakterler, kullanmakta olduğunuz tabloda yer alıyorsa ve sunucu tarafında da (katar ve veritabanı işlemlerinde) aynı karakter tablosunua göre ele alınıyorsa hiçbir sorun yaşamazsınız. Özet olarak istemci ve sunucu tarafında aynı kodlama standardının kullanılması gereklidir. Burada tüm karakter kodlama tablolarını içeren ve destekleyen UTF kodlamasının kullanılması gerekiyor. UTF 2 byte’lık unicode adı verilen karakterleden oluşur. Latin alfabesi dışında arapça, çince veya japonca gibi dillerde kullanılan karakterleri de kapsar ve destekler. Verimizi XMLHTTP nesnesi ile göndermeden önce, UTF olarak kodlamamızda, verinin selameti açısından büyük fayda var.
Buraya kadar anlattıklarımı özetleyen kod parçası aslında şöyle:
function encode(input) {
input = WebToolKit.utf8.encode(input);
input = WebToolKit.base64.encode(input);
return encodeURIComponent(input);
}
Dilerseniz kodun tamamını buradan indirebilirsiniz. ~4KB
Yazan: Tankado
ZK: Ajax but no Javascript
ZK, javascript bilgisi gerektirmeden birazcık programlama bilgisiyle zengin kullanıcı arabirimli web uygulamaları gerçekleştirmeyi sağlayan açık kaynak kodlu bir ajax web kütüphanesidir. Olay tetiklemeli zengin bileşenleri ile geliştirme çok daha basitleşiyor. İşaretleme diliyle tasarım yapmak HTML yazmak kadar basit. Bilşenler kullanılarak yapılmış demo sayfasını görmek için tıklayın. Framework’ü indirmek için tıklayın.
SMSrc:SMS remote control
![]() |
| Bu devre ile bir cep telefonunundan özel bir sms mesajı göndererek 8 adet elektronik aygıtı kontrol edebiliyorsunuz. Devre Ericson T10s telefonunun iletişim bağlantı noktasını bağlanmış. Devreye enerji verildiğinde telefonun ilk bellek konumundaki mesajı okumaya calışıyor (1- AT+CPMS="ME", 2- AT+CMGR=1). Eğer hiç mesaj yoksa bu işlem sürekli olarak tekrarlanıyor.
Cihaz kontrolü için gönderilen mesaj ikili formatta yazılmış olmalı. Toplam 8 cihaz kontrol edileceği için gönderilen mesaj 8 bitten oluşuyor. Örn: 10000011 şeklinde gönderilen bir mesaj 1.,2. ve 8. cihazların aktive edilmesini (ilgili roleleri çektirerek) diğerlerinin (3,4,5,6,7) ise kapatılmasını sağlıyor.Ayrıntılı bilgi için projenin şema ve AT komut dosyalarını inceleyebirsiniz. |
Autodialer: Robotic Brute Forcer
Hemen herkes bir kere olsun şifresini unutmuştur. Word dökümanının şifresi, e-posta hesabının şifresi hatta işletim sisteminin giriş şifresini bile. Bunların hepsi için şifreyi kaldırma veya kurtarma şansınız vardır.
Dökümanınız için kaba kuvvet (brute force) kurtarmayı kullanmaktan başka şansınız yok (MS Ofis 97 ve öncesini kullanmıyorsanız), bu tür programlar olası bütün şifreleri bilgisayar hızını kullanarak deneme yanılma yöntemiyle bulmaya çalışırlar. Şifrenin kurtarılıp kurtarılamayacağı veya ne kadar zamanda kurtarılacağı tamamen şifrenizin uzunluğuna ve içerisindeki karakterlerin çeşidine bağlı.
E-posta hesabınızın şifrenizi unuttuysanız hemen hemen tüm ciddi e-posta hizmeti veren sitelerde var olan "Parolamı unuttum" fonksiyonunu kullanabilirsiniz. Bunu kullandığınızda, hesabınızı oluştururken tanımladığınız gizli sorunuz veya diğer bazı bilgileri sorulacaktır. Doğru cevapladığınız takdir parolanızı sıfırlamanıza izin verilecektir. Bu açıdan e-posta hesabı oluştururken hangi bilgileri girdiğinizi hatırlamanız önemli. Eğer bu aşamayı gerçekleştirmeyi başaramazsanız bile site yönetimi veya destek servisi ile iletişime geçme şansınız var..
Yukarıda açıkladığım word dökümanlarında olduğu gibi arşivlerin de (örn: rar, ace, zip) şifresini kaldırmak mümkün değil. Burada da deneme yanılma yöntemini kullanmak zorundasınız.
İşletim sisteminizde ise durum biraz daha farklıdır (Windows veya Linux için) isterseniz şifrenizi kurtarmayı, dilerseniz de şifrenizi sıfırlamayı tercih edebilirsiniz. Bu iş için Hiren Boot CD içerisindeki programlar oldukça yararlı.
Bu kadar ek bilgiden sonra gelelim asıl konumuza. Ya unuttuğunuz şifre değerli eşyalarınızı veya paranızı sakladığınız çellik bir kasaya aitse. Ne yaparsınız ? Bir ihtimal şifrenizi hatırlamaya gayret ederek, çeşitli denemelerde bulunabilirsiniz. Ama sonuç değişmeyecek bir türlü kasınızın şifresini hatırlayamıyorsunuz. Sanırım bu durumda bir çilingir çağırmayı kasanızın kilit mekanizmasını feda etmek uğrana da olsa düşüneceksiniz. MIT’den iki öğrencinin başlarına böyle birşey gelmiş olacak ki bu projeyi gerçekleştirmişler.
![]() |
| Bu çalışma unutulan kasa şifrelerini deneme yanılma yoluyla bulmaya calışan ufak bir robottan ibaret. Olası şifreler veya belirli bir sırada tüm şifre kombinasyonları denenerek, kasa kapağının açılıp açılmadığı test ediliyor. Çevirmeli kiilit kolunun üzerine tutturulan çevirici mekanizma bir diz üstü bilgisayardaki yazılım tarafından yönetiliyor.
Yazan: Tankado |
Google Trends
Google Trends internette ençok aranan ve heberlerde ençok geçen anahtar kelimelerin trend grafiğini oluşturan bir hizmet. Yaklaşık 3 yıllık bir zamanı kapsayan grafiklerde internet haber sitelerinden ve google’un kendi arama istatistiklerinden derlediği iki ayrı grafik veriliyor. İlk denediğim kelimelerden biri de google. Grafikten gördüğüm kadarıyla 2 yılda kullanım oranı 2 kat artmış, fakat haber kaynaklarındaki haber oranı için aynı şeyi söyleyemeyeceğim. Son zamanlarda yahoo‘nun arama motoru da oldukça başarılı sonuçlar veriyor. Onu da bir kenara not etmekte fayda var.
AttackAPI
AttackAPI javascript ve diğer bağlantılı olduğu istemci (ve sunucu) teknolojileri ile programlanabilr web arayüzleri üzerinden basit ve sezgisel saldırılar düzenlemeye yarıyor. Şuanki versiyonu birçok tarayıcı temelli (Örn:IE, FF, NC) saldırı tekniğini kullanmaya imkan tanıyor.
API kütüphanesinin birbirinden bağımsız bileşenleri şu adreslerden indirilebilir:
- http://www.gnucitizen.org/projects/attackapi/build/standalone/AttackAPI.js
- http://www.gnucitizen.org/projects/attackapi/build/standalone/MasterAPI.js
Kütüphanenin yeteneklerinin sınandığı tanıtımlar da kısaca şöyle:
NetworkSweeper: Daha önce de benzer bir örneğini verdiğim ip aralığı servis tarayıcısı. Yaptığım denemede ağda çalışan servisler (http) olmasına rağmen tespit edemedi. Bu API’yi başarılı olarak görmüyorum.
http://www.gnucitizen.org/projects/attackapi/build/inf/interfaces/NetworkSweeper.htm
JavascriptShell: Bir tür komut kabuğu içerisinde javascript kodlarının incelenip çalıştırılmasını sağlıyor, javascript’te hata ayıklama işlerinde kullanılabilir. http://www.gnucitizen.org/projects/attackapi/build/inf/interfaces/JavaScriptShell.htm
PortScanner: Basit bir javascript port tarayıcısı daha. Bu yukarıdakinden biraz daha başarılı.
http://www.gnucitizen.org/projects/attackapi/build/inf/interfaces/PortScanner.htm
HistoryDumper: Bu kod normalde yapamaması gereken birşeyi yaparak kullanıcın bir URL adresini daha önceden ziyaret edip etmediğini tespit edebiliyor.
http://www.gnucitizen.org/projects/attackapi/build/inf/interfaces/HistoryDumper.htm
ExtensionScanner: Web developer, Google tool bar ve Greasemonkey gibi tarayıcı eklentilerinin yüklü olup olmadığını tespit edebilen bu API sadece Mozilla tarayıcılarda çalışıyor. Örneğin ziyaret ettiğiniz bir web sayfası greasemonkey veya herhangi bir zayıflık içerek eklentinin yüklü olduğunu testpit ettiğinde sisteme arka kapı yükleyebilir.
http://www.gnucitizen.org/projects/attackapi/build/inf/interfaces/ExtensionScanner.htm
Son olarak dinamik web sitelerinde ençok XSS ve çeşitli Injection açıklarına rastlanıyor. Bu kütühane ve XSS teknikleri kullanılarak daha kompleks saldırılar gerçekleştirmek mümkün olabilir.
Yazan: Tankado
Demographics Prediction
Microsoft adCenter Labs‘ın bu sayfasından istediğiniz web sitesinin ziyaretçilerinin yaş ve cinsiyet dağılımlarını görebiliyorsunuz. MSN arama sitesinin elde ettiği tarayıcı bilgileri sayesinde verilen(sitenin kendisi söylüyor) bu hizmeti herhangi bir kelimeyi aratan kişilerin demografik istatistiklerini görmek için de kullanabiliyorsunuz.
Open Source as Alternative
Açık kaynak kod seven birisi olarak yeni keşfettiğim www.osalt.com sitesini bilmeyenlere tanıtmak istiyorum. Başlıkta da yazdığı gibi Open Source as Alternative kelimelerinin kısaltması olan osalt sitesinde gündelik hayatta kullandığımız ve ücretli kullanım lisanslarına sahip yazılımlara alternatif olabiliecek yazılımlar listeleniyor. Örneğin Windows, visio, photoshop gibi yazılımların yerine ücretsiz olarak kullanabileceğimiz yazılımlar kategorize bir şekilde osalt sitesinde görmek mümkün ve bu liste sıklıkla genişlemeye devam ediyor.
Zeki Türk Kadını
Başlığa bakarak bu yazının ne yazılım ile ne de .NET ile ilgili olmadığını düşünebilirsiniz. Fakat yanılıyorsunuz.
Biz Türk erkekleri genellikle, kadınlarımızın teknolojiye ve bilişime [affınıza sığınarak söylüyorum] kafasının basmadığını düşünürüz. Oysa Türk kadınları, pratik zekası ve hızlı düşünme yeteneği sayesinde bilişimde o kadar başarılı olabilirler ki, emin olun batı toplumları ağzı açık bir şekilde Türk kadınının başarısını seyreder durumuna düşebilir.
Peki neden böyle birşey gerçekleşmiyor? Neden kadınlarımız bırakın bilişimi, iş dünyasında bile başarılı olamıyor?
Belki güleceksiniz ama; bunun sebebi bana göre “televizyon dizileri”. Biz kadınlarımızı tv dizleri ile [yine affınıza sığınarak söylüyorum] mallaştırırken, Çin ve Hindistan gibi ülkeler seri bir şekilde kadın mühendis yetiştiriyor. Oysa Türk kadınının zeka seviyesi, emin olun onlardan çok daha yüksek.
Başlığa bakarak bu yazının ne yazılım ile ne de .NET ile ilgili olmadığını düşünebilirsiniz. Fakat yanılıyorsunuz.
Biz Türk erkekleri genellikle, kadınlarımızın teknolojiye ve bilişime [affınıza sığınarak söylüyorum] kafasının basmadığını düşünürüz. Oysa Türk kadınları, pratik zekası ve hızlı düşünme yeteneği sayesinde bilişimde o kadar başarılı olabilirler ki, emin olun batı toplumları ağzı açık bir şekilde Türk kadınının başarısını seyreder durumuna düşebilir.
Peki neden böyle birşey gerçekleşmiyor? Neden kadınlarımız bırakın bilişimi, iş dünyasında bile başarılı olamıyor?
Belki güleceksiniz ama; bunun sebebi bana göre “televizyon dizileri”. Biz kadınlarımızı tv dizleri ile [yine affınıza sığınarak söylüyorum] mallaştırırken, Çin ve Hindistan gibi ülkeler seri bir şekilde kadın mühendis yetiştiriyor. Oysa Türk kadınının zeka seviyesi, emin olun onlardan çok daha yüksek.
Extract URLs in text data with Javascript
Daha önce sitede duyurduğum bağlantı (link) arşivi projesi için hazırladığım kullanışlı javascript programcığı. readClipboardData(), parseURL() ve pasteFromClipboard() fonksiyonlarından oluşan programcık panodaki metin verisi içerisinde yer alan URL’leri tespit edip ayıklıyor ve tamamını string olarak geri döndürüyor. Ana fonksiyon olan pasteFromClipboard() ilkönce panodaki metin verisini readClipboardData() fonksiyonu yardımıyla okuyor (IE ve FF farketmiyor) ardından parseURL() içindeki regex (Regular Expression) cümlesi yardımıyla özyinelemeli (Recursive) olarak teker teker elde ettikten sonra string olarak ana fonksiyona aktarıyor. pasteFromClipboard() fonksiyonu ise son olarak URL’ler arasına newline (\n) yerleştirerek string formunda tekrar geri döndürüyor. Kodları buradan test edip indirebilirsiniz.
Web için uyumlu renkler
Web sayfalarında kullanılabilecek birbirleriyle uyumlu renkler ve bunların RGB kodları.
Web sayfalarında kullanılabilecek birbirleriyle uyumlu renkler ve bunların RGB kodları.
Okumaya devam et “Web için uyumlu renkler”
Read Clipboard & Set Clipboard
Javascript ile panoya metin kopyalamak ve panodaki metni almak için kullanılabilecek fonksiyonlar. Internet Explorer (IE) ve Firefox (FF) web tarayıcılarını da destekliyor.
Javascript ile panoya metin kopyalamak ve panodaki metni almak için kullanılabilecek fonksiyonlar. Internet Explorer (IE) ve Firefox (FF) web tarayıcılarını da destekliyor.
Okumaya devam et “Read Clipboard & Set Clipboard”
phpMySQLAutoBackup – Otomatik yedekleme
phpMySQLAutoBackup MySQL veritabanlarının yedeklenmesini otomatik hale getiriyor. PHP script’i veritabanını okuyor (verileri ve yapıları), gzip biçiminde sıkıştırıyor ve belirttiğiniz e-posta adresine gönderiyor. Veritabanı kullanan ve verilerin güncelliğinin önemli olduğu web siteleri için mutlaka bir acil durum planı yapılmalıdır.
Okumaya devam et “phpMySQLAutoBackup – Otomatik yedekleme”Elektronik Üzerine Elektronik Dergi
PozitifPC‘nin ardından yeni ve ücretsiz bir e-dergi girişimini daha görmek güzel. Elektronik üzerine Elektrronik dergi ismiyle yayın hayatına başlayan ve ilk sayısını bu ay yayınlayan derginin içeriği kısaca şöyle:
- Visual C#: Visual studio kurulumu ve "merhaba dünya" programın yazılması aşamaları
- Sayısal elektroniğe giriş
- News sunucusu
- PicBasic ile programlamaya giriş
- PLC (Siemens S7-200)
- Bir devre (Duvar saati)
- Otomasyon: Asenkron motorlara yıldız üçgen yol verme
- Bilim adamları: Alber Einstain
Uzun ömürlü olması dileğiyle, dergiyi çıkartan arkadaşlara başarılar diliyorum.
XXS-Proxy
XSS-Proxy gelişmiş bir XSS (Cross-Site-Scripting) saldırı aracıdır. XSS-Proxy, XSS açıklarını kullanıcının tarayıcısına enjekte etmek, saldırgan, kurban tarayıcı (browser) ve açığı bulunduran site arasında iki yönlü interaktif bir kontrol kanalı oluşturmak için kullanılabilir. Sourceforge proje sayfası http://sourceforge.net/projects/xss-proxy
myspace.com’a XSS saldırısı
Kahramanımız (“Hero”) www.myspace.com sitesinde 20 saat içinde kendisine 1 milyondan fazla arkadaş isteği gönderilmesini sağlamış. 2005 de geçekleşen bu olay Hero’nun hesabı kapatılarak sonuçlanmış. Söylediğine göre yanına popularitesi kar kalmış. XSS tekniğiyle sayfasına kendi başına yayılabilen bir javascript kodu gömmüş. XSS in birçok numarasının kullanıldığı bu uygulamaya ait tarifi hero kendi anlatıyor, buradan buyurun. Olayla ilgili o tarihlerde çıkmış haber bağlantıları şöyle:
http://www.realtechnews.com/posts/1957
http://www.betanews.com/article/CrossSite_Scripting_Worm_Hits_MySpace/1129232391
Yazan: Tankado

