Video: S7 PLC/TIA portal password bruteforce 2024
Per utilizzare qualsiasi macro in Excel, gli utenti devono abilitare i macro. Cioè, devono dare il permesso ad Excel di eseguire macro nel proprio ambiente. Per abilitare le macro, gli utenti fanno clic sul pulsante Attiva contenuto nell'avvertimento di sicurezza che si apre sopra la barra della formula.
La linea di fondo è che puoi scrivere tutte le macro fantasiose del mondo, ma non funzioneranno mai a meno che i tuoi utenti non abilitino le macro. Questo pone la domanda; puoi forzare gli utenti ad abilitare i macro? La risposta è sì - con un po 'di inganno.
L'idea è relativamente semplice. Crei un foglio chiamato, ad esempio, START. Quel foglio contiene solo un semplice avvertimento che afferma che le macro devono essere abilitate. Quindi si nascondono tutti i fogli nella cartella di lavoro eccetto per quel foglio INIZIO. Infine, scrivi una semplice macro che mostra tutti i fogli quando viene aperta la cartella di lavoro.
A questo punto, quando la cartella di lavoro è aperta, Excel chiederà all'utente di abilitare i macro. Gli utenti saranno costretti a farlo perché tutto ciò che vedranno sarà il foglio iniziale. Gli altri fogli saranno nascosti!
Per far funzionare questa tecnica, sono necessari due macro: una macro nasconde tutto tranne il foglio INIZIO quando la cartella di lavoro si chiude e un'altra macro che mostra tutti tranne il foglio INIZIO quando si apre la cartella di lavoro.
Per prima cosa, affronta le azioni che devono accadere quando si chiude la cartella di lavoro.:
-
Attiva Visual Basic Editor premendo ALT + F11 sulla tastiera
-
Nella finestra Progetto, trova il nome del progetto / cartella di lavoro e fai clic sul segno più accanto per visualizzare tutti i fogli.
-
Fai clic su ThisWorkbook.
-
Nella casella a discesa Evento, selezionare l'evento BeforeClose.
-
Digitare o incollare il codice seguente:
Sottopartito privato_BeforeClose (Annulla come booleano) 'Passaggio 1: dichiarare le variabili Dim ws come foglio di lavoro' Passaggio 2: mostrare le pagine iniziali ("START"). Visible = xlSheetVisible 'Step 3: Inizia a scorrere tutti i fogli di lavoro per ogni ws in ThisWorkbook. Passaggio 4 dei fogli di lavoro: controllare ciascun nome del foglio di lavoro Se ws. Nome "START" Quindi 'Step 5: Nasconde il foglio ws. Visible = xlVeryHidden End If 'Step 6: Passa al foglio di lavoro successivo Next ws' Step 7: Salva la cartella di lavoro ActiveWorkbook. Salva End Sub
Nel Passaggio 1, dichiari un oggetto chiamato ws per creare un contenitore di memoria per ogni foglio di lavoro che esegui il ciclo.
Al punto 2, assicurati che il foglio START sia visibile.
Nel passaggio 3, si avvia il ciclo, dicendo a Excel che si desidera valutare tutti i fogli di lavoro in questa cartella di lavoro.
Al punto 4, si confronta semplicemente il nome START con il foglio attualmente in loop. Questo passaggio garantisce che le azioni successive vengano applicate a tutti i fogli eccetto il foglio START.
Se i nomi dei fogli sono diversi, nel passaggio 5 si nasconde il foglio utilizzando la proprietà xlVeryHidden. Questa proprietà non solo nasconde il foglio ma impedisce anche all'utente di scoprirlo manualmente utilizzando l'interfaccia utente.
Si torna indietro per ottenere il foglio successivo nel passaggio 6.
Al punto 7, dopo aver valutato tutti i fogli, la macro salva la cartella di lavoro e termina.
Ora, devi scrivere una macro per gestire tutte le azioni che devono accadere quando si apre la cartella di lavoro:
-
Attiva Visual Basic Editor premendo ALT + F11.
-
Nella finestra Progetto, trovare il nome del progetto / cartella di lavoro e fare clic sul segno più accanto per visualizzare tutti i fogli.
-
Fai clic su ThisWorkbook.
-
Nel menu a discesa Evento, seleziona l'evento Apri.
-
Digitare o incollare il seguente codice:
Private Sub Workbook_Open () 'Step 1: Dichiarare le proprie variabili Dim ws As Worksheet' Step 2: Inizia a scorrere tutti i fogli di lavoro Per ogni ws In ThisWorkbook. Passaggio 3 dei fogli di lavoro: Mostra tutti i fogli di lavoro. Visibile = xlSheetVisible 'Passaggio 4: Passa al foglio di lavoro successivo Next ws' Passaggio 5: Nasconde i fogli di inizio foglio ("START"). Visible = xlVeryHidden End Sub
Nel Passaggio 1, dichiari un oggetto chiamato ws per creare un contenitore di memoria per ogni foglio di lavoro che si esegue il ciclo.
Nel passaggio 2, si avvia il ciclo, dicendo a Excel che si desidera valutare tutti i fogli di lavoro in questa cartella di lavoro.
Nel passaggio 3, viene visualizzato il foglio attualmente in loop. Questo passaggio visualizza in modo efficace tutti i fogli di lavoro man mano che ciascun foglio viene reso visibile.
Si torna indietro per ottenere il foglio successivo al passaggio 4.
Dopo che tutti i fogli sono stati resi visibili, il passaggio 5 nasconde il foglio INIZIO. Ancora una volta, si utilizza la proprietà xlVeryHidden in modo che l'utente non sia in grado di mostrare manualmente il foglio utilizzando l'interfaccia utente.
Dopo che entrambe le macro sono state implementate, avrai una cartella di lavoro che funzionerà solo se l'utente abiliterà le macro!