PDA

Visualizza la versione completa : Sorgente file Batch


everyman
30-11-2008, 20:08
:D
Salve ragazzi,
devo farvi una domanda, ma ho paura che la risposta per voi sia ultra-banale,scontata,stupida eccecc...
Io sono un neofita del batch, fino ad ora ho solo programmato in PhP, nulla più.
Mi trovo però nella condizione di dover modificare un file batch, dato che -considerando la mia ingnoranza in materia- impiegherei molto più tempo a riscriverlo da zero.
Il problema è che quando apro il file con notepad visualizzo un codice incomprensibile: penso sia criptato in qualche modo.

Es:

if n%fpp%t %lo%xist C:\Wind%fpp%ws\syst%lo%m32\driv%lo%rs\%lo%t%wwy%\% lz%%fpp%sts g%fpp%t%fpp% :%lo%rr%fpp%r

La mia domanda è: C'è un qualche programma utile per permettermi di ottenere il codice sorgente?
Datemi una mano, pleeeeze! :fagiano:
Grazie!

oregon
30-11-2008, 22:10
Ci sono alcune lettere sostituite ... sembra essere

if not exist C:\Windows\system32\drivers\etc\hosts goto :error

ma non capisco il perche' di queste sostituzioni ...

everyman
30-11-2008, 22:16
Ma come può funzionare correttamente le script con queste sostituzioni? Come posso riconoscere i caratteri da sostituire?
Grazie mille oregon per la tua risposta!

oregon
30-11-2008, 22:40
Funziona se prepari le variabili



set fpp=o
set lo=e
set wwy=c
if n%fpp%t %lo%xist C:\Wind%fpp%ws\syst%lo%m32\driv%lo%rs\%lo%t%wwy%\% lz%%fpp%sts g%fpp%t%fpp% :%lo%rr%fpp%r


e' un metodo "ingenuo" di nascondere il codice ...

everyman
30-11-2008, 22:46
Trovato!

set ax=s
goto ax
set ax=em
:ax
set cwcpl=e
goto cwcpl
set cwcpl=lt
:cwcpl
set no=t
goto no
set no=zx
:no
Ma ad esempio, "ax" è "s", oppure "em"?
Grazie ancora!

oregon
30-11-2008, 22:51
Originariamente inviato da everyman
Trovato!

Cosa hai trovato? Dove lo hai trovato?


Ma ad esempio, "ax" è "s", oppure "em"?


In questo esempio le sostituzioni non hanno effetto dato che non compaiono le variabili usate ...

Ma, scusa, a che serve tutto cio' ? Che stai facendo ?

everyman
30-11-2008, 22:56
No, ecco... le variabili compaiono nella prima parte del codice...

%ax%%cwcpl%%no% qbwl=%ax%%cwcpl%%no%
%ax%%cwcpl%%no% lo=ugx
wazecwasrqqn
%ax%%cwcpl%%no% lo=e
goto lo
%ax%%cwcpl%%no% lo=kl
:lo
%qbwl% wwy=faf
%qbwl% wwy=c
goto wwy
%qbwl% wwy=wk
:wwy
%qbwl% lz=lmg
%qbwl% lz=h
goto lz
jdlnqrcyjvwjcwkfryuht
%qbwl% lz=at
:lz
%ax%%cwcpl%%no% fpp=etd
%ax%%cwcpl%%no% fpp=o
augageahzsrwwfnlhyutfxzxrajsmzr
goto fpp
%ax%%cwcpl%%no% fpp=ap
E scommetto che lì compaiono quelle della seconda parte del codice...
Però le variabili di prima come me lo trasformano il codice sopra?

Ps: Sto solo cercando di capire come funziona questo codice, ma fino a quando non riesco a leggerlo è un po' difficile.
Ancora Grazie Mille!

oregon
30-11-2008, 22:57
Però le variabili di prima come me lo trasformano il codice sopra?

Hai ignorato tutte le mie domande ... :confused:

everyman
30-11-2008, 22:59
Scusa... con "Trovato", volevo dire che ho rintracciato le variabili di cui parlavi nella prima parte del codice...
La funzione dello script dovrebbe essere quella di modificare il file host di windows dopo aver controllato se una voce è già presente nel file oppure no...

oregon
30-11-2008, 23:02
E perche' lo script e' cosi' "misterioso" ?

Loading