Bu sadece, WordPress Dosyası API'sı fikrini nasıl anladığımı açıklar . Eğer yanlışsa, lütfen aşağı oy verin :)
Tamam. Bir dosya yüklerseniz, bu dosyanın sahibine sahiptir. Dosyanızı FTP ile yüklerseniz, giriş yaparsınız ve bu dosya FTP kullanıcısına aittir. Kimlik bilgilerine sahip olduğunuzdan, bu dosyaları FTP üzerinden değiştirebilirsiniz. Sahibi genellikle dosyayı çalıştırabilir, silebilir, değiştirebilir vb. Elbette, dosya izinlerini değiştirerek bunu değiştirebilirsiniz .
PHP kullanarak bir dosya yüklerseniz, PHP'yi çalıştıran linux kullanıcısı dosyanın sahibi olur. Bu kullanıcı şimdi dosyayı düzenleyebilir, silebilir, yürütebilir vs. Sisteminizde PHP'yi çalıştıran sadece siz olduğunuz sürece bu tamamdır.
Farz edelim ki, "kötü" yapılandırılmış paylaşılan bir ana bilgisayar üzerindesiniz. Bir çok insan PHP web sitelerini bu sistemde kullanıyor. Diyelim ki sadece bir linux kullanıcısı bütün bu insanlar için PHP'yi çalıştırıyor. Bu paylaşılan ana bilgisayardaki web yöneticilerinden birinin kötü niyetli olduğu. Sayfanızı görüyor ve WordPress kurulumunuzun yolunu buluyor. Örneğin, WP_DEBUG true olarak ayarlanmıştır ve bunun gibi bir hata mesajı vardır.
[warning] /var/www/vhosts/userxyz/wp-content/plugins/bad-plugin/doesnt-execute-correctly.php on line 1
"Ha!" Kötü çocuk diyor. Bu adam belirledi eğer görelim FS_METHOD
etmek direct
ve o böyle bir senaryoyu yazıyor
<?php
unlink( '/var/www/vhosts/userxyz/wp-content/plugins/bad-plugin/doesnt-execute-correctly.php' );
?>
Yalnızca bir kullanıcı PHP kullanıyor olduğundan ve bu kullanıcı kötü çocuk tarafından da kullanıldığından, eğer onları PHP üzerinden yüklediyseniz ve sisteme sahip olan PHP kullanıcısını bağladıysanız sisteminizdeki dosyaları değiştirebilir / silebilir / çalıştırabilir.
Siteniz saldırıya uğradı.
Veya, Kodeks'te yazdığı gibi:
Pek çok barındırma sistemi, web sunucusu WordPress dosyalarının sahibinden farklı bir kullanıcı olarak çalışır. Bu durumda, web sunucusu kullanıcısından dosya yazma işlemi, gerçek kullanıcının hesabı yerine web sunucusunun kullanıcı hesabına ait sonuç dosyalarına sahip olacaktır. Bu, birden fazla kullanıcının aynı web sunucusunu farklı siteler için paylaştığı paylaşılan barındırma durumlarında güvenlik sorununa neden olabilir.