Als onderdeel van een checklist ben ik mij aan het verdiepen in de verschillende attack surfaces van Windows applicaties. Op dit moment ben ik bij DLL's / Shared Libraries aangekomen. De volgende checks zijn geen probleem:
1. Incorrecte file-system permissies: dynamische test om permissies te acherhalen. Bij verkeerde permissies een test-dll plaatsen/overschrijven.
2. DLL Planting / Hijacking: dynamische/statische tests voor: niet bestaande DLL/verkeerd gespelde DLL/geen volledig pad. Vervolgens test-dll plaatsen (eventueel met stub functies).
3. DLL OLE Sideloading: dynamische test om GUIDs te achterhalen en test RTF te maken.
4. Gevoelige Functies: dynamische en statische tests om gevoelige functies te vinden, b.v. uitschakelen zelf-protectie AV. Vervolgens een PoC schrijven welke deze DLL functie aanroept en test voor success (privileged / unprivileged user).
Vraag:
De volgende checks wil ik graag toevoegen maar daar heb ik nog geen goede tooling voor of snap ik niet voldoende. Input is welkom
Zijn er nog andere zaken om te testen?
1. Versie Check: bekende vulnerabilities.
Op dit moment print ik een overzicht van applicatie DLL's en kijk gebaseerd op naam welke interessant kunnen zijn. B.v. 7-zip, xml, e.d. Vervolgens Googlen op versie info. Dit is echter vrij omslachtig. Is er een applicatie welke dit kan auditen?
2. DLL Fuzzing: de enige voorbeelden die ik kan vinden worden door de applicatie zelf getriggered, b.v. parsen van een file of netwerk packet. Het zou echter ook mogelijk moeten zijn om DLL exports/functies direct te fuzzen, iemand die hier ervaring mee heeft of goede tutorials kan linken? Peach zou er support voor hebben en een commercieel product BeStorm.
1. Incorrecte file-system permissies: dynamische test om permissies te acherhalen. Bij verkeerde permissies een test-dll plaatsen/overschrijven.
2. DLL Planting / Hijacking: dynamische/statische tests voor: niet bestaande DLL/verkeerd gespelde DLL/geen volledig pad. Vervolgens test-dll plaatsen (eventueel met stub functies).
3. DLL OLE Sideloading: dynamische test om GUIDs te achterhalen en test RTF te maken.
4. Gevoelige Functies: dynamische en statische tests om gevoelige functies te vinden, b.v. uitschakelen zelf-protectie AV. Vervolgens een PoC schrijven welke deze DLL functie aanroept en test voor success (privileged / unprivileged user).
Vraag:
De volgende checks wil ik graag toevoegen maar daar heb ik nog geen goede tooling voor of snap ik niet voldoende. Input is welkom
1. Versie Check: bekende vulnerabilities.
Op dit moment print ik een overzicht van applicatie DLL's en kijk gebaseerd op naam welke interessant kunnen zijn. B.v. 7-zip, xml, e.d. Vervolgens Googlen op versie info. Dit is echter vrij omslachtig. Is er een applicatie welke dit kan auditen?
2. DLL Fuzzing: de enige voorbeelden die ik kan vinden worden door de applicatie zelf getriggered, b.v. parsen van een file of netwerk packet. Het zou echter ook mogelijk moeten zijn om DLL exports/functies direct te fuzzen, iemand die hier ervaring mee heeft of goede tutorials kan linken? Peach zou er support voor hebben en een commercieel product BeStorm.
This signature has been taken down by the Dutch police in the course of an international lawenforcement operation.