Het laden/opslaan van andere werkmappen verbieden (geen OLE-hack)
Een mogelijke kwetsbaarheid is dat Excel-werkmappen met behulp van VBA- of OLE-opdrachten naar schijf kunnen worden opgeslagen. Om deze methode van gegevensextractie te voorkomen, bevat XLS Padlock een krachtige beveiligingsoptie genaamd “Do not allow loading/saving other workbooks” (Het laden/opslaan van andere werkmappen verbieden).
Wanneer deze functie is ingeschakeld, zorgt ze ervoor dat de Excel-instantie waarop uw applicatie draait geen enkel ander werkmapbestand kan laden of opslaan. Dit weerhoudt gebruikers er effectief van om andere werkmappen te openen en voorkomt VBA-gebaseerde hacks die proberen gegevens naar een nieuw, onbeveiligd bestand te kopiëren.

Wat als mijn applicatie andere werkmappen moet opslaan? De SetHelper-VBA-oplossing
Section titled “Wat als mijn applicatie andere werkmappen moet opslaan? De SetHelper-VBA-oplossing”Deze beveiligingsfunctie blokkeert ook standaard-VBA-code voor het opslaan of laden van werkmappen. Als uw applicatie deze handelingen legitiem moet uitvoeren, is er een tijdelijke oplossing beschikbaar.
U kunt de beperking binnen uw VBA-code tijdelijk uitschakelen. Hiervoor moet u eerst de geavanceerde optie “Allow loading/saving other workbooks through VBA SetOption helper” (Het laden/opslaan van andere werkmappen via de VBA-SetOption-helper toestaan) hier inschakelen:

Vervolgens kunt u de volgende VBA-code gebruiken:
Dim XLSPadlock As ObjectSet XLSPadlock = Application.COMAddIns("GXLS.GXLSPLock").Object
' Temporarily disable the securityXLSPadlock.SetOption Option:= "2", Value:= "0"XLSPadlock.SetOption Option:= "1", Value:= "1" ' Also disable encrypted save prompt
' Your code to save a normal workbookActiveWorkbook.SaveAs "D:\My Documents\NormalWorkbook.xlsx"
' Re-enable the securityXLSPadlock.SetOption Option:= "2", Value:= "1"XLSPadlock.SetOption Option:= "1", Value:= "0"