Wij zijn |

API pentest uitvoeren

icon van een bedrijfsnetwerk pentest

Het gebruik van Application Programming Interfaces (API’s) wordt steeds populairder. Voor veel organisaties zijn API’s belangrijk voor het functioneren van hun applicatie en deze API’s ontsluiten vaak gevoelige (persoons)gegevens. Maar hoe weet je dat jouw (nieuwe) API veilig en niet te hacken is? Een API pentest (ook wel API penetratietest genoemd) geeft antwoord op deze vragen.

 

 

Wat is een API

API is een acroniem voor Application Programming Interface en het is een verzamelnaam voor applicaties die kunnen communiceren met (delen van) andere applicaties. Veel websites maken onderliggend gebruik van API-functies om gegevens bij derden op te halen. Dit gebeurt zonder dat de eindgebruiker dit door heeft. Moderne API’s maken veelal gebruik van ontwikkelaarsvriendelijke documentatie waarin de functionaliteiten tot in detail worden beschreven. Vaak ontsluiten API’s gevoelige informatie zoals persoonsgegevens en daarom is het van belang dat deze goed beveiligd zijn.

 

Wat is een API penetratietest

Een API penetratietest is een pentestvorm waarbij ethical hackers de beveiliging van (het ontwerp van) een API toetsen. Deze penetratietest omvat meerdere testcasussen waarbij een breed scala aan beveiligingsproblemen geïdentificeerd proberen te worden; van het robuuster maken van de communicatielijnen tot het ongeoorloofd toegang krijgen tot gegevens.

 

Hoe voeren wij een API pentest uit?

Het pentesten van een API komt in vele overzichten overeen met het pentesten van een webapplicatie. Toch is de aanpak van een API pentest anders dan een webapplicatie pentest. Dit komt omdat API’s onderliggend gebruikmaken van communicatietechnologieën zoals XML, SOAP en REST.

Een API-pentest wordt door onze ethical hackers altijd handmatig uitgevoerd. Tijdens de pentest worden gangbare methodieken zoals de PTES, OWASP top 10 maar ook de creativiteit van de hacker als leidraad gebruikt. Zo  hopen we een zo realistisch mogelijk beveiligingsbeeld te kunnen schetsen.

Voorafgaande de test wordt er tijdens de intake de scope vastgesteld. Al onze pentesters zijn minimaal OSCP gecertificeerd en zullen zich tijdens de pentest strikt aan de scope houden.

We testen de API bij voorkeur in een non-productieomgeving zoals een acceptatieomgeving. Mocht dit niet mogelijk zijn, dan zullen onze ethische hackers uiteraard uiterst voorzichtig te werk gaan. De continuïteit van uw bedrijfsomgeving staat bij ons op de eerste plaats. Tijdens de API pentest kan er vanuit drie verschillende testvormen gepentest worden:

Blackbox

Bij deze pentestvorm beschikt de pentester over minimale informatie van de API en onderliggende infrastructuur. Op deze manier ligt de API pentest dichtbij de realiteit. Echter is deze pentestvorm vaak inefficiënt. Zo moet de pentester veel tijd stoppen in het identificeren van valide API-functies. Daarnaast beschikt de pentester niet over inloggegevens en kan daardoor alleen “de voorkant” van de applicatie onderzocht worden.

Greybox

Tijdens een greybox API pentest beschikt de pentester in zekere mate over informatie van de API. Daarnaast worden er inloggegevens aan de pentester ter beschikking gesteld. Daardoor kan de pentester efficiënt met zijn tijd omgaan en kan er doeltreffend onderzoek uitgevoerd worden.

Whitebox

Bij een whitebox API pentest beschikt de pentester over alle mogelijke informatie. Naast inloggegevens en de beschrijving van de API-functies kan hier gedacht worden aan de broncode van de API. Zo kan de pentester een zo volledig mogelijk beeld schetsen van het beveiligingsniveau van de API. Het is echter minder realistisch dat een kwaadwillende hacker over deze vergaande informatie kan beschikken.

Wat kost een API pentest

De kosten zijn vaak een bepalende factor voor het wel of niet laten uitvoeren van een API pentest. Helaas is op deze vraag niet een eenduidig antwoord te geven, dit komt omdat elke test verschilt in tijd en diepgang. Het uitvoeren van een API penetratietest zonder inloggegevens van drie functies verschilt van het uitvoeren van een API penetratietest met inloggegevens, broncode en tientallen functies.

Wel kunnen we enkele indicaties geven. Zo kunt u bij een relatief kleine API pentest met het blackbox perspectief rekenen op een prijs vanaf €2000,-. Bij een complexere API met verschillende gebruikersrollen waarbij de broncode ook onderdeel is van het onderzoekt kan er gedacht worden aan een prijs vanaf €12.500,-. Tijdens een intakegesprek zullen onze consultants de scope en mogelijkheden met u bespreken zodat er een voorstel op maat gemaakt kan worden.

 

Conclusie

Het gebruik van API’s neemt alsmaar toe en het is daarom belangrijk dat deze goed beveiligd zijn tegen hackaanvallen. Door het laten uitvoeren van een API pentest kunt u de zwakke plekken in uw API vroegtijdig identificeren en oplossen. Het pentesten van een API vereist vaak specialisme. Wilt u gebruik maken van onze specialisme of heeft u andere (beveiligings)vragen? Neem dan vrijblijvend contact met ons op via onze contactpagina.

 

Hoe kunnen wij u helpen?

QR Codes: Het onverwachte wapen in Device Code Phishing

Device code phishing, net als aanvallen via Adversary-in-the-middle (AiTM), vertegenwoordigt een geavanceerde vorm van cyberdreiging die zich onderscheidt van traditionele phishing. Device code phishing exploiteert de ‘OAuth2 Device Authorization Grant flow‘ van Microsoft Azure, die gebruikers in staat stelt zich aan te melden bij apparaten met beperkte invoermogelijkheden.

read more

CORS: het belang van Cross-Origin Resource Sharing

Bij onze klanten zien we een toenemende implementatie van Cross-Origin Resource Sharing (CORS). Helaas constateren we ook een stijging in het aantal onveilig geconfigureerde CORS-implementaties. In deze blog duiken we dieper in wat CORS is, de meest voorkomende misconfiguraties en hun potentiële risico’s, en hoe je sterke CORS-regels kunt instellen om je webapplicaties te beschermen.

read more