Hoe u uw WordPress-website met een hoog profiel beschermt tegen aanvallen
De behoefte aan WordPress-beveiliging groeit in een snel tempo. Volgens rapporten ondervinden WordPress-sites 90.978 aanvallen per minuut. Sinds de release heeft WordPress meer dan 2.450 kwetsbaarheden hersteld. Naast de basale beveiligingsmaatregelen die u al neemt om uw site te beveiligen, vindt u hier enkele geavanceerde beveiligingsmaatregelen voor WordPress, waaronder hoe u WordPress DDoS (Distributed Denial of Service) op uw website kunt voorkomen.
1. Zet HTTP Trace-functionaliteit uit
Aanvallen zoals Cross Site Scripting (XSS) en Cross Site Tracing (XST) zijn gericht op systemen met ingeschakelde HTTP Trace-functionaliteit. De meeste webservers zijn standaard ingesteld om te functioneren met HTTP Trace, die wordt gebruikt voor activiteiten zoals foutopsporing. Met behulp van header-verzoeken zouden hackers gevoelige informatie zoals cookies stelen door een Cross Site Tracing-aanval uit te voeren. OWASP Top Ten Project biedt uitgebreide lijsten met kwetsbaarheden en aanvallen op WordPress-websites.
Van alle kwetsbaarheidstypes staat Cross Site Scripting op de eerste plaats. In feite is 46, 9% van alle websites kwetsbaar voor dit soort aanvallen. Om de HTTP Trace-functionaliteit te deactiveren, voegt u de volgende code toe aan uw .htaccess-bestand.
RewriteEngine On RewriteCond% {REQUEST_METHOD} ^ TRACE RewriteRule. * - [F]
2. Verwijder de WordPress-installatiekoptekstuitgangen
Services die specifiek zijn voor verschillende delen van uw WordPress-website, vereisen het toevoegen van veel output in de header. U kunt deze uitgangen verwijderen door de onderstaande code toe te voegen aan het bestand "functions.php" van uw thema.
remove_action ('wp_head', 'index_rel_link'); remove_action ('wp_head', 'feed_links', 2); remove_action ('wp_head', 'feed_links_extra', 3); remove_action ('wp_head', 'rsd_link'); remove_action ('wp_head', 'wlwmanifest_link'); remove_action ('wp_head', 'parent_post_rel_link', 10, 0); remove_action ('wp_head', 'start_post_rel_link', 10, 0); remove_action ('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0); remove_action ('wp_head', 'wp_generator'); remove_action ('wp_head', 'wp_shortlink_wp_head', 10, 0); remove_action ('wp_head', 'noindex', 1);
3. Wijzig de standaard databaseprefix voor WordPress
De standaard prefixwaarde voor WordPress-databasetabellen is "wp_". Hackers en schadelijke bots kunnen deze prefixwaarde gebruiken om uw databasetabelnamen met succes te raden. Aangezien het wp-config.php-bestand is waar uw WordPress-databaseprefixwaarde is ingesteld, is het eenvoudiger om deze voorvoegselwaarde bij het installeren van WordPress te wijzigen. U kunt de plugin Wijzig tabelvoorvoegsels gebruiken of, als u dit liever handmatig doet, als volgt te werk gaan:
1. Maak een volledige back-up van uw database en bewaar de back-up ergens op een veilige plaats. Hier zijn enkele van de back-up-plug-ins die u kunt gebruiken.
2. Gebruik "phpmyadmin" in het configuratiescherm van uw webhost om uw WordPress-database volledig in een tekstbestand te dumpen. Maak ook een back-up van dit tekstbestand.
3. Gebruik vervolgens een code-editor om alle voorvoegselwaarden "wp_" te vervangen door uw eigen prefix.
4. Deactiveer alle plug-ins in uw admin-paneel.
5. Gebruik nu het bestand dat u in de derde stap hierboven hebt bewerkt, importeer de nieuwe database nadat u de oude hebt verwijderd via phpMyAdmin.
6. Bewerk het bestand "wp-config.php" met de nieuwe databasevoorvoegwaarde.
7. Heractiveer nu uw WordPress-plug-ins.
8. Ga naar Instellingen en vervolgens naar Permalinks om de permalinkinstellingen op te slaan; Hiermee wordt de permalink-structuur van uw website vernieuwd. Houd er rekening mee dat het wijzigen van de databasevoorvoegs de instellingen van uw domeinnaam, URL en permalink niet moet wijzigen.
4. Blokzoekreeksen die mogelijk gevaarlijk zijn blokkeren
Om Cross Sites Scripting-aanvallen (XSS) te voorkomen, voegt u de volgende code toe aan uw .htaccess-bestand. Voordat u de code toevoegt, identificeert u eerst vraagreeksen die potentieel gevaarlijk zijn. URL-aanvragen zijn ontdaan van vele schadelijke injecties door deze reeks regels. Er zijn twee belangrijke zaken om op te merken:
- Bepaalde plug-ins of thema's breken functies af als u strings die ze al gebruiken niet uitsluit.
- Hoewel de onderstaande reeksen het meest voorkomen, kunt u ervoor kiezen om meer tekenreeksen toe te voegen.
RewriteCond% {REQUEST_METHOD} ^ (HEAD | TRACE | DELETE | TRACK) [NC] RewriteCond% {QUERY_STRING} ../ [NC, OR] RewriteCond% {QUERY_STRING} boot.ini [NC, OR] RewriteCond% {QUERY_STRING} tag = [NC, OF] RewriteCond% {QUERY_STRING} ftp: [NC, OF] RewriteCond% {QUERY_STRING} http: [NC, OF] RewriteCond% {QUERY_STRING} https: [NC, OF] RewriteCond% {QUERY_STRING} mosConfig [NC, OF] RewriteCond% {QUERY_STRING} ^. * ([|] | (|) || '| "|; |? | *). * [NC, OF] RewriteCond% {QUERY_STRING} ^. * (% 22 | % 27 |% 3C |% 3E |% 5C |% 7B |% 7C). * [NC, OF] RewriteCond% {QUERY_STRING} ^. * (% 0 |% A |% B |% C |% D |% E |% F | 127.0). * [NC, OF] RewriteCond% {QUERY_STRING} ^. * (Globals | encode | config | localhost | loopback). * [NC, OR] RewriteCond% {QUERY_STRING} ^. * (Verzoek | select | insert | union | declare | drop). * [NC] RewriteRule ^ (. *) $ - [F, L]
5. Gebruik Deflect om DDoS-aanvallen te voorkomen
Jonge websites, onafhankelijke mediagroepen en de sites van de meeste mensenrechtenactivisten / -groepen hebben meestal niet de technische en financiële middelen om een DDoS-aanval (distributed denial of service) te weerstaan. Dat is waar Deflect in komt. Afbuigen positioneert zichzelf als een oplossing die BETER is dan commerciële DDoS-beperkingsopties.
Commerciële DDoS-beperkingsopties kosten veel geld en zouden hun servicevoorwaarden kunnen veranderen als een website onder hun bescherming DDoS-aanvallen regelmatig aantrekt. Afbuigen houdt proactief DDoS-aanvallen tegen door websites constant te beschermen.
Een bijkomend voordeel van het gebruik van Deflect op uw website is dat het u geld bespaart door de druk op de server en sysadmin-bronnen van uw client te verminderen. Deflect plaatst al hun broncodes en documentatie in het publieke domein onder een Creative Commons-licentie; dit stelt iedereen in staat DDoS-aanvallen te matigen door een eigen Deflect-netwerk op te zetten. U kunt zich GRATIS aanmelden op hun website en meteen beginnen met het gebruik van de service.
6. Gebruik Secure Sockets Layer (SSL) en Firewall-bescherming
Beveiligingsdiensten zoals Sucuri bieden beveiligingsopties, zoals het installeren van een Secure Sockets Layer (SSL) -certificaat en firewallbescherming die PCI-compatibel is. Dit is een gemakkelijk toegankelijke optie voor iedereen, inclusief niet-technische mensen.
U kunt eenvoudig dergelijke beveiligingsoplossingen instellen en deze op de achtergrond laten werken en in sommige gevallen zichzelf bijwerken zoals nodig (zoals Sucuri). Dit is een zeer effectieve, onderhoudsvriendelijke beveiligingsoptie.
Een aantal WordPress-plug-ins kunnen worden gebruikt om SSL-certificaten (Secure Sockets Layer) aan uw site toe te voegen. Enkele van de meest aanbevolen WordPress SSL-plug-ins zijn CM HTTPS Pro, Really Simple SSL, WP Force SSL, SSL Onveilige Content Fixer en Easy HTTPS Redirection.
Inpakken
U zou gemarkeerde verbeteringen in de sitebeveiliging ervaren door de bovenstaande punten te gebruiken. Het is handig om te weten dat de beveiliging van WordPress altijd in ontwikkeling is. Het doel is om risico's te beperken, niet om ze te elimineren, want dat is bijna onmogelijk. WordPress-beveiliging is dynamisch en werkt in lagen, dus er is geen one-plugin-fits-all of one-tactic-fits-all.
Afbeelding tegoed: DDOS Attack Roadsign