beveiliging in WordPress wordt zeer serieus genomen, maar zoals met elk ander systeem zijn er potentiële beveiligingsproblemen die kunnen ontstaan als een aantal basis veiligheidsmaatregelen niet worden genomen. Dit artikel zal gaan door een aantal veel voorkomende vormen van kwetsbaarheden, en de dingen die je kunt doen om te helpen houden van uw WordPress installatie veilig.
Dit artikel is niet de ultieme snelle oplossing voor uw beveiligingsproblemen. Als u specifieke veiligheid zorgen of twijfels, moet u deze bespreken met mensen die u vertrouwt om voldoende kennis van computerbeveiliging en WordPress hebben.
- Wat is beveiliging? Wat is beveiliging?
- Beveiligingsthema ’s # Beveiligingsthema’ s
- kwetsbaarheden op uw Computer # kwetsbaarheden op uw Computer
- kwetsbaarheden in WordPress # kwetsbaarheden in WordPress
- WordPress updaten # WordPress updaten
- Reporting Security Issues # Reporting Security Issues
- kwetsbaarheden van de webserver # kwetsbaarheden van de webserver
- netwerk kwetsbaarheden # netwerk kwetsbaarheden
- wachtwoorden # wachtwoorden
- FTP # FTP
- bestandspermissies # bestandspermissies
- bestandsmachtigingen wijzigen # bestandsmachtigingen wijzigen
- met betrekking tot automatische Updates # met betrekking tot automatische Updates
- Databasebeveiliging # Databasebeveiliging
- Database-Gebruikersprivileges beperken # Database-Gebruikersprivileges beperken
- wp-admin beveiligen # wp-admin beveiligen
- WP beveiligen-includes # WP beveiligen-includes
- wp-config beveiligen.php # wp-config beveiligen.php
- bestandsbewerking uitschakelen # bestandsbewerking uitschakelen
- Plugins # Plugins
- Firewall # Firewall
- Plugins die schrijftoegang nodig hebben # Plugins die schrijftoegang nodig hebben
- Code execution plugins # Code execution plugins
- beveiliging door obscuriteit # beveiliging door obscuriteit
- Data Backups # Data Backups
- Logging # Logging
- Monitoring # Monitoring
- controle van uw logs # controle van uw logs
- uw bestanden controleren op Wijzigingen # uw bestanden controleren op Wijzigingen
- doelen # doelen
- Algemene benaderingen # Algemene benaderingen
- Specifieke tools # Specifieke gereedschappen
- overwegingen # overwegingen
- extern monitoren van uw webserver # extern monitoren van uw webserver
- Resources # Resources
- zie ook # zie ook
Wat is beveiliging? Wat is beveiliging?
fundamenteel gaat beveiliging niet over perfect beveiligde systemen. Zoiets zou wel eens onpraktisch kunnen zijn, of onmogelijk te vinden en/of te onderhouden. Veiligheid is echter risicovermindering, niet risicovermindering. Het gaat over het gebruik van alle passende controles beschikbaar voor u, binnen de rede, die u toelaten om uw algehele houding te verbeteren het verminderen van de kansen van het maken van jezelf een doelwit, vervolgens krijgen gehackt.
Websitehosts
vaak is uw hostingomgeving een goede plek om te beginnen als het gaat om websitebeveiliging. Vandaag de dag zijn er een aantal opties beschikbaar voor u, en hoewel hosts beveiliging bieden op een bepaald niveau, is het belangrijk om te begrijpen waar hun verantwoordelijkheid eindigt en die van u begint. Hier is een goed artikel waarin de ingewikkelde dynamiek tussen webhosts en de veiligheid van uw website wordt uitgelegd. Een beveiligde server beschermt de privacy, integriteit en beschikbaarheid van de bronnen Onder het beheer van de serverbeheerder.
kwaliteiten van een vertrouwde webhost kunnen zijn:
- bespreekt gemakkelijk uw beveiligingsproblemen en welke beveiligingsfuncties en processen zij aanbieden met hun hosting.
- biedt de meest recente stabiele versies van alle serversoftware.
- biedt betrouwbare methoden voor back-up en herstel.
Bepaal welke beveiliging u nodig hebt op uw server door te bepalen welke software en gegevens beveiligd moeten worden. De rest van deze gids zal u hierbij helpen.
Websitetoepassingen
Het is gemakkelijk om naar webhosts te kijken en de verantwoordelijkheid van beveiliging aan hen over te dragen, maar er is een enorme hoeveelheid beveiliging die ook op de website-eigenaar ligt. Webhosts zijn vaak verantwoordelijk voor de infrastructuur waarop uw website zit, ze zijn niet verantwoordelijk voor de toepassing die u kiest te installeren.
om te begrijpen waar en waarom dit belangrijk is, moet u begrijpen hoe websites gehackt worden, wordt het zelden toegeschreven aan de infrastructuur, en meestal aan de toepassing zelf (d.w.z. de omgeving waarvoor u verantwoordelijk bent).
Top
Beveiligingsthema ’s # Beveiligingsthema’ s
Houd rekening met enkele algemene ideeën terwijl u de beveiliging voor elk aspect van uw systeem overweegt:
toegang beperken
slimme keuzes maken die mogelijke toegangspunten voor een kwaadwillende persoon verminderen.
Containment
uw systeem moet worden geconfigureerd om de hoeveelheid schade die kan worden gedaan in het geval dat het wordt gecompromitteerd te minimaliseren.
voorbereiding en kennis
back-ups houden en de status van uw WordPress installatie op regelmatige tijdstippen kennen. Het hebben van een plan om back-up en herstel van uw installatie in het geval van een catastrofe kan u helpen weer online sneller in het geval van een probleem.
vertrouwde bronnen
krijg geen plugins / thema ‘ s van niet-vertrouwde bronnen. Beperk jezelf tot de WordPress.org repository of bekende bedrijven. Proberen om plugins/thema ‘ s te krijgen van buitenaf kan leiden tot problemen.
Top
kwetsbaarheden op uw Computer # kwetsbaarheden op uw Computer
zorg ervoor dat de computers die u gebruikt vrij zijn van spyware, malware en virusinfecties. Geen enkele hoeveelheid beveiliging in WordPress of op uw webserver zal het minste verschil maken als er een keylogger op uw computer.
houd uw besturingssysteem en de software erop, vooral uw webbrowser, altijd up-to-date om u te beschermen tegen beveiligingsproblemen. Als u op niet-vertrouwde sites surft, raden we u ook aan tools als no-script (of het uitschakelen van javascript/flash/java) in uw browser te gebruiken.
Top
kwetsbaarheden in WordPress # kwetsbaarheden in WordPress
zoals veel moderne softwarepakketten, wordt WordPress regelmatig bijgewerkt om nieuwe beveiligingsproblemen aan te pakken die zich kunnen voordoen. Het verbeteren van de softwarebeveiliging is altijd een voortdurende zorg, en om dat te bereiken moet u altijd up-to-date te blijven met de nieuwste versie van WordPress. Oudere versies van WordPress worden niet onderhouden met beveiligingsupdates.
WordPress updaten # WordPress updaten
Main article: WordPress updaten.
De laatste versie van WordPress is altijd beschikbaar op de hoofdwebsite van WordPress onder https://wordpress.org. Officiële releases zijn niet beschikbaar van andere sites – download of installeer WordPress nooit van een andere website dan https://wordpress.org.
sinds versie 3.7 heeft WordPress automatische updates. Gebruik deze functionaliteit om het proces van up-to-date te vergemakkelijken. U kunt ook het WordPress Dashboard gebruiken om op de hoogte te blijven van updates. Lees de vermelding in het Dashboard of de WordPress Developer Blog om te bepalen welke stappen u moet nemen om te updaten en veilig te blijven.
als een kwetsbaarheid wordt ontdekt in WordPress en een nieuwe versie wordt vrijgegeven om het probleem aan te pakken, is de informatie die nodig is om de kwetsbaarheid te exploiteren vrijwel zeker in het publieke domein. Dit maakt oude versies meer open voor aanvallen, en is een van de belangrijkste redenen waarom je altijd WordPress up-to-date moet houden.
Als u een beheerder bent die verantwoordelijk is voor meer dan één WordPress installatie, overweeg dan om Subversion te gebruiken om het beheer gemakkelijker te maken.
Top
Reporting Security Issues # Reporting Security Issues
Als u denkt dat u een beveiligingslek in WordPress hebt gevonden, kunt u helpen door het probleem te melden. Zie de veelgestelde vragen over beveiliging voor informatie over het rapporteren van beveiligingsproblemen.
Als u denkt dat u een bug hebt gevonden, rapporteer deze dan. Zie Bugs indienen voor hoe dit te doen. Je hebt misschien een kwetsbaarheid ontdekt, of een bug die tot één kan leiden.
Top
kwetsbaarheden van de webserver # kwetsbaarheden van de webserver
De webserver waarop WordPress wordt uitgevoerd, en de software erop, kunnen kwetsbaarheden hebben. Zorg er daarom voor dat u veilige, stabiele versies van uw webserver en de software erop draait, of zorg ervoor dat u een vertrouwde host gebruikt die deze dingen voor u regelt.
als u zich op een gedeelde server bevindt (een server die andere websites dan uw eigen host) en een website op dezelfde server wordt gecompromitteerd, kan uw website mogelijk ook gecompromitteerd worden, zelfs als u alles in deze gids volgt. Zorg ervoor dat u uw webhost vraagt welke veiligheidsmaatregelen zij nemen.
Top
netwerk kwetsbaarheden # netwerk kwetsbaarheden
het netwerk aan beide uiteinden-de WordPress server kant en de client netwerk kant-moet worden vertrouwd. Dat betekent dat u firewallregels op uw thuisrouter bijwerkt en voorzichtig bent met welke netwerken U werkt. Een internetcafé waar u wachtwoorden verzendt via een niet-versleutelde verbinding, draadloos of anderszins, is geen vertrouwd netwerk.
uw webhost zou ervoor moeten zorgen dat hun netwerk niet gecompromitteerd wordt door aanvallers, en u zou hetzelfde moeten doen. Netwerk kwetsbaarheden kunnen toestaan wachtwoorden en andere gevoelige informatie te onderscheppen.
Top
wachtwoorden # wachtwoorden
veel potentiële kwetsbaarheden kunnen worden vermeden met goede beveiligingsgewoonten. Een sterk wachtwoord is hierbij een belangrijk aspect.
Het doel van uw wachtwoord is om het moeilijk te maken voor andere mensen om te raden en moeilijk voor een brute force aanval om te slagen. Er zijn veel automatische wachtwoordgeneratoren beschikbaar die kunnen worden gebruikt om veilige wachtwoorden te maken.
WordPress beschikt ook over een wachtwoord sterkte meter die wordt weergegeven bij het wijzigen van uw wachtwoord in WordPress. Gebruik dit bij het wijzigen van uw wachtwoord om ervoor te zorgen dat de sterkte voldoende is.
dingen die u moet vermijden bij het kiezen van een wachtwoord:
- elke permutatie van uw eigen echte naam, gebruikersnaam, bedrijfsnaam of naam van uw website.
- een woord uit een woordenboek, in elke taal.
- een kort wachtwoord.
- elk enkel numeriek of alfabetisch wachtwoord (een combinatie van beide is het beste).
een sterk wachtwoord is niet alleen nodig om uw blogcontent te beschermen. Een hacker die toegang krijgt tot uw administrator account is in staat om kwaadaardige scripts die mogelijk uw hele server in gevaar kunnen brengen installeren.
naast het gebruik van een sterk wachtwoord is het een goed idee om authenticatie in twee stappen in te schakelen als extra beveiligingsmaatregel.
Top
FTP # FTP
wanneer u verbinding maakt met uw server, moet u SFTP-versleuteling gebruiken als uw webhost dit biedt. Als u niet zeker weet of uw webhost SFTP biedt of niet, vraag het hen gewoon.
het gebruik van SFTP is hetzelfde als FTP, behalve dat uw wachtwoord en andere gegevens versleuteld zijn wanneer deze tussen uw computer en uw website worden verzonden. Dit betekent dat uw wachtwoord nooit wordt verzonden in de clear en kan niet worden onderschept door een aanvaller.
Top
bestandspermissies # bestandspermissies
sommige handige functies van WordPress komen doordat verschillende bestanden beschrijfbaar zijn voor de webserver. Echter, het toestaan van schrijftoegang tot uw bestanden is potentieel gevaarlijk, met name in een shared hosting omgeving.
Het is het beste om uw bestandspermissies zoveel mogelijk te vergrendelen en om deze beperkingen los te maken wanneer u schrijftoegang moet toestaan, of om specifieke mappen met minder beperkingen aan te maken om dingen te doen zoals het uploaden van bestanden.
Hier is een mogelijk toestemmingsschema.
alle bestanden moeten eigendom zijn van uw gebruikersaccount, en moeten beschrijfbaar zijn voor u. Elk bestand dat schrijftoegang van WordPress nodig heeft, moet schrijfbaar zijn door de webserver, als uw hosting dit vereist, kan dat betekenen dat die bestanden groepseigendom moeten zijn van het gebruikersaccount dat door het webserverproces wordt gebruikt.
/
de root WordPress directory: alle bestanden moeten alleen beschrijfbaar zijn door uw gebruikersaccount, behalve .htaccess
Als u wilt dat WordPress automatisch herschrijfregels voor u genereert.
/wp-admin/
Het WordPress-beheergedeelte: alle bestanden moeten alleen beschrijfbaar zijn voor uw gebruikersaccount.
/wp-includes/
het grootste deel van de WordPress-toepassingslogica: alle bestanden moeten alleen beschrijfbaar zijn door uw gebruikersaccount.
/wp-content/
door de gebruiker aangeleverde inhoud: bedoeld om beschrijfbaar te zijn door uw gebruikersaccount en het webserverproces.
binnen /wp-content/
vindt u:
/wp-content/themes/
themabestanden. Als u de ingebouwde thema-editor wilt gebruiken, moeten alle bestanden beschrijfbaar zijn door het webserverproces. Als u de ingebouwde thema-editor niet wilt gebruiken, kunnen alle bestanden alleen beschrijfbaar zijn door uw gebruikersaccount.
/wp-content/plugins/
pluginbestanden: alle bestanden moeten alleen beschrijfbaar zijn voor uw gebruikersaccount.
andere mappen die aanwezig kunnen zijn met /wp-content/
moeten worden gedocumenteerd door de plug-in of het thema waarvoor ze nodig zijn. Machtigingen kunnen variëren.
Top
bestandsmachtigingen wijzigen # bestandsmachtigingen wijzigen
Als u shell – toegang hebt tot uw server, kunt u bestandsmachtigingen recursief wijzigen met het volgende commando:
voor mappen:
find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
Voor bestanden:
find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
Top
met betrekking tot automatische Updates # met betrekking tot automatische Updates
wanneer u WordPress vertelt een automatische update uit te voeren, worden alle bestandsbewerkingen uitgevoerd als de gebruiker die de bestanden bezit, niet als de gebruiker van de webserver. Alle bestanden zijn ingesteld op 0644 en alle mappen zijn ingesteld op 0755, en schrijfbaar door alleen de gebruiker en leesbaar door iedereen, inclusief de webserver.
Top
Databasebeveiliging # Databasebeveiliging
Als u meerdere blogs op dezelfde server draait, is het verstandig om ze in aparte databases te bewaren die elk door een andere gebruiker worden beheerd. Dit is het beste bereikt bij het uitvoeren van de eerste WordPress installatie. Dit is een insluitingsstrategie: als een indringer met succes een WordPress-installatie breekt, maakt dit het veel moeilijker om uw andere blogs te wijzigen.
Als u zelf MySQL beheert, zorg er dan voor dat u uw MySQL-configuratie begrijpt en dat onnodige functies (zoals het accepteren van externe TCP-verbindingen) zijn uitgeschakeld. Zie Secure MySQL Database Design voor een leuke introductie.
Top
Database-Gebruikersprivileges beperken # Database-Gebruikersprivileges beperken
voor normale WordPress-bewerkingen, zoals het plaatsen van blogberichten, het uploaden van mediabestanden, het plaatsen van opmerkingen, het creëren van nieuwe WordPress-gebruikers en het installeren van WordPress-plugins, heeft de MySQL-database-Gebruiker alleen rechten voor lezen en schrijven van gegevens nodig naar de MySQL-database; Selecteren, invoegen, bijwerken en verwijderen.
daarom kunnen alle andere databasestructuren en beheerrechten, zoals DROP, ALTER en GRANT, worden ingetrokken. Door dergelijke privileges in te trekken, verbeter je ook het insluitingsbeleid.
Opmerking: sommige plugins, thema ‘ s en belangrijke WordPress-updates kunnen nodig zijn om de database structurele wijzigingen aan te brengen, zoals het toevoegen van nieuwe tabellen of het wijzigen van het schema. In dat geval, voordat u de plugin installeert of een software bijwerkt, moet u de databasegebruiker tijdelijk de vereiste privileges toestaan.
waarschuwing: Het proberen van updates zonder deze privileges kan problemen veroorzaken wanneer wijzigingen in het databaseschema optreden. Het wordt daarom niet aanbevolen om deze rechten in te trekken. Als je de noodzaak voelt om dit te doen om veiligheidsredenen, zorg er dan voor dat je eerst een solide back-upplan hebt, met regelmatige hele database back-ups die je hebt getest zijn geldig en die gemakkelijk kunnen worden hersteld. Een mislukte database upgrade kan meestal worden opgelost door het herstellen van de database terug naar een oude versie, het verlenen van de juiste machtigingen, en dan laten WordPress proberen de database update opnieuw. Het herstellen van de database zal het terug te keren naar die oude versie en de WordPress administratie schermen zal dan detecteren de oude versie en kunt u de nodige SQL commando ‘ s op uit te voeren. De meeste WordPress-upgrades veranderen het schema niet, maar sommige wel. Alleen belangrijke puntupgrades (3.7 naar 3.8, bijvoorbeeld) zullen het schema veranderen. Kleine upgrades (3.8 naar 3.8.1) zullen over het algemeen niet. Niettemin, houd een regelmatige back-up.
Top
wp-admin beveiligen # wp-admin beveiligen
wachtwoordbeveiliging aan de serverzijde (zoals BasicAuth) toevoegen aan /wp-admin/
voegt een tweede beveiligingslaag toe rond het admin-gebied van uw blog, het aanmeldscherm en uw bestanden. Dit dwingt een aanvaller of bot om deze tweede laag van bescherming aan te vallen in plaats van uw werkelijke admin bestanden. Veel WordPress-aanvallen worden autonoom uitgevoerd door kwaadaardige software bots.
het eenvoudig beveiligen van de wp-admin/
map kan ook een aantal WordPress functionaliteit breken, zoals de Ajax handler op wp-admin/admin-ajax.php
. Zie de Resources sectie voor meer documentatie over het beveiligen met een wachtwoord van uw wp-admin/
map.
de meest voorkomende aanvallen op een WordPress blog vallen meestal in twee categorieën.
- Het verzenden van speciaal gemaakte HTTP-verzoeken naar uw server met specifieke exploit payloads voor specifieke kwetsbaarheden. Deze omvatten oude / verouderde plugins en software.
- poging om toegang te krijgen tot uw blog door gebruik te maken van “brute-force” wachtwoord raden.
de uiteindelijke implementatie van deze” tweede laag ” wachtwoordbeveiliging is het vereisen van een HTTPS SSL-versleutelde verbinding voor het beheer, zodat alle communicatie en gevoelige gegevens worden versleuteld. Zie toediening via SSL.
Top
WP beveiligen-includes # WP beveiligen-includes
een tweede beschermingslaag kan worden toegevoegd waar scripts over het algemeen niet bedoeld zijn om door een gebruiker te worden benaderd. Een manier om dat te doen is om die scripts te blokkeren met behulp van mod_rewrite in de .htaccess-bestand. OPMERKING: Om ervoor te zorgen dat de onderstaande code niet wordt overschreven door WordPress, plaatst u deze buiten de tags # BEGIN WordPress
en # END WordPress
in de .htaccess-bestand. WordPress kan alles overschrijven tussen deze tags.
Top
wp-config beveiligen.php # wp-config beveiligen.php
u kunt het wp-config.php
bestand verplaatsen naar de map boven uw WordPress installatie. Dit betekent dat u voor een site die in de root van uw webruimte is geà nstalleerd, wp-config.php
buiten de rootmap van het web kunt opslaan.
opmerking: Sommige mensen beweren dat bewegende wp-config.php heeft minimale beveiligingsvoordelen en kan, als het niet zorgvuldig wordt gedaan, ernstige kwetsbaarheden introduceren. Anderen zijn het daar niet mee eens.
merk op datwp-config.php
één mapniveau boven de WordPress (waar wp-includes zich bevindt) installatie kan worden opgeslagen. Zorg er ook voor dat alleen jij (en de webserver) dit bestand kan lezen (het betekent over het algemeen een 400 of 440 toestemming).
Als u een server gebruikt met .htaccess, u kunt dit in dat bestand (aan de top) om toegang te weigeren aan iedereen surfen voor het:
<files wp-config.php>order allow,denydeny from all</files>
Top
bestandsbewerking uitschakelen # bestandsbewerking uitschakelen
Het WordPress-Dashboard stelt beheerders standaard in staat PHP-bestanden te bewerken, zoals plugin-en themabestanden. Dit is vaak de eerste tool die een aanvaller zal gebruiken als hij in staat is om in te loggen, omdat het het uitvoeren van code toestaat. WordPress heeft een constante om het bewerken van het Dashboard uit te schakelen. Het plaatsen van deze regel in wp-config.php is gelijk aan het verwijderen van de’ edit_themes’,’ edit_plugins ‘en’ edit_files ‘ mogelijkheden van alle gebruikers:
define('DISALLOW_FILE_EDIT', true);
Dit voorkomt niet dat een aanvaller schadelijke bestanden uploadt naar uw site, maar kan sommige aanvallen stoppen.
Top
Plugins # Plugins
zorg er allereerst voor dat uw plugins altijd worden bijgewerkt. Als u geen specifieke plug-in gebruikt, verwijdert u deze ook uit het systeem.
Top
Firewall # Firewall
Er zijn veel plugins en services die als firewall voor uw website kunnen fungeren. Sommige van hen werken door het wijzigen van uw .htaccess
bestand en het beperken van enige toegang op Apache niveau, voordat het wordt verwerkt door WordPress. Een goed voorbeeld is iThemes Security of All In One WP Security. Sommige firewall plug-ins handelen op het WordPress-niveau, zoals WordFence en Shield, en proberen aanvallen te filteren als WordPress wordt geladen, maar voordat het volledig wordt verwerkt.
naast plugins kunt u ook een WAF (web firewall) op uw webserver installeren om inhoud te filteren voordat deze door WordPress wordt verwerkt. De meest populaire open source WAF is ModSecurity.
een website firewall kan ook worden toegevoegd als tussenpersoon tussen het verkeer van het internet en uw hostingserver. Deze diensten functioneren allemaal als reverse proxies, waarin ze de eerste verzoeken accepteren en omleiden naar uw server, het strippen van alle kwaadaardige Verzoeken. Ze bereiken dit door het wijzigen van uw DNS-records, via een A-record of volledige DNS-swap, waardoor al het verkeer te passeren via het nieuwe netwerk eerste. Dit zorgt ervoor dat al het verkeer wordt gefilterd door de firewall voordat u uw site bereikt. Een paar bedrijven bieden dergelijke service, zoals CloudFlare, Sucuri en Incainsula.
bovendien functioneren deze externe serviceproviders standaard als Content Distribution Network (CDN ‘ s), wat performance optimization en global reach introduceert.
Top
Plugins die schrijftoegang nodig hebben # Plugins die schrijftoegang nodig hebben
als een plugin schrijftoegang tot uw WordPress-bestanden en mappen wil, lees dan de code om er zeker van te zijn dat het legitiem is of neem contact op met iemand die u vertrouwt. Mogelijke plaatsen om te controleren zijn de Support Forums en IRC kanaal.
Top
Code execution plugins # Code execution plugins
zoals we al zeiden, een deel van het doel van het verharden van WordPress is het bevatten van de schade die is aangericht als er een succesvolle aanval. Plug-ins die willekeurige PHP of andere code uit te voeren vanuit vermeldingen in een database effectief vergroten van de mogelijkheid van schade in het geval van een succesvolle aanval.
een manier om het gebruik van een dergelijke plugin te vermijden is door aangepaste paginasjablonen te gebruiken die de functie aanroepen. Een deel van de veiligheid die dit biedt is alleen actief wanneer u het bewerken van bestanden binnen WordPress niet toestaat.
Top
beveiliging door obscuriteit # beveiliging door obscuriteit
beveiliging door obscuriteit is over het algemeen een ondeugdelijke primaire strategie. Er zijn echter gebieden in WordPress waar het verbergen van informatie kan helpen bij de beveiliging:
- hernoem het beheerdersaccount: vermijd bij het aanmaken van een beheerdersaccount gemakkelijk geraden termen zoals
admin
ofwebmaster
als Gebruikersnamen, omdat ze meestal eerst worden aangevallen. Op een bestaande WordPress installatie kunt u het bestaande account in de MySQL command-line client hernoemen met een commando alsUPDATE wp_users SET user_login = 'newuser' WHERE user_login = 'admin';
, of met behulp van een MySQL frontend zoals phpMyAdmin. - Wijzig de table_prefix: veel gepubliceerde WordPress-specifieke SQL-injectie aanvallen maken de veronderstelling dat de table_prefix is
wp_
, de standaard. Het veranderen van dit kan ten minste een aantal SQL injectie aanvallen blokkeren.
Top
Data Backups # Data Backups
maak regelmatig een Back-up van uw gegevens, inclusief uw MySQL-databases. Zie het hoofdartikel: Een Back-Up Van Je Database.
gegevensintegriteit is cruciaal voor vertrouwde back-ups. Het versleutelen van de back-up, het bijhouden van een onafhankelijke record van MD5 hashes voor elk back-upbestand, en/of het plaatsen van back-ups op Alleen-lezen media verhoogt uw vertrouwen dat uw gegevens niet is geknoeid met.
een back-upstrategie voor geluid kan bestaan uit het bewaren van een reeks regelmatig getimede snapshots van uw volledige WordPress-installatie (inclusief WordPress core-bestanden en uw database) op een vertrouwde locatie. Stel je een site voor die wekelijkse snapshots maakt. Een dergelijke strategie betekent dat als een site wordt gecompromitteerd op 1 mei, maar het Compromis wordt niet gedetecteerd tot 12 mei, zal de eigenaar van de site Pre-compromis back-ups die kunnen helpen bij de wederopbouw van de site en eventueel zelfs post-compromis back-ups die zal helpen bij het bepalen hoe de site werd gecompromitteerd hebben.
Top
Logging # Logging
Logs zijn uw beste vriend als het gaat om het begrijpen van wat er gebeurt met uw website, vooral als u probeert forensisch onderzoek uit te voeren. In tegenstelling tot wat vaak wordt gedacht, kunt u in Logboeken zien wat er is gedaan en door wie en wanneer. Helaas zullen de logs u niet vertellen wie, gebruikersnaam, ingelogd, maar het zal u toelaten om het IP en de tijd te identificeren en nog belangrijker, de acties die de aanvaller zou kunnen hebben genomen. U zult in staat zijn om een van deze aanvallen te zien via de logs – Cross Site Scripting (XSS), Remote File Inclusion (RFI), Local File Inclusion (LFI) en Directory Traversal pogingen. Je zult ook in staat zijn om brute kracht pogingen te zien. Er zijn verschillende voorbeelden en tutorials beschikbaar om u te helpen begeleiden door het proces van het ontleden en analyseren van uw raw logs.
Als u zich meer op uw gemak voelt met uw logs, kunt u dingen zien als, wanneer het thema en plugin editors worden gebruikt, wanneer iemand uw widgets bijwerkt en wanneer berichten en pagina ‘ s worden toegevoegd. Alle belangrijke elementen bij het doen van forensisch werk op uw webserver. Het zijn een paar WordPress Security plugins die u helpen met deze ook, zoals de Sucuri Auditing tool of de Audit Trail plugin.
Er zijn twee belangrijke open-source oplossingen die u op uw webserver wilt hebben vanuit een beveiligingsperspectief, dit is een gelaagde benadering van beveiliging.
OSSEC kan draaien op elke Nix distributie en zal ook draaien op Windows. Wanneer correct geconfigureerd zijn zeer krachtig. Het idee is correleren en aggregeren van alle logs. Je moet er zeker van zijn om het te configureren om alle access_logs en error_logs vast te leggen en als je meerdere websites op de server account voor dat. U zult ook willen er zeker van te filteren uit de ruis. Standaard ziet u veel ruis en wilt u het configureren om echt effectief te zijn.
Top
Monitoring # Monitoring
soms is preventie niet genoeg en kunt u nog steeds gehackt worden. Daarom is intrusion detection / monitoring erg belangrijk. Het zal u toelaten om sneller te reageren, erachter te komen wat er is gebeurd en uw site te herstellen.
Top
controle van uw logs # controle van uw logs
Als u zich op een dedicated of virtual private server bevindt, waar u de luxe van root-toegang hebt, kunt u eenvoudig dingen configureren zodat u kunt zien wat er aan de hand is. OSSEC gemakkelijk vergemakkelijkt dit en hier is een beetje schrijven dat u zou kunnen helpen OSSEC voor de beveiliging van de Website-Deel I.
Top
uw bestanden controleren op Wijzigingen # uw bestanden controleren op Wijzigingen
wanneer een aanval plaatsvindt, laat het altijd sporen achter. Ofwel op de logs of op het bestandssysteem (nieuwe bestanden, gewijzigde bestanden, enz.). Als u OSSEC bijvoorbeeld gebruikt, zal het uw bestanden controleren en u waarschuwen wanneer ze veranderen.
doelen # doelen
De Doelen van het volgen van bestandssystemen zijn::
- Monitor gewijzigd en toegevoegd bestanden
- Logboek van wijzigingen en aanvullingen
- Mogelijkheid om terug te keren kleine wijzigingen
- Automatische waarschuwingen
Top
Algemene benaderingen # Algemene benaderingen
Beheerders kunnen het bestand monitor systeem via algemene technologieën, zoals:
- systeemgereedschappen
- Revision control
- OS/kernel-niveau bewaking
Top
Specifieke tools # Specifieke gereedschappen
Opties voor bestands-systeem monitoring zijn:
- diff – build clean test copy of your site and compare against production
- Git – source code management
- inotify and incron – OS kernel level file monitoring service that can run commands on file system events
- Watcher – Python inotify library
- OSSEC – Open Source Host-based Intrusion Detection System that performs log analysis, file integrity checking, policy monitoring, rootkit detection, real-time alerting and active antwoord.
Top
overwegingen # overwegingen
bij het configureren van een bestandsgebaseerde monitoringstrategie zijn er veel overwegingen, waaronder het volgende.
voer het monitoring script / service uit als root
Dit zou het moeilijk maken voor aanvallers om uw bestandssysteem monitoring oplossing uit te schakelen of aan te passen.
bewaking uitschakelen tijdens gepland onderhoud/upgrades
Dit voorkomt onnodige meldingen wanneer u regelmatig onderhoud op de site uitvoert.
alleen uitvoerbare bestandstypen controleren
Het kan redelijk veilig zijn om alleen uitvoerbare bestandstypen te controleren, zoals .php-bestanden, enz.. Het uitfilteren van niet-uitvoerbare bestanden kan onnodige logboekvermeldingen en waarschuwingen verminderen.
gebruik strikte bestandssysteem permissies
Lees meer over het beveiligen van bestandsmachtigingen en eigendom. In het algemeen, vermijd het toestaan van uitvoeren en schrijven machtigingen voor zover mogelijk.
Top
extern monitoren van uw webserver # extern monitoren van uw webserver
als de aanvaller probeert uw site te beschadigen of malware toe te voegen, kunt u deze wijzigingen ook detecteren met behulp van een webgebaseerde integriteitsmonitor-oplossing. Dit komt in vele vormen vandaag, gebruik maken van uw favoriete zoekmachine en op zoek naar Web Malware detectie en sanering en je krijgt waarschijnlijk een lange lijst van serviceproviders.
Top
Resources # Resources
- How to Improve WordPress Security (Infographic)
- Security Plugins
- WordPress Security Cutting Through the BS
- e-Book: WordPress vergrendelen
- wpsecure.net heeft een paar gidsen over hoe te vergrendelen WordPress.
- een beginnersgids voor het verharden van WordPress
- Brad Williams: Lock it Up (Video)
- 21 manieren om uw WordPress Site te beveiligen
- officiële documenten over het beveiligen van mappen met een wachtwoord met een .htaccess-bestand
- eenvoudige tutorial over het beveiligen met een wachtwoord van het WordPress-admin-gebied en het oplossen van de 404-fout
Top
zie ook # zie ook
- beveiliging FAQ
- FAQ – mijn site is gehackt
- Brute Force Attacks
- WordPress Security Whitepaper