# Malwarescannere til websites: Hvad de finder, og hvad ikke

> Malwarescanner til websites: Hvad eksterne scannere, plugin-scannere og serverscannere genkender, hvor grænserne går, og hvorfor intet fundet ikke betyder rent.

Kilde: https://phpsos.de/da/blog/grenzen-von-malware-scannern/  
Status: 25.10.2026  
Udbyder: PHP SOS, PHP-nødhjælp og serversikkerhed. Akut hjælp på WhatsApp: https://wa.me/491736494914?text=Hej%20PHP%20SOS%2C%20vi%20har%20brug%20for%20hj%C3%A6lp%20med%20vores%20PHP-server.%20Firma%3A%20%E2%80%A6%20Website%3A%20%E2%80%A6

**Kort sagt:** En malwarescanner til websites finder først og fremmest kendte mønstre i filer eller i den leverede side. Ny og tilsløret kode, bagdøre i databasen, fremmede konti, cronjobs og SSH-nøgler forbliver ofte usynlige. "Intet fundet" betyder derfor ikke "rent". En kontrol bliver først pålidelig gennem kombinationen af scanner, afstemning med originalen, kontrol af database og system samt adfærdsovervågning.

## Den bedragelige ro efter det grønne flueben

Efter PHP2Shell har mange driftsansvarlige gjort det, der ligger lige for: kørt en scanner. En onlinetjeneste kontrollerer forsiden, et sikkerhedsplugin gennemsøger webmappen, resultatet er grønt. Dermed synes spørgsmålet om, hvorvidt der skete noget før patchen, besvaret.

Problemet ligger i princippet. De fleste scannere sammenligner indhold med mønstre fra kendt skadelig software. For sårbarhederne CVE-2026-109618 og CVE-2026-109619 findes der imidlertid ingen offentliggjorte, bekræftede indicators of compromise; genkendelsen beror på adfærdsanalyse. En scanner kan ikke søge efter spor, som ingen kender. I bedste fald finder den generel skadelig software, der blev indlæst efter et indbrud, såfremt den følger kendte mønstre.

