Wat is MIME-sniffing en hoe voorkom je het?
Door Anja de Crom

Wat is MIME-sniffing en hoe voorkom je het?

Heb je de Joomla-update naar versie 3.9.3 doorgevoerd? Dan heb je misschien wel gezien dat er een post-installatiebericht was, waarin staat dat je je .htaccess-bestand moet aanpassen met een paar regeltjes code om MIME-sniffing uit te schakelen. Wat dat is en hoe je het aanpast lees je in deze blog.

Wat is MIME-sniffing?

Elke website laadt bestanden. Die bestanden (content) zijn altijd van een bepaald type. Een css-bestand bijvoorbeeld (stylesheet), of afbeeldingsbestanden. Dat heet een MIME-type. MIME betekent Multipurpose Internet Mail Extensions. In je bestand is informatie opgeslagen over het type bestand. Bij elk bestand probeert de browser te bepalen (door eraan te “ruiken”, vandaar het woord sniffing) wat ermee moet gebeuren. Is het bestand dat geladen wordt uitvoerbaar (exe), dan zal de browser het uitvoeren.

Waar zit het gevaar?

Als je site niet zo heel goed beveiligd is, of je hebt – bijvoorbeeld – een optie om foto’s te uploaden, dan kan het gebeuren dat kwaadwillenden bestanden vermomd als onschuldige content op je website plaatsen. Een bestand dat een plaatje of een stylesheet lijkt, kan dan eigenlijk code zijn. Als de browser zelf bepaalt wat er met zo’n bestand moet gebeuren zal een uitvoerbaar bestand altijd worden uitgevoerd en dan heb je de poppen aan het dansen.

Wat kun je doen?

In de .htaccess van je website kun je tegen je browser vertellen: als aangegeven wordt dat dit een bepaald bestandstype is, ga dan niet zelf gokken wat het is, maar behandel het als dat bestandstype. Ook al is het bestandstype een vermomming voor iets anders. Je vermindert daarmee dus het risico dat kwaadaardige code op jouw site wordt uitgevoerd.
Je moet je .htaccess aanpassen als je een bestaande site update. Joomla kan namelijk niet jouw .htaccess aanpassen als die eenmaal bestaat.

Welke code moet je toevoegen?

Het stukje code dat je kunt toevoegen in je .htaccess-bestand is een security header. Draait je server op Apache, dan ziet de code er zo uit:
<IfModule mod_headers.c>
Header always set X-Content-Type-Options "nosniff"
</IfModule>
In de Joomla-documentatie kun je zien hoe  en waar je de code moet toevoegen: https://docs.joomla.org/J3.x:Joomla_3.9.3_Security_Notes/nl. Daar zie je ook de juiste codes voor andere webservers.

Nosniff-code en Admin Tools

Heb je Admin Tools op je website (voor de niet-kenners: Admin Tools is een firewall voor Joomla)? Dan hebben we goed nieuws voor je: als je met de .htaccess-maker van Admin Tools een aangepaste .htaccess hebt gemaakt, worden die MIME-veiligheidsrisico’s afgevangen (ook als je dat al een tijdje geleden hebt gedaan; die functionaliteit zit er al sinds 2015 in). Goed om te weten: de .htaccess-maker werkt alleen op Apache webservers. En ook goed om te weten: als je bij het installeren van Admin Tools de Quick Setup doorloopt, maakt-ie automatisch een aangepaste .htaccess aan. Tenzij je dat uitvinkt natuurlijk.

Twijfel je?

Heb je geen Admin Tools, of weet je niet of je de .htaccess-maker gebruikt hebt? Zet dan voor de zekerheid de code gewoon in je .htaccess bestand (dat bereik je onder andere via de file manager bij je hosting).

Heb je een onderhoudscontract bij WebLab42?

Als WebLab42 voor jou het onderhoud van je site doet, dan hebben wij indien nodig je .htaccess voor je aangepast.
Denk je na het lezen van deze blog: dit gaat me allemaal boven mijn pet? Niets houdt je tegen om het onderhoud door ons te laten doen :). Neem gerust contact op als je meer wilt weten: 026 – 737 02 31.

Adres

WebLab42

Infanteriestraat 29

6822 NH Arnhem

Telefoon: 026-7370231

post@weblab42.nl

KvK: 70477973

Officieel!

WebLab42 is officieel gecertificeerd Joomla Administrator (lees hier wat dat betekent)

WebLab42 staat vermeld in de Joomla! Resources Directory