PEN test
Een PEN test is een penetratietest. Een test om te kijken en te controleren of je ergens binnen kunt komen. Dat kan een file server zijn maar dat kan ook een web server zijn. We gaan in deze les zelf een PEN test uitvoeren op onze eigne web site en we gaan de website daarna veiliger maken.
Het uitvoeren van de PEN deel van het examen Veilig programmeren.
Overzicht
Testen op XAMP heeft weinig zin, omdat dat een afgeschermde development omgeving is en een development omgeving is niet veilig (zie opgave 1).
We gaan dus een productieomgeving inrichten daarvoor gebruiken we VMWare. Dit lijkt heel erg op een echte productie machine. Als je nog van plan bent om zelf een productieserver in te richten, let dan goed op want de stappen die we gaan nemen zijn vrijwel hetzelfde bij het inrichten van een VM.
Via VMWare gaan we een CentOS (7) Linux machine inrichten. Er zijn meerdere Linux distributies, maar CentOS is gratis en wordt veel gebruikt als (web)server.
Nadat we een Linux server hebben, gaan we deze installeren en inrichten. Hiervoor zul je ene boel moeten uitzoeken op het internet. In deze les worden alleen de stappen beschreven; je moet zelf uitzoeken en overleggen hoe het allemaal precies werkt.
Als de server is ingericht met MariaDB, PHP7.x en een Apache webserver dan gaan we onze eigen web applicaties installeren. Het beste is als we een PHP voorbeeld en Laravel voorbeeld kunnen gebruiken. Dan kunnen we de verschillen zien.
Met een zogenaamde Nikto scan gaan we de test uitvoeren.
Installation
Install VMWare Workstation 15.
(https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html)
New VM
Download CentOS DVD: http://isoredirect.centos.org/centos/7/isos/x86_64/
(ik heb deze lijnk gekozen: http://centos.mirror.triple-it.nl/7.7.1908/isos/x86_64/CentOS-7-x86_64-DVD-1908.iso)
Install CentOS
Start VMWare PLayer op en start en install van de ISO die je hebt gedonwload.
kies Engels als taal (Ireland).
zet
User aanmaken
"Never use root";, dus we gaan een nieuwe user aanmaken.
Maak een nieuwe user aan en geef deze een nieuw wachtwoord
useradd max
passwd max
Hier is de user max aangemaakt, je kunt natuurlijk een eigen naam kliezen.
Nu moeten we de user max nog rechten geven om zichzelf root te maken, dat doen we als als volgt:
vi /etc/sudoers
type shift-g (einde file)
type shift-a (invoegen einde regel)
enter (volgende regel)
type:
max <TAB> ALL=(ALL:ALL) <TAB> ALL
type esc (escape toets)
type :w! (schrijf file weg)
type :q (quit editor)
We gaan later nog een andere editor installeren die minder ingewikkeld is.
We proberen of je kunt aanloggen met de nieuwe user.
SSH Client
Nu is het tijd om een SSH Client te gaan installeren.
Download MobaXterm en installeer dit programma.
Tools - MobaKeyGen (SSH key generator) - genereer key en save private key Key en noem deze SSH-key-VM
Deze file goed bewaren.
Rechter muis edit session - Advanced SSH Settings - Use private key en selecteer de net gemaakte file.
Install Software
Install 'makkerlijke' editor.
sudo yum install nano
Opgaven
- Noem een aantal zaken waar je aan zou moeten denken als je een web site vanuit jouw XAMPP development omgeving in productie zou willen zetten. Wat moet je veranderen/aanpassen?