javascript-obfuscator / javascript-obfuscator/gulp-javascript-obfuscator

Obfuscating going wrong - Not same result always

Aperta
#34 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
JavaScript
Stelle
103
Fork
37
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

node --version
v10.16.3
"gulp-concat": "~2.3.3",
"gulp-preprocess": "^1.2.0",
"gulp-javascript-obfuscator": "^1.1.2",
The following gulp code is used:

```
var preprocess = require('gulp-preprocess'),
concat = require('gulp-concat'),
javascriptobfuscator = require('gulp-javascript-obfuscator');

gulp.task('app', function() {
return gulp.src('./js/app.js')
.pipe(preprocess({
context: {
HOST: host,
VER: ver
}
}))
.pipe(concat('app.js'))
.pipe(javascriptobfuscator({
reservedStrings:['loadScript','loadCss']
}))
.pipe( gulp.dest('dist/target/js'));
});
```

The following code:
`if(index < scriptFiles.length-1)`

is converted to:
` if (_0x219af0 < _0x441e3a[_0x56ae('0xf')] - 0x1)`

If I step through in Chrome Browser, __0x56ae('0xf')_ is incorrectly equated as '_style_' instead of '_length_'.
If I build it again, it goes fine.
So, it is intermittent. Can somebody point if I am doing anything wrong?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia con il task gulp mostrato, in particolare con l’input ./js/app.js e il file generato dist/target/js/app.js, quindi esegui ripetutamente la build e confronta l’output offuscato in Chrome. Il lavoro è completato quando build ripetute mappano correttamente la proprietà length in modo consistente, invece di produrre intermittentemente il mapping di style.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
build-system
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.