2010-03-17 10 views
11

आप जानते हैं कि उन पैक की गई जेएस फाइलें कैसा दिखती हैं, है ना?जावास्क्रिप्ट फ़ाइल की सामग्री को अनपैक कैसे करें?

 eval(function(p,a,c,k,e,d){ ... } ('obfuscated-string'.split('|'),0,{}))

यह सिर्फ इतना होने के लिए मैं कुछ बड़े विरासत कोड है कि उस तरह लग रहा है tweak करने के लिए है और मैं एक तरह से एक अधिक पठनीय संस्करण में इस बारी करने लगाना चाहते हैं कि क्या होता है।

यदि यह संभव नहीं है, तो क्या मैं कम से कम eval से छुटकारा पा सकता हूं?

उत्तर

11

आप कर सकते हैं ऑनलाइन unpackers साथ: इनमें से किसी एक का प्रयास करें, जिससे आप ढूंढने:

+0

उत्कृष्ट, ये काम बढ़िया है! –

13

जे एस Beautifier दोनों पुनः फ़ॉर्मेट करने और खोल देगा:।

http://jsbeautifier.org/

+0

मैंने इसे एक जटिल जावास्क्रिप्ट को अनपैक करने के लिए उपयोग किया। यह साफ रूप से अनपॅक किया गया। – srv

+0

यह एक अच्छा है। मैंने जावास्क्रिप्ट कोड को दोबारा सुधारने के लिए इसका इस्तेमाल किया है। – Vasyl

0
eval(function(W,H,A,K){function z(i){return(i< 62?'':z(this['parseInt'](i/62)))+((i=i%62)>35?String.fromCharCode(i+29):i.toString(36))}for(var i=0;i<W.length;i++)A[z(i)]=W[i];function d(w){return A[w]?A[w]:w;};return H.replace(/\b\w+\b/g,d);}('alert|Testing|packed'.split('|'),'0("1 0 2");',{})); 

मुझे क्या document.getElementById ('परीक्षण') मूल्य के लिए eval बदल रहा है = और फिर यकीन है कि मुझे एक पाठ क्षेत्र है बनाना (कोई डोम पार्स, Multilines) wuth आईडी

test.value=(function(W,H,A,K){function z(i){return(i< 62?'':z(this['parseInt'](i/62)))+((i=i%62)>35?String.fromCharCode(i+29):i.toString(36))}for(var i=0;i<W.length;i++)A[z(i)]=W[i];function d(w){return A[w]?A[w]:w;};return H.replace(/\b\w+\b/g,d);}('alert|Testing|packed'.split('|'),'0("1 0 2");',{}));
<textarea id=test rows=9 cals=77></textarea>

= 'परीक्षण'

+0

http://www.scriptcompress.com/unpack.htm एक ऑनलाइन उपकरण है जिसे मैंने अनपॅकिंग के लिए बनाया है, http://www.scriptcompress.com/decoder.htm इसे डीओएम में जेएसओएन पार्सर के माध्यम से डीकोड करने का प्रयास करेगा और अधिक –

+0

वाह, यह स्टैक स्निपेट चीज़ मेरे लिए नया था। –

संबंधित मुद्दे