Remote Code Execution (RCE) Güvenlik Açığı

Bunjo

Uzman üye
14 Ara 2020
1,594
27
1,896
Faraday
2q250vr.png
lbn20fm.png


ro3fzuc.png


Merhaba ben Anka timden Bunjo, bu konuda "Remote Code Execution" web açığını ele alacağım.

iwxqmay.png


Remote Code Execution

Remote Code Execution (Uzaktan Kod Yürütme), genellikle RCE olarak kısaltılan bir bilgisayar güvenliği terimidir.
Bu terim, bir saldırganın uzaktan bir bilgisayar sistemine yetkisiz erişim sağlayarak, kendi kötü amaçlı kodlarını hedef sistemde çalıştırmasını ifade eder.

RCE saldırıları, genellikle yazılım güvenlik açıkları veya zayıflıkları kullanılarak gerçekleştirilir. Saldırganlar, hedef sistemdeki
bir uygulama veya servise müdahale ederek, kendi kötü amaçlı kodlarını enjekte ederler. Bu kodlar daha sonra hedef sistemde çalıştırılır,
bu da saldırganın uzaktan kontrol sağlamasına ve istediği eylemleri gerçekleştirmesine olanak tanır.


Pratik






Siteye girdiğimiz zaman bizden bir input alıyor, eğer bu inputa filtreleme işlemi yapılmamışsa,
çalıştırmamız gerek kodu çalıştırırken yanında dilediğimiz kodu da enjekte edebiliriz.




"|" ile çalıştırmak istediğimiz komutu ekliyoruz. (bizden zorunlu istenilen inputu bazen boş bıraksanız da kodunuzu çalıştırabilirsiniz.)







Rich (BB code):
www.nsa.gov | ls


Bu şekilde "ls" komutu gönderdik ve komut çalıştı, şimdi ise sunucudan shell almaya çalışalım.



Shell için bu siteyi kullanabilirsiniz. pentestmonkey





Local ağ içerisinde olduğum için istediğim port üzerinden dinleme işlemine başlıyorum.



Seçtiğim shell için kendi ip adresimi ve dinlemeyi başlattığım portu veriyorum.






Bağlantıyı kaptık ;)





Not:


Python:
python -c 'import pty;pty.spawn("/bin/bash")'


bu kodu interaktif bir shell almak için kullandım, bazen bu kod işe yarayamıyor bunun içinde farklı bir varyasyonunu kullanabilirsiniz.



Python:
python -c 'import os; os.execl("/bin/sh", "sh", "-p")'


Kısaca "Remote Code Execution" zafiyetinden bahsettim, siz başka pratikler de yaparak öğrenme sürecinizi destekleyebilirsiniz.


Okuyan herkese teşekkür ederim.
 

tamam ağa

Uzman üye
7 Haz 2023
1,534
13
876
Konuda zafiyetin nasıl oluştuğunu anlatsaydın daha faydalı olabilirdi.

Kullandığın scripti bilmiyorum hiç kullanmadım lakin PHP'deki exec benzeri bir fonksiyon üzerinden ping komutunu çalıştığını varsayıyorum.

Buradaki yapılan hata linux/Unix sistemlerden kaçış dizilerinin engellenmiyor olmasından kaynaklanıyor.

Peki nedir bu kaçış dizeleri?
Devamını yazmaya üşendim şuradan bakabilirsiniz

Bu tür zafiyetleri engellemek için exec gibi fonksiyonlara direk girdi vermeyin, regex fonksiyonlarından yararlanıp bu karakterleri temizleyin.
 

Butcherb3y

Uzman üye
1 Eyl 2022
1,617
7
1,199
Anıtkabir
2q250vr.png
lbn20fm.png


ro3fzuc.png


Merhaba ben Anka timden Bunjo, bu konuda "Remote Code Execution" web açığını ele alacağım.

iwxqmay.png


Remote Code Execution

Remote Code Execution (Uzaktan Kod Yürütme), genellikle RCE olarak kısaltılan bir bilgisayar güvenliği terimidir.
Bu terim, bir saldırganın uzaktan bir bilgisayar sistemine yetkisiz erişim sağlayarak, kendi kötü amaçlı kodlarını hedef sistemde çalıştırmasını ifade eder.

RCE saldırıları, genellikle yazılım güvenlik açıkları veya zayıflıkları kullanılarak gerçekleştirilir. Saldırganlar, hedef sistemdeki
bir uygulama veya servise müdahale ederek, kendi kötü amaçlı kodlarını enjekte ederler. Bu kodlar daha sonra hedef sistemde çalıştırılır,
bu da saldırganın uzaktan kontrol sağlamasına ve istediği eylemleri gerçekleştirmesine olanak tanır.


Pratik






Siteye girdiğimiz zaman bizden bir input alıyor, eğer bu inputa filtreleme işlemi yapılmamışsa,
çalıştırmamız gerek kodu çalıştırırken yanında dilediğimiz kodu da enjekte edebiliriz.




"|" ile çalıştırmak istediğimiz komutu ekliyoruz. (bizden zorunlu istenilen inputu bazen boş bıraksanız da kodunuzu çalıştırabilirsiniz.)







Rich (BB code):
www.nsa.gov | ls


Bu şekilde "ls" komutu gönderdik ve komut çalıştı, şimdi ise sunucudan shell almaya çalışalım.



Shell için bu siteyi kullanabilirsiniz. pentestmonkey





Local ağ içerisinde olduğum için istediğim port üzerinden dinleme işlemine başlıyorum.



Seçtiğim shell için kendi ip adresimi ve dinlemeyi başlattığım portu veriyorum.






Bağlantıyı kaptık ;)





Not:


Python:
python -c 'import pty;pty.spawn("/bin/bash")'


bu kodu interaktif bir shell almak için kullandım, bazen bu kod işe yarayamıyor bunun içinde farklı bir varyasyonunu kullanabilirsiniz.



Python:
python -c 'import os; os.execl("/bin/sh", "sh", "-p")'


Kısaca "Remote Code Execution" zafiyetinden bahsettim, siz başka pratikler de yaparak öğrenme sürecinizi destekleyebilirsiniz.


Okuyan herkese teşekkür ederim.
Elinize sağlık hocam
 

Bunjo

Uzman üye
14 Ara 2020
1,594
27
1,896
Faraday
Konuda zafiyetin nasıl oluştuğunu anlatsaydın daha faydalı olabilirdi.

Kullandığın scripti bilmiyorum hiç kullanmadım lakin PHP'deki exec benzeri bir fonksiyon üzerinden ping komutunu çalıştığını varsayıyorum.

Buradaki yapılan hata linux/Unix sistemlerden kaçış dizilerinin engellenmiyor olmasından kaynaklanıyor.

Peki nedir bu kaçış dizeleri?
Devamını yazmaya üşendim şuradan bakabilirsiniz

Bu tür zafiyetleri engellemek için exec gibi fonksiyonlara direk girdi vermeyin, regex fonksiyonlarından yararlanıp bu karakterleri temizleyin.
Önerin için teşekkür ederim, açtığım yeni konuda yer verdim.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.