Det gør ikke scannere værdiløse. Det betyder blot, at deres resultat skal indordnes rigtigt. Hvilke tegn der tæller ud over scannere, beskriver [Er jeg allerede kompromitteret?](https://phpsos.de/da/php2shell/bin-ich-gehackt-anzeichen/).

## Malwarescannere til websites: tre konstruktionstyper

| Type | Hvad den ser | Hvad den ikke ser |
|---|---|---|
| Ekstern scanner (onlinetjeneste) | leverede sider, indbundne scripts, omdirigeringer, spærrelister | filer, database, konti, alt det, der kun leveres under betingelser |
| Scanner i CMS'et (plugin eller udvidelse) | filer i webmappen, til dels databaseindhold, afstemning med kernefiler | systemniveau, cronjobs, SSH; kører i det muligvis kompromitterede system |
| Scanner på serveren (signaturbaseret) | alle læsbare filer, også uden for webmappen | ukendte og tilslørede mønstre, database, konti, adfærd |

Eksterne scannere er nyttige til at genkende synlige følger, f.eks. omdirigeringer eller poster på spærrelister. Mange hacks leverer dog kun deres spam- eller omdirigeringsindhold til bestemte besøgende, for eksempel søgemaskiner eller mobile enheder. Scanneren ser så en ren side.

Scannere i CMS'et har mere indblik, men et principielt problem: De kører i det samme system, som de skal kontrollere. Kode med tilstrækkelige rettigheder kan påvirke deres resultater, skjule filer eller deaktivere scanneren. Serverscannere arbejder uden for applikationen, men er stadig henvist til mønstre.

## Hvad scannere principielt overser

Uafhængigt af typen findes der områder, som en fil- eller sidescanner knap kan dække:

1. **Ny eller individuelt tilsløret kode:** Hver variant, der ser anderledes ud end kendte mønstre, slipper igennem.
2. **Databasen:** Scripts i indhold, ændrede indstillinger, triggere og fremmede konti. Mere herom under [Kontrollér databasen for indsmuglet kode](https://phpsos.de/da/blog/datenbank-auf-schadcode-pruefen/).
3. **Adgange:** ekstra adminkonti, SSH-nøgler, databasebrugere, konti i hostingpanelet.
4. **Systemtjenester og cronjobs:** Mekanismer, der med jævne mellemrum indlæser skadelig kode påny.
5. **Upåfaldende ændringer i legitime filer:** en eneste ekstra linje i en kernefil, der ser harmløs ud.
6. **Udstrømmede data:** Om adgangsdata eller kundedata er kopieret, viser ingen scanner.

## Hvad der i stedet skaber vished

Mere sikkerhed giver kombinationen af kontroltyper, der arbejder forskelligt:

- **Afstemning med originalen:** Den finder enhver ændring af kendte filer, uafhængigt af mønstre. Fremgangsmåden beskriver [Sammenlign CMS-kernefiler med originalen](https://phpsos.de/da/blog/cms-kerndateien-vergleichen/).
- **Målrettet søgning efter påfaldende forhold:** PHP-filer i upload-mapper, nyligt ændrede filer, tilsløret kode, eksekverbare filer i midlertidige mapper.
- **Kontrol af konti og systemtjenester:** Sammenlign brugere, nøgler, cronjobs og tjenester med den kendte målstilstand.
- **Loganalyse:** Forespørgsler til ukendte filer, ophobninger af fejl, usædvanlige logins.
- **Adfærdsovervågning:** Webserverens processer, der starter en shell, uventede udgående forbindelser, nye filer i følsomme mapper.

Den sidste kategori er den vigtigste, når der ikke findes kendte spor. Den spørger ikke, hvordan skadelig kode ser ud, men hvad den gør. En webserverproces, der pludselig starter en shell, falder i øjnene, uanset hvordan den udløsende kode er tilsløret.

> **Tip:**
> Lad en serverscanner køre fra et rent system over en skrivebeskyttet kopi i stedet for på den mistænkelige server selv. Så kan indsmuglet kode ikke påvirke resultatet.

## Sådan bruger I scannere fornuftigt

Scannere har deres plads, som ét værktøj blandt flere. En ekstern scanner egner sig som regelmæssig kontrol af de synlige følger, f.eks. ugentligt. En scanner i CMS'et melder i hverdagen kendt skadelig software og ændrede kernefiler. En serverscanner supplerer søgningen efter kendte mønstre i hele filsystemet.

Afgørende er omgangen med resultatet. Et fund er en klar kontrolopgave og berettiger en fuldstændig undersøgelse, fordi det sjældent kun er én fil, der er berørt. Et tomt resultat er derimod kun et udsagn om de kontrollerede mønstre. Notér i jeres dokumentation, hvilken scanner der hvornår er kørt med hvilken tilstand, og skriv ikke "system rent", men "ingen kendte mønstre fundet".

For ledelsen betyder det: Et grønt flueben erstatter ikke en kontrol foretaget af en person, der betragter filer, database, konti og adfærd samlet. Efter en hændelse med mulig kodeudførelse, som det er tænkeligt ved PHP2Shell, bør den kontrol finde sted.

Melder en scanner derimod et fund, kræves hurtig, men ordnet handling. Slet ikke den meldte fil med det samme via scannerens funktion. Sikr først fil og logs, så det kan afklares, hvordan den kom på serveren. Hvordan en fuldstændig oprydning forløber, beskriver ydelsen [Lad malware og webshells fjerne](https://phpsos.de/da/leistungen/malware-entfernung/).

## Hvordan hjælper PHP SOS konkret?

- Vi kombinerer scannere med afstemning mod originalen, målrettet søgning og analyse af konti, tjenester og logs.
- Vi kontrollerer mistænkelige systemer via sikrede kopier, så resultater ikke påvirkes af det kompromitterede system.
- Vi mærker hvert resultat ærligt som dokumenteret, sandsynligt eller ukendt.
- Med [sikkerhedsovervågningen til webservere](https://phpsos.de/da/leistungen/security-monitoring/) overvåger vi varigt jeres serveres adfærd, ikke kun kendte mønstre.


## Ofte stillede spørgsmål

**Er mit website rent, hvis malwarescanneren ikke finder noget?**  
Ikke nødvendigvis. Scannere finder først og fremmest kendte mønstre. Ny eller godt tilsløret kode, bagdøre i databasen, fremmede konti, cronjobs og SSH-nøgler forbliver ofte uopdaget. Et tomt resultat er en byggesten, ikke en frifindelse.

**Hvad er forskellen på en ekstern scanner og en plugin-scanner?**  
En ekstern scanner kalder websitet udefra og ser kun det, der leveres. En plugin-scanner kører inde i CMS'et og kan læse filer, men kører i det samme system, som muligvis er kompromitteret. Begge har egne blinde vinkler.

**Findes der scanner-signaturer for PHP2Shell?**  
For PHP2Shell findes der ingen offentliggjorte, bekræftede indicators of compromise. Scannere kan derfor ikke søge målrettet efter sikre PHP2Shell-spor. Genkendelsen beror på adfærdsanalyse og på søgning efter generelle tegn på en kompromittering.

**Hvilken scanner er den bedste?**  
Spørgsmålet leder på vildspor. Vigtigere end et bestemt produkt er kombinationen af forskellige kontroltyper: afstemning med originalen, søgning i filer og database, kontrol af konti og systemtjenester samt overvågning af adfærden.

## Kilder

- [OWASP Top 10](https://owasp.org/www-project-top-ten/)
- [BSI (det tyske forbundsagentur for informationssikkerhed): Henvisninger til it-sikkerhedshændelser](https://www.bsi.bund.de/)
- [php.net: Sikkerhedsmeddelelser](https://www.php.net/)
