Suhosinin loppu; Mitä seuraavaksi??
Monien vuosien ajan, Olen innokkaasti käyttänyt Suhosin kaikilla PHP5-toteutuksilla Apache2- tai PHP-FPM Nginx -verkkopalvelimilla puolustautuakseen SQL-injektiolta ja muilta yleisiltä verkkohyökkäyksiltä. Itse asiassa, PHP5 oli niin tuhoisa, sekä ydinturvallisuuden kannalta, ja sen toiminnot ja moduulit, joita en olisi koskaan voinut kuvitella käyttäväni sitä ilman merkittävää kovettumista, jonka Suhosin tarjoaa.
Koska PHP5 on poistettu ja vanhat ohjelmani ovat kaikki poissa, Minulla on jäljellä useita PHP7-toteutuksia eikä käytettävissä olevia Suhosin-korjaustiedostoja.
Vaikka, on edelleen teknisesti mahdollista lisätä Suhosin PHP: hen 7.0 ja 7.1 (Pre-Alpha – ei tuotantoon), on reilua sanoa, että projekti on jo kauan ollut poissa ja PHP7 on jo osoittanut, että se voi olla hankalaa kuin se olisi edeltäjänsä. Kun ajattelen uutta lisäystä WAF: ään ja PHP7: n ydinturvallisuuteen, nämä ovat joitain ratkaisuja, jotka tulin mukana:
Huonojen tai tarpeettomien toimintojen poistaminen käytöstä
PHP: n sisälle on rakennettu monia riskialttiita toimintoja, jotka ovat mahdollisesti vaarallisia ja jotka tulisi oletusarvoisesti poistaa käytöstä php.ini: n sisällä. Löydät määritystiedoston alla olevalla komennolla ja poista toiminnot käytöstä vi: n tai nanon kautta.
php -i | grep "php.ini"
HUOMAATHAN: Jos käytät useita PHP-versioita samanaikaisesti tai ohjelma asennetaan osana toista kolmannen osapuolen sovellusta, Sitten on suuri mahdollisuus, että sinulla on useita 'PHP-.ini' asennettuna, eikä ole selvää, minkä verkkopalvelin lataa. Varmista, että muokkaat oikeaa versiota (php -v).
Lisää alla oleva rivi php.ini tiedoston loppuun, Varmista, että olet tallentanut tiedoston, ja käynnistä verkkopalvelin uudelleen. Voit oppia jokaisesta näistä PHP-toiminnoista tässä osoitteessa. Mitattuna toimena, Haluat ehkä lisätä ne yksitellen varmistaaksesi, että se ei vaikuta negatiivisesti sovelluksiisi.
disable_functions = popen, eval, leak, exec, shell_exec, curl_exec, curl_multi_exec, parse_ini_file, mysql_connect, system, phpinfo, escapeshellarg, escapeshellcmd, passthru, symlink, show_source, mail, sendmail, proc_open, proc_nice, proc_terminate, proc_get_status, proc_close, pfsockopen, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid
Register Globalsin ja Base64:n poistaminen käytöstä
Register Global on PHP: n toiminto, jonka avulla URL-osoitteen syöttötaulukot voidaan muuntaa muuttujaksi koodisi sisällä. Siksi, Hyökkääjä voi hyödyntää mitä tahansa mahdollisesti haavoittuvaa koodia, joka voi välittää haitallisia taulukoita HTTP GET- tai POST-pyyntöjen avulla.
Register Globals voidaan helposti poistaa käytöstä lisäämällä alla oleva rivi 'php.ini' loppuun. Älä unohda käynnistää verkkopalvelinta uudelleen muutosten suorittamiseksi.
register_globals = Off
Aivan kuten Register Globals, Base64 on toinen usein tarpeeton ominaisuus, joka avaa oven haitallisiin takaoviin. Voit poistaa Base64-dekooderin käytöstä pysyvästi lisäämällä alla olevan rivin php.ini: n loppuun.
base64_decode = Off
Post Disclaimer
The views, information, or opinions expressed are solely those of the author and do not necessarily represent those of his employer or the organizations with which he is affiliated.
The information contained in this post is for general information purposes only. The information is provided by Farhad Mofidi and while he strives to keep the information current and accurate, he does not make any representations or warranties of any kind, express or implied, regarding the completeness, accuracy, reliability, suitability or availability of the website. Farhad makes no representations or warranties. or any information, products or related graphics contained in any Post for any purpose.
Also, AI may be employed as a tool to provide suggestions and improve some of the contents or sentences. The ideas, thoughts, opinions, and final products are original and human-made by the author.