Ajankohtainen tilanne: PHP2Shell. Kaksi kriittistä PHP-haavoittuvuutta (CVSS 9.2) sallii haittakoodin suorittamisen ilman kirjautumista. Korjaukset 21.10.2026 alkaen.Mitä nyt on tehtävä →

Tietoturvatarkastus ja penetraatiotesti PHP-sovelluksille

PHP-sovellustenne ja palvelimienne riippumaton tarkistus erikoistuneiden kumppanien toimesta: sovittu laajuus, testi tunnustetuin menetelmin, ymmärrettävä raportti, uusintatesti.

Tilanne Lukuaika 3 minPalvelut

Lyhyesti: PHP-sovelluksenne penetraatiotesti osoittaa, mitä heikkouksia hyökkääjä voisi todella hyödyntää, ennen kuin kukaan tekee sen. Tarkistamme erikoistuneiden kumppanien kanssa sovelluksen ja palvelimen kirjallisesti sovitussa laajuudessa ja toimitamme raportin tärkeysjärjestykseen asetetuin toimenpitein. Korjausten jälkeen uusintatestissä tarkistamme, onko aukot suljettu.

Miksi PHP-sovellusten penetraatiotesti on järkevä

PHP2Shell on osoittanut, että jopa sovelluksen perusta, PHP itse, voi sisältää kriittisen haavoittuvuuden. Useimmat PHP-sovelluksiin kohdistuvat murrot kulkevat kuitenkin oman koodin tai konfiguraation tunnettujen heikkouksien kautta: SQL-injektio, Cross-Site-Scripting, turvattomat tiedostolataukset, heikot istunnot, vanhentuneet riippuvuudet tai avoimet ylläpitoalueet. OWASP Top 10 kokoaa nämä luokat yhteen.

Riippumaton katse ulkopuolelta löytää sen, mikä arjessa jää huomaamatta. Johdolle ja valvontaelimille se tarjoaa luotettavan perustan riskien arviointiin ja budjetin kohdentamiseen. Kehittäjille se on konkreettinen työlista.

Tarkastus vai penetraatiotesti: kumpi sopii teille?

Muoto Mitä tarkistetaan Sopii, kun
Konfiguraatiotarkastus palvelin, PHP, verkkopalvelin, pääsyt, varmuuskopiot haluatte tuntea infrastruktuurin tilan
Koodikatselmointi sovelluksen lähdekoodi tutustuen on omia kehitystöitä tai suurempia mukautuksia
Penetraatiotesti black box sovellus ulkoapäin ilman ennakkotietoa haluatte nähdä ulkopuolisen hyökkääjän näkökulman
Penetraatiotesti grey/white box sovellus testitilein tai koodin kanssa haluatte löytää rajatussa ajassa mahdollisimman paljon

Usein yhdistelmä on järkevä, esimerkiksi palvelimen konfiguraatiotarkastus yhdessä sovelluksen grey box -testin kanssa. Pelkkä black box -testi vaikuttaa realistiselta mutta kuluttaa paljon aikaa tutkimiseen. Testitilien ja rakenteen tuntemuksen avulla tarkastajat löytävät samassa ajassa yleensä enemmän heikkouksia.

Sovelluksen lisäksi kannattaa katsoa ympäristöä: mikä PHP-versio on käytössä, ovatko ylläpitokäyttöliittymät julkisesti tavoitettavissa, ovatko varmuuskopiot verkkohakemistossa, ovatko riippuvuudet ajan tasalla? Tällaiset kohdat tarkistamme tarkastuksessa mukana, koska ne painavat käytännössä usein enemmän kuin yksittäinen virhe koodissa.

Milloin on oikea ajankohta testille?

Penetraatiotesti hyödyttää eniten, kun se tehdään sovelluksen elinkaaren järkevässä kohdassa. Tyypillisiä syitä ovat:

  • ennen käyttöönottoa uudelle sovellukselle, verkkokaupalle tai asiakasportaalille
  • suurempien muutosten jälkeen, esimerkiksi uusien maksutapojen, rajapintojen tai kirjautumismenetelmien jälkeen
  • poikkeaman jälkeen, kun puhdistus ja koventaminen on tehty ja haluatte riippumattoman tarkistuksen
  • säännöllisin väliajoin, kun asiakkaat, kumppanit tai riskienhallintanne sitä edellyttävät

Testi ei ole juuri järkevä, kun tunnetut aukot ovat auki. Joka ylläpitää yhä korjaamattomia PHP-versioita, kannattaa ensin palauttaa perustila. Muuten maksaa testistä vahvistaakseen sen, mikä jo tiedetään.

