Īsi sakot: IT inventārs tīmekļa serveriem ir saraksts ar visām vietnēm, portāliem, veikaliem un serveriem, kurā ir dati, kas drošības ziņojuma gadījumā vajadzīgi uzreiz: kur tas darbojas, ar kādu PHP versiju un darbināšanas veidu, kāda lietojumprogramma, kas ir atbildīgs un kuri dati būtu skarti. Bez šī saraksta katra reakcija sākas ar meklēšanu. Ar to salīdzināšana pēc tādiem ziņojumiem kā PHP2Shell aizņem minūtes, nevis dienas.
Pirmais jautājums bija: kur pie mums vispār darbojas PHP?
Kad PHP projekts 2026. gada 21. oktobrī publicēja ielāpus un BSI (Vācijas Federālais informācijas drošības birojs) ieteica nekavējoties rīkoties, norādījums bija skaidrs: atjaunināt PHP, pārstartēt visus procesus. Daudziem uzņēmumiem pirmais solis tomēr nebija atjauninājums, bet inventarizācija. Galvenā vietne bija zināma. Bet tirgotāju portāls? Karjeras lapa pie cita pakalpojumu sniedzēja? Kampaņas vietne, kas izveidota pirms trim gadiem? Iekšējā wiki?
Specializētā prese un mērījumu pakalpojumi ir parādījuši problēmas apmēru. Palo Alto Networks (Unit 42) saskaitīja vairāk nekā 22,6 miljonus pieejamu, potenciāli ievainojamu instanču. Starp tām, domājams, ir daudz sistēmu, par kurām to uzturētāji vienkārši vairs nedomā.
Kas jāiekļauj IT inventārā tīmekļa serveriem
Noderīgs inventārs ir tabula ar vienu rindu katrai vietnei vai lietojumprogrammai. Šīs kolonnas ir sevi pierādījušas:
| Kolonna | Piemērs | Kam |
|---|---|---|
| Adrese | shop.beispiel.de | viennozīmīga piesaiste |
| Mērķis un nozīme | interneta veikals, kritisks apgrozījumam | prioritāšu noteikšana |
| Hostinga pakalpojumu sniedzējs vai atrašanās vieta | pārvaldīts serveris pie pakalpojumu sniedzēja X | kam zvanīt |
| Serveris un operētājsistēma | vServer, Debian | atjaunināšanas ceļš, drošības avoti |
| Tīmekļa serveris un PHP darbināšanas veids | Nginx ar PHP-FPM | risks, piem., mod_php |
| PHP versija un pakotnes stāvoklis | 8.3, pakotne ar datumu | salīdzināšana ar ziņojumiem |
| Lietojumprogramma un versija | Shopware, spraudņi | ražotāju paziņojumi |
| Atbildīgais uzņēmumā / ārpus tā | IT vadītājs / aģentūra Y | kas rīkojas |
| Apstrādātie dati | klientu konti, pasūtījumi | ziņošanas pienākumi, steidzamība |
| Rezerves kopijas | katru dienu, ārpus uzņēmuma, pēdējā pārbaude: … | atjaunošana |
| Pēdējais ielāpa apliecinājums | datums un pierādījums | apliecinājums trešajām personām |
Darbināšanas veids pelna īpašu uzmanību. Pie PHP2Shell PHP komanda augstāko risku novērtēja Apache ar mod_php gadījumā. Kas zina, kuras sistēmas tā darbojas, tās var risināt vispirms. Kolonna par pakotnes stāvokli ir svarīga, jo parādītais versijas numurs pēc atpakaļportēšanas (backport) bieži paliek nemainīgs; norādes ir sadaļā PHP versijas un ielāpa stāvokļa pareiza pārbaude.
Aizmirsto sistēmu atrašana: kā rīkoties
Zināmās sistēmas ieraksta ātri. Īstais darbs ir nezināmās. Šie avoti palīdz tās atrast:
- Domēni un DNS: Izskatīt visus uzņēmuma domēnus un to apakšdomēnus. Katrs ieraksts, kas norāda uz tīmekļa serveri, ir kandidāts.
- Rēķini: Grāmatvedībai ir zināms katrs hostinga pakalpojumu sniedzējs, reģistrators un mākoņpakalpojumu sniedzējs, kas saņem naudu. Tas bieži ir pilnīgākais saraksts.
- Aģentūras un nodaļas: Mārketings, pārdošana un personāla nodaļa vietnes labprāt pasūta tieši. Pajautājiet.
- Zināmie serveri: Katrā serverī konfigurācija parāda, kuras vietnes tas faktiski nodrošina.
-
Ierīces ar tīmekļa saskarni: NAS, maršrutētāji un iekārtas (appliances) dažkārt nes līdzi savu PHP, skatiet PHP NAS, maršrutētājos un iekārtās.
-
solim Linux serveros palīdz vairākas tikai lasošas komandas. Tās parāda konfigurētās vietnes, PHP pakalpojumus un FPM baseinus:
# Konfigurētās vietnes (Apache vai Nginx)
apachectl -S 2>/dev/null
nginx -T 2>/dev/null | grep -E "^\s*server_name" | sort -u
# Darbojošies PHP pakalpojumi un procesi
systemctl list-units --type=service | grep -iE "php|fpm|lsws|litespeed"
ps -eo user,cmd | grep -E "php-fpm|php-cgi|lsphp" | grep -v grep | sort | uniq -c
# FPM baseini Debian un Ubuntu sistēmās
ls /etc/php/*/fpm/pool.d/ 2>/dev/null
Ja serverī līdzās darbojas vairākas PHP versijas, katra jāiekļauj sarakstā. Katra jāatjaunina un jāpārstartē atsevišķi.
Ierakstiet arī sistēmas, kuras patiesībā būtu jāizslēdz. Tieši tās bieži joprojām darbojas, gadiem nav atjauninātas un tiek aizmirstas. Ar ierakstu „izslēgt līdz …“ uzdevums paliek redzams.
Inventāra uzturēšana aktuālā stāvoklī
Inventārs ir tik labs, cik pēdējais atjauninājums. Trīs noteikumi to uztur dzīvu. Pirmkārt: viena persona ir atbildīga, un viņu informē par katru jaunu vietni, katru pārcelšanu un katru izslēgšanu, arī ja darbu veic aģentūra. Otrkārt: reizi ceturksnī saraksts tiek salīdzināts ar DNS, rēķiniem un serveru konfigurāciju. Treškārt: inventārs ir daļa no ārkārtas rīcības plāna, un tas ir pieejams arī ārpus uzņēmuma paša IT, piemēram, izdrukāts.
Uzņēmumiem ar daudzām izkliedētām sistēmām, piemēram, tirgotāju portāliem, konfiguratoriem un piegādātāju piekļuvēm, tipiskas atrašanās vietas apraksta IT drošība vidējiem uzņēmumiem un rūpniecībai. Kā inventāru iekļaut ārkārtas rīcības plānā, lasiet sadaļā IT ārkārtas rīcības plāna izveide tīmekļa serveriem.
Biežākās kļūdas tīmekļa serveru inventārā
Daudzi inventāri pastāv, bet ārkārtas situācijā nepalīdz. Cēloņi ir līdzīgi:
- Tikai serveri, bez vietnēm: Sarakstā ir mašīnas, bet nav norādīts, kuras vietnes uz tām darbojas un kas par tām atbild no satura puses. Nepilnības gadījumā neviens nezina, kura nodaļa ir skarta.
- Versija pakotnes stāvokļa vietā: „PHP 8.3“ pēc PHP2Shell nozīmē maz. Tikai pakotnes stāvoklis un datums parāda, vai labojums ir iekļauts.
- Trūkst ārējo sistēmu: Kas darbojas pie aģentūras vai platformas pakalpojumu sniedzēja, tiek izlaists, jo „tur mēs neesam atbildīgi“. Atbildība par datiem tomēr paliek uzņēmumā.
- Nav kontaktpersonu: Ieraksts bez atbildīgās vietas vārda un tālruņa numura ārkārtas situācijā zaudē laiku.
- Vienreizēja akcija: Inventārs tiek izveidots krīzes nedēļā un pēc tam nekad netiek atvērts. Pēc gada ievērojama daļa vairs neatbilst patiesībai.
Kas izvairās no šiem pieciem punktiem, tam nākamajā ziņojumā ir saraksts, ar kuru tiešām var strādāt.
Kā PHP SOS palīdz konkrēti?
- Mēs kopā ar jums uzskaitām visas vietnes un serverus, arī aizmirstos, izmantojot DNS, rēķinus, pakalpojumu sniedzējus un serveru konfigurāciju.
- Mēs katrai sistēmai noskaidrojam darbināšanas veidu, PHP versiju un faktisko pakotnes stāvokli.
- Mēs sistēmas prioritizējam pēc sasniedzamības, datiem un darbināšanas veida un sakām, kur jārīkojas vispirms.
- Kur PHP2Shell vēl ir atvērts, mēs nepilnību aizveram ar PHP2Shell tūlītējo palīdzību un ierakstām apliecinājumu inventārā.
Secinājums: Inventārs ir visnepamanāmākais un reizē visefektīvākais drošības pasākums. Kas zina, kas darbojas, nākamajā ziņojumā var rīkoties uzreiz, nevis vispirms meklēt.
Biežāk uzdotie jautājumi
Kādi dati inventāram tīmekļa serveriem ir vismaz nepieciešami?
Vietnes adrese, serveris vai hostinga pakalpojumu sniedzējs, PHP darbināšanas veids, PHP versija ar pakotnes stāvokli, lietojumprogramma ar versiju, atbildīgā persona uzņēmumā un ārpus tā, apstrādāto datu veids un rezerves kopiju atrašanās vieta. Ar šiem datiem katru jaunu drošības ziņojumu var ātri salīdzināt.
Kā atrast vietnes, par kurām neviens vairs nezina?
Vairākos veidos vienlaikus: domēnu pārvaldība un DNS zonas, hostinga pakalpojumu sniedzēju un reģistratoru rēķini, jautājumi aģentūrām un nodaļām, kā arī zināmo serveru konfigurācija. Vecās kampaņu lapas, testa sistēmas un apakšdomēni šādi parasti atklājas.
Kam jāuztur inventārs?
Nozīmētai personai, parasti IT nodaļā vai pie IT vadītāja. Svarīgi, lai tur tiktu ziņots par katru izmaiņu vietnēs un serveros, arī ja to ierosinājusi nodaļa vai aģentūra.
Vai pietiek ar tabulu vai vajadzīga programmatūra?
Lielākajai daļai vidējo uzņēmumu pietiek ar labi uzturētu tabulu. Programmatūra atmaksājas, ja daudzas sistēmas jāuzskaita automātiski. Izšķirošs ir aktualitātes līmenis, nevis rīks.