wordpress sikkerhed php snippet

Forøgelse af WordPress-sikkerhed: En simpel og effektiv kode.

Mikkel Faartoft

Mikkel Faartoft

Webudvikler og teknisk ansvarlig | Difento

Indholdsfortegnelse

I en tid, hvor digitale trusler konstant udvikler sig, er det vigtigt for websiteejere at være et skridt foran, især når det gælder WordPress-sikkerhed. I dette indlæg vil jeg dykke ned i en specifik PHP-kode, som kan hjælpe dig med at beskytte dit site mod visse typer angreb. Lad os bryde koden ned, stykke for stykke:

 

				
					global $user_ID; if($user_ID) {
    if(!current_user_can('administrator')) {
        if (strlen($_SERVER['REQUEST_URI']) > 255 ||
            stripos($_SERVER['REQUEST_URI'], "eval(") ||
            stripos($_SERVER['REQUEST_URI'], "CONCAT") ||
            stripos($_SERVER['REQUEST_URI'], "UNION+SELECT") ||
            stripos($_SERVER['REQUEST_URI'], "base64")) {
                @header("HTTP/1.1 414 Request-URI Too Long");
                @header("Status: 414 Request-URI Too Long");
                @header("Connection: Close");
                @exit;
        }
    }
}

				
			

 

Forklaring af Kodeelementerne

Global Variabel

global $user_ID; – Denne linje gør WordPress’ bruger-ID globalt tilgængeligt i funktionen, så vi kan kontrollere, om brugeren er logget ind.

Brugerlogintjek

if($user_ID) { ... } – Dette tjekker, om der er en logget ind bruger. Hvis der er, fortsætter koden med at køre.

Administratorrettigheder

if(!current_user_can('administrator')) { ... } – Her tjekkes det, om den nuværende bruger IKKE er en administrator. Hvis brugeren ikke er en administrator, udføres koden i denne blok.

Sikkerhedstjek af URL

Denne del tjekker URL’en for potentielt skadelige mønstre:

  • strlen($_SERVER['REQUEST_URI']) > 255 – Tjekker om URL-længden er unormalt lang, hvilket kan være et tegn på et angrebsforsøg.
  • stripos($_SERVER['REQUEST_URI'], "eval("), og lignende tjek – Søger efter specifikke ord eller koder, der ofte anvendes i hackingforsøg, som SQL-injektioner.

Sikkerhedsrespons

Hvis der findes mistænkelige mønstre i URL’en, vil følgende kodelinjer reagere:

  • @header("HTTP/1.1 414 Request-URI Too Long"); og de efterfølgende header kald sender en HTTP-statuskode tilbage til brugerens browser og informerer om, at forespørgslen er for lang.
  • @exit; stopper al videre udførelse af scriptet for at forhindre potentiel skade.

 

Sammenfatning og best practice

Dette snippet er et eksempel på, hvordan enkle sikkerhedsmekanismer kan implementeres for at beskytte dit WordPress-site. Det demonstrerer vigtigheden af proaktivt at overvåge og reagere på potentielle sikkerhedstrusler.

Det er vigtigt at huske, at selvom denne kode tilbyder en vis beskyttelse, bør den ikke stå alene. Den bør være en del af en omfattende sikkerhedsstrategi, som inkluderer regelmæssige opdateringer, sikkerhedskopier og brug af pålidelige sikkerhedsplugins.

Sikkerheden på din hjemmeside er en løbende proces, og det er altid en god idé at søge professionel rådgivning, hvis du er usikker.

Tak fordi du læste med 🙌

Tak for at du kiggede forbi. Hvis du har spørgsmål, er du mere end velkommen til at henvende dig.

Læs også

Formular udfyldt!

Navn

Hvem skal kaffen laves til?☕

Hvad skal der i kaffen?☕

Hvordan kontakter vi dig?