Miten PHP SOS auttaa konkreettisesti?

  1. Laajuuden määrittely: Selvitämme kanssanne, mitä sovelluksia, palvelimia ja toimintoja tarkistetaan, mikä testityyppi sopii ja mikä on nimenomaisesti rajattu pois. Tuloksena on kirjallinen toimeksianto aikaikkunan ja yhteyshenkilöiden kanssa.
  2. Valmistelu: Testitilit, pääsyt testiympäristöön ja ajantasainen varmuuskopio toimitetaan. Hosting-yrityksenne informoidaan tarvittaessa, jotta testiä ei estetä todellisena hyökkäyksenä.
  3. Tarkistus: Erikoistuneet kumppanimme testaavat tunnustetuin menetelmin, muun muassa OWASP-luokkien mukaisesti. Kriittiset löydöt ilmoitamme heti, emme vasta loppuraportissa.
  4. Raportointi: Saatte raportin, jossa on johdon yhteenveto ja tekninen osuus.
  5. Uusintatesti: Korjausten jälkeen tarkistamme löydetyt heikkoudet uudelleen ja vahvistamme, mitkä on suljettu.
Vinkki

Monet löydöt voi välttää jo etukäteen. Oppaat aiheista SQL-injektio PHP:ssä, turvalliset tiedostolataukset ja istunnot PHP:ssä auttavat kehittäjiä valmistautumaan.

Mitä saatte ja mitä tarvitsemme

Raportti sisältää jokaisen löydetyn heikkouden kuvauksineen, kohteineen, riskiarvioineen ja konkreettisine korjaussuosituksineen. Johdon yhteenveto asettaa tulokset oikeaan yhteyteen ilman ammattisanastoa. Uusintatestin jälkeen saatte vahvistuksen siitä, mitkä kohdat on korjattu. Hyökkäystyökalut tai suoritettavat exploitit eivät kuulu raporttiin.

Tarvitsemme teiltä:

  • kirjallisen luvan oikeutetulta henkilöltä jokaiselle testattavalle järjestelmälle, myös silloin, kun se sijaitsee hosting-yrityksellä
  • testitilit niillä rooleilla, joita tarkistetaan
  • testiympäristön tai luvan testata tuotantoympäristössä aikaikkunan puitteissa
  • teknisen yhteyshenkilön testin ajaksi
  • koodikatselmoinnissa: pääsyn repositorioon

Mitä emme lupaa

Penetraatiotesti ei löydä jokaista aukkoa. Se on hetkikuva sovitussa laajuudessa; uudet toiminnot tai uudet haavoittuvuudet riippuvuuksissa voivat huomenna antaa toisenlaisen kuvan. Emme mainitse sertifikaatteja tai sinettejä, joita meillä ei ole, emmekä anna todistuksia, jotka korvaisivat oikeudellisia velvoitteita. Täyttääkö testi esimerkiksi NIS2-velvoitteenne, selvittäkää oikeuden ja compliancen asiantuntijoidenne kanssa.

Löytöjen korjauksen hoidamme halutessanne itse tai yhdessä toimistonne kanssa. Palvelimelle ja PHP-konfiguraatiolle sopii palvelimen koventaminen.

Usein kysytyt kysymykset

Mikä ero on tietoturvatarkastuksella ja penetraatiotestillä?

Tarkastus arvioi konfiguraatiota, prosesseja ja koodia vaatimusten ja kokemusperäisten arvojen perusteella, usein järjestelmiin tutustuen. Penetraatiotesti yrittää kohdennetusti ja luvallanne hyödyntää heikkouksia näyttääkseen niiden todellisen vaikutuksen. Ne täydentävät toisiaan.

Onko penetraatiotesti PHP-sovelluksellenikin vaarallinen?

Testi voi kuormittaa järjestelmiä tai muuttaa tietoja. Siksi laajuus, aikaikkuna ja rajat sovitaan etukäteen kirjallisesti, ja suosittelemme mahdollisuuksien mukaan käyttämään testiympäristöä. Ajantasainen varmuuskopio kuuluu aina asiaan.

Löytääkö penetraatiotesti kaikki tietoturva-aukot?

Ei. Testi osoittaa heikkoudet, jotka löytyivät sovitussa laajuudessa ja ajanjaksolla. Se on hetkikuva ja pienentää riskiä, mutta ei todista, ettei muita aukkoja ole.

Auttaako penetraatiotesti NIS2:ssa?

Tietoturvatoimenpiteiden säännölliset tarkistukset ovat tavallinen osa riskienhallintavelvoitteiden täyttämistä. Mitä vaatimuksia yritykseenne konkreettisesti sovelletaan, selvittäkää oikeuden ja compliancen asiantuntijoiden kanssa.

Lähteet

Pikayhteys

Jokainen tunti on tärkeä. Kirjoittakaa meille nyt.

Kuvatkaa lyhyesti järjestelmä, PHP-versio ja havainnot. Otamme yhteyttä, selvitämme tilanteen ja työskentelemme etänä, kunnes tapaus on käsitelty loppuun ja dokumentoitu.

Pikaapu