Web Programlama Dilleriyle Mac Adresi Alınamaz
-
Bu yazıyı yazma sebebim daha önce bu konuda tartışılmayacak kadar kesin olmasına rağmen bu konuda araştırma yapmadan veya bilgi sahibi olmadan bazı kişilerce web programlama dilleriyle mac adresi alınabilir gibi bir yanılgıyı bana kabul ettirmeye çalışmaları.Biliyordumki harici bir network’den mac adresi
asp,php gibi web programlama dilleriyle alınamaz.Daha fazla bu konuda gereksiz yere polemiğe girmemek için tam anlamıyla açıklama yapmaya karar verdim ve olay hakkında yanlış bilgilendirilen çevreleri aydınlatmak.
Mac adresinin asp ile alınması(yerel ağ dışında) çalıştırılabilir dosyaları (*.exe) resim dosyası (*.jpg) ile birleştirerek *.jpg dosyasına tıklayınca bilgisayarınızda
trojan çalışması kadar saçmadır.Çalıştırılabilir dosyaya tıkladığınız zaman windows loaderı devreye girer ve exe ön bilgisini okuduktan sonra program akışına
devam eder.Resim dosyasında ise ilişkili resim editörü açılır daha sonrada resim dosyasındaki özel veriler okunarak ekrana çizilir.Resim dosyasıyla çalıştırılabilir dosyayı birleştirince her zaman sonucun *.exe uzantılı çıkması bu sebepten şaşırtıcı değildir.Neyse bunu niye açıkladığıma gelirsek bu konuda da bilgisi olmadan üstüme gelenler olabileceğini şimdiden öngördüğüm için.
Şimdi asıl konumuza dönelim;
Uzaktaki bir bilgisayarın mac adresi alınabilirmi? Nasıl alabiliriz?
Evet alınabilir.Fakat ben mac adresinin asp,php gibi web programlama dilleriyle alınamayacağını savunuyorum.
Uzaktaki bir bilgisayarın mac adresini almak için ona delphi,c++,c# vs. yazdığınız bir programı göndermeli ve bilgisayarında çalışmasını sağlamalı ve aldığınız mac adresini kendinize yollamalısınız.
Diğer bir yol ActiveX bileşenini kullanmak.ActiveX bileşeni ile mac adresini alabilirsiniz.Fakat internet explorer ve diğer tarayıcılar bundan rahatsız olup
çalışmasını kullanıcının tercihine bırakacaktır.Sebep ActiveX bileşenleri ile sadece Mac adresi almak değil.Her türlü şeyi yapabilirsiniz.Sınırsız özgürlük programcının
elindedir.Porno,warez sitelerinde yayılan trojanlarda bu şekilde olmaktadır.
Web programlama dilleriyle mac adresini alabilirmiyim? (Asp,php server taraflı web dilleriyle birlikte javascriptinde güvenlik sebeplerinden böyle bir yetkisi yoktur)
Hayır alamazsınız.
Yerel ağda alınabildiğini ve bunu gören bazı kişilerin alınabildiğini sandığını biliyorum.Şimdi gelelim kilit noktalara.
Mac adresinin dünyada benzeri yoktur.Network cihazlarına tanınmaları için üretilirken verilirler.
Öncelikle lan içerisinde haberleşme ip üzerinden değil mac adresleriyle sağlanıyor.Bu sebeplede arp devreye giriyor.Eğer donanımsal router üstünden
haberleşiyorsa yine alamazsınız çünkü alınacak mac adresi üstünden geçilen routerın mac adresi olacaktır.
Arpdan bahsetmiştim.
Arp nedir?
Adres Çözümleme Protokolü.Ip adreslerinin mac adreslerini bulmayı sağlar.Lan’da haberleşme ip üzerinden değil.Mac adresleri ile sağlandığından bu
devreye girer.
Arp’dan bahsetme sebebim.Mac adresi almanın yollarından birisi olması.Gördüğünüz üzere yerel ağda işe yarıyor ve web programlama dilleriyle uzaktaki
bir pc’nin mac adresini almanız imkansız.
Çünkü kullandığımız TCP/IP protokolünde yalnızca ip adresi kullanıldığı için web programlama dilleriyle böyle bir istekte bulunamayız.
Gelelim ikinci meşhur yönteme.Millet bunun asp kodunu görünce.Uzaktaki pcnin mac adresinin alınabileceğini zannediyor.Ama avcunu yalıyor.Ayıptır söylemesi.
Hatta o meşhur asp kodundan bir örnekte ben sunayım.
<%@ LANGUAGE="VBSCRIPT"%><%
strIP = Request.ServerVariables("REMOTE_ADDR")
strMac = GetMACAddress(strIP)
strHost = Request.ServerVariables("REMOTE_HOST")
function GetMACAddress(strIP)
Set net = Server.CreateObject("wscript.network")
Set sh = Server.CreateObject("wscript.shell")
sh.run "%comspec% /c nbtstat -A " & strIP & " > c:\inetpub\wwwroot\" & strIP & ".txt",0,true
Set sh = nothing
Set fso = createobject("scripting.filesystemobject")
Set ts = fso.opentextfile("c:\inetpub\wwwroot\" & strIP & ".txt")
macaddress = null
Do While Not ts.AtEndOfStream
data = ucase(trim(ts.readline))
if instr(data,"MAC ADDRESS") Then
macaddress = trim(split(data,"=")(1))
Exit Do
End if
loop
ts.close
Set ts = nothing
'fso.deletefile "c:\inetpub\wwwroot\" & strIP & ".txt"
Set fso = nothing
GetMACAddress = macaddress
End function
%>
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<%Response.Write("Your IP is : " & strIP & "<BR>" & vbcrlf)%>
<%Response.Write("Your MAC is : " & strMac & vbcrlf)%>
</BODY>
</HTML>
Nbtstat –A
Gördüğünüz üzere kodda nbtstat –A yazıyor ve sonra dökümü dosyaya kaydediliyor.
Nbtstat nedir?
Mevcut TCP/IP bağlantılarını protokol istatistiklerini NBT (Net Bios Over TCP/IP) 'yi kullanarak gösterir.
Nasıl kullanırız?
Birçok parametresi var.Burada sadece ilk ikisi bizi ilgilendiriyor.
nbtstat –A ipadresi
-A Nedir?
İsmi verilen karşı bilgisayarın isim tablo'sunu verir.
Nbtstat’ı çalıştırınca bu konuda bilginiz olmasa bile mevzu ortaya çıkıyor.Orada kocaman “local area connection” yazıyor.
Test edilince.Yerel ağdaki bir bilgisayarın ip adresini yazınca mac adresi dönerken.Harici bir networkdeki bilgisayarın ip adresi adresini yazdığınızda
“Host not found” sizi karşılayacak.
Yani client’ın mac adresini web diliyle almakta bu da bir işe yaramıyor.
Mac adresini sadece
-Yerel bilgisayardan.
-Yerel ağdaki herhangi bir bilgisayardan
alabilirsiniz.
Mac adresi kişiye özeldir ve dünyada başka örneği yoktur.Bu yüzden harici networklerle paylaşılmasıda sakıncalıdır.
Bu iki şekilde yerel ağdaki mac adresleri web programlama dilleriyle alınabiliyor.Fakat dediğim gibi sitemize gelen bir adamın mac adresini asp,php gibi
web dilleriyle alamazsınız.ActiveX bileşenlerini kullanmak yada bunun için bir program yazıp adamın bilgisayarında çalıştırmalı ve mac adresini alıp
kendinize yollatmalısınız.
Açıklayacaklarım bu kadar.
Bu yazıyı bile okumadan bana soru soracak mal insanlara soru ve cevaplar.
Soru: FireX alınıyormuş öyle duydum.
Cevap: Her duyduğuna inanıyormusun? Araştırma yaptınmı bir kere?
Soru: FireX Nasıl alınmıyor siteye giremiyorum mac ban çakmışlar.
Cevap: Adamların sitesinden program yükler bağlanırsan veya bilgisayarında ActiveX bileşenlerini çalıştırmana izin verdiysen alırlar tabi.O kadar şeyi
yaptırdıysan dua etki şifrelerinide götürmesinler.
Soru: FireX Al sana asp,php,bilmemne kodu alınıyor işte.
Cevap: Üste bakmayı denedin mi? Onların kullandığı hizmetler yerel ağda işe yarıyor.
Soru: FireX alınıyor kesin alınıyor duydum.Amcamınoğlu aldı.
Cevap: BSG aq Bu sitede mac adresini alıyor bir gözat. www.nolur.com
Soru:FireX bu kadarı yeterli değil.Biraz daha bilgi lazım.
Cevap: Ben bu konuda sunulabilecek her türlü şeyi yazdım.Herkesi tatmin edecek kadar vaktim yok.Tatmin olmuşun olmamışın skimde değil.
Hiç Google’da araştırma yapmayı denedin mi?
Biraz araştırın.Kulaktan dolma bilgilerle iş yapmayın.Doğru bildiğim şeyi yanlış diye bana kabul ettirmeye çalışanlara yazılmıştır.Saygılar.. -
bilgi için sağol :)
-
dokumanlara da ekleseydin FireX eline saglik cok guzel yazmissin.
-
yalnız exe lerin jpg dosyalarına tıklayınca açılması çok saçma değil bakınız zamanında windowsun hatasından kaynaklanan jpg downloaderlardan biri:atmaca jpg downloader :D..
Bu arada teşekkürler firex abi güzel yazı.
-
Sağolun yorumlar için.Artık şu mevzuyu anlatmaktan illallah geldi.Milletimiz araştırmadan kulaktan dolma şeylerle geliyor.Üstüne birde bunu bana kabul ettirmeye çalışmaları beni çok sinirlendiriyordu.Bugün birisiyle daha aynı konuyu msnde tartışınca sabır taştı.
-
ellerine sağlık hoca güzel döküman :) ama sorun var antioksidan alıyomus mac adresini :D
-
TorNaVida bunu yazdı:
-----------------------------
ellerine sağlık hoca güzel döküman :) ama sorun var antioksidan alıyomus mac adresini :D
-----------------------------
Antioksidanla bugün görüştüm zaten.Şu anda yok ortada gelince oda görecek bu başlığı.En başta ona hediyemdir :) -
çok açıklayıcı firex. teşkürler
-
Tayok bunu yazdı:
-----------------------------
yalnız exe lerin jpg dosyalarına tıklayınca açılması çok saçma değil bakınız zamanında windowsun hatasından kaynaklanan jpg downloaderlardan biri:atmaca jpg downloader :D..Bu arada teşekkürler firex abi güzel yazı.
-----------------------------
Söylediğin şey eski windows sürümlerinde işe yarıyor.3. parti uygulamalarda kullanılan gdi çizim kütüphanesindeki exploit.Buffer overflow mantığı.Shell kodu ile önceden verilen dizindeki exeyi çalıştırıyor.Çalıştırılabilir dosya resim dosyasıyla birleşik değil. -
edited
not: fireks ak : D
-
konu up lamanın bokunu çıkardığımı, ve siteyi uzun zamandır ziyaret etmeyn müridin konusuna yazdığımı bilmekle birlikte çok güzel bir döküman olduğu için bu mesajı yazmadan edemiycem.
çünkü az daha o kodları bende deniycektim :D
bu konuda bir çok kişiyi aydınlatacak bir bilgi.
acaba bunu asp.net ile yapabilirmiyiz ki ? o çok daha fonksiyonel bir dil sonuçta.
