⚈ Kuopassa.net

Lisää kertomuksia netistä. 摆烂

Tietoturva OpenCartissa

OpenCartin nettisivuilla on mainio ohjekirja, jossa esitetään selkeästi vaihe vaiheelta minkälaisiin toimiin kannattaa ryhtyä, jotta nettikauppaan murtautumista voi hankaloittaa. Googlettamalla hakulauseella opencart hacked voi löytää ikäviä uutisia tästä aiheesta. Monet ongelmia kokeneet verkkokauppiaat ovat ilmoittaneet kuinka heidän sivuilleen on esimerkiksi lisätty base64-koodattua koodia, tai kuinka nettikaupan ulkoasuun on ynnätty spämmilinkkejä, joita on yritetty piilottaa sullomalla ne div-elementin sisään, joka puolestaan on CSS:n avulla laitettu piiloon.

Ylläpitäjän kansion nimeäminen

Yksi helppo keino on nimetä uudelleen hallintapaneelin kansionimi. Oletuksena kaupassa on admin-niminen kansio. Sen nimen voi vaihtaa hyvin helposti.

CHMOD

Toinen keino suojata nettikaupan toimintoja on asettaa mahdollisimman tiukat CHMOD-oikeudet nettikaupan asetustiedostoihin niin varsinaisessa asiakaspuolen kaupassa kuin hallintapaneelissakin. Myös kansiossa system sijaitsevaan startup.php-tiedostoon OpenCartin dokumentaatiossa suositellaan CHMOD-oikeuksien rajoittamista. Oikeuksiksi suositellaan lukua 0444. Jos näitä CHMOD-oikeuksia säädetään, kannattaa varmistaa, että kaikki kaupan toiminnot pelaavat normaalisti.

IP-osoitteiden salliminen

Cart Advisor -blogissa on julkaistu peruskauraa OpenCartin tietoturva-asioista syyskuussa 2012. Siinä on itsestäänselvyyksiäkin, kuten OpenCartin install-kansion deletoiminen nettipalvelimelta sen jälkeen kun softa on asennettu. Mainitsemisen arvoisten kikkojen joukkoon kuuluu ylläpitäjän kansion salasanasuojaaminen ja kansion sisälmyksiin pääsemisen rajoittaminen vain tietyille IP-osoitteille. Nämä keinot voi toteuttaa .htaccess:in ja .htpasswd:n avulla, kuten myös PHP:n avulla. Ylläpitäjän kansioon pääsyn voi rajoittaa PHP-koodauksella lisäämällä esimerkiksi tällaisen koodin ylläpitäjän kansiossa olevien tiedostojen alkuun:

if ($_SERVER['REMOTE_ADDR'] != '77.105.101.67') { die; }

Tuo PHP-koodi tsekkaa josko käyttäjän IP-osoite on 77.105.101.67. Jos se ei ole se, silloin tiedostossa olevan koodin suorittaminen katkeaa siihen pisteeseen. Tai ei oikeastaan pisteeseen, vaan puolipisteeseen. Jos haluat saada vaivattomasti selville oman IP-osoitteesi vaihdettavaksi tuohon koodiesimerkkiin, etsi Googlesta hakulauseella what is my ip.

Mihin tuo PHP-koodirivi on sitten laitettava? Vastaus on: vaikka ylläpitäjän kansiossa olevaan asetus- ja indeksitiedostoon — tiedoston lähdekoodin alkuun. Esimerkiksi jos ylläpitäjän kansion nimi on admin, silloin nuo tiedostot löytyvät palvelimelta tästä suunnasta:

/admin/config.php
/admin/index.php

Muuta

Lisäksi nettikaupan asetuksista kannattaa vilkaista käyttäjäryhmiä ja miettiä mitä oikeuksia niihin kuuluville käyttäjille myönnetään. Samoin nettikaupan ulkoasusta kannattaa poistaa kaikki kohdat, joissa lukee jotain sellaista kuin "Powered by OpenCart". Samoin ylläpitäjän käyttäjätunnus ja salasana kannattaa muuttaa hölynpölyksi ja vaikkapa vaihtaa salasanaa silloin tällöin.

Tietoa kirjoittajasta