جاواسکریپټریک فائس بې اعتباره - د خپل JS کوډ آنلاین ساتنه او پټ کړئ

·

3 دقیقې لوستل

جاواسکریپټریک فائس بې اعتباره - د خپل JS کوډ آنلاین ساتنه او پټ کړئ

جاوا اسکریپت یو عصری پروګرام ژبه ده چې پراخه او متحرک ویب پاڼه منځپانګه جوړوی. په زړه پورې ده، دا د یو تار په اصل کار کوی. دا په دې مانا چې تاسو کولی شئ په یو وخت کې یوازې یو عملیات ترسره کړئ. څیزونه په مستقیم ډول جوړیدلی شی، او متغیرونه ثابت جامد ډولونه نه لری.

جاوا اسکریپت د ډیرو ویب پرمختګونو لپاره اسانه دی، او د هغې غوښتنلیک کوډ د کاروونکو او هر چا لخوا د لاسرسی وړ دی. دا د ویب پاڼې د پرمختګونو لپاره د جاوا اسکریپت د کارولو تر ټولو ستونزمنه برخه ده. په دې ډول، ډیری برید کوونکی کولی شی په اسانۍ سره د ویب پاڼې کوډ او د ډاټا کمزورتیاوو ته لاسرسی ولری او ترې ګټه پورته کړی.

د جاوا اسکریپت لخوا تولید شوی کوډ باندې د بریالیتوب یا خوندی کولو لپاره، پراختیا ورکوونکی یو تخنیک کاروی چې جاوا اسکریپت مبهم بلل کیږی. په دې مقاله کې، تاسو به جاوا اسکریپت مبهم وڅیړئ، څنګه تاسو کولی شئ د JS کوډ ساتنه او خوندی کړئ، او د JS مبهم اهمیت وڅیړئ.

د کوډ د خوندی کولو پروسه، په کوم کې چې پرمختګونه اصلی کوډ په یوه ستونزمن بڼه بدلوی یا بدلوی چې انسانان په اسانۍ سره نه شی پوهېدلی پداسې حال کې چې د کوډ صحیح اجرا ډاډ ترلاسه کوی. د کوډ کولو برعکس (کوم چې د تعدیل شوی کوډ ډیکوډ کولو لپاره کیلی ته اړتیا لری)، مبهم توب د اصلی کوډ د بیا جوړښت لپاره هیڅ کیلی ته اړتیا نه لری. 

د دې پروسې اصلی موخه د غیر مجاز لاسرسی، معکوس انجینری او د فکری ملکیت غلا مخنیوی یا مخنیوی دی.

مبهم کول کولی شی بیلابیلو موخو او ګټو ته خدمت وکړی چې له امله یې کارول کیږی، چې ځینې یې په لاندې ډول دی:

مبهم توب ستاسو کوډ او حساس معلومات د سایبری غلو او برید کوونکو څخه ساتی، په دې توګه ستاسو د پروژې محرمیت فعال کوی.

مبهم کوډونه کولی شی د هیکرانو لپاره دا ستونزمنه کړی چې دوی ډیبګ کړی ترڅو دوی د ناوړه موخو لپاره وکارول شی.

مبهم کول به د یو کس د تاکتیکونو او ستراتیژۍ د بې ساری تطبیق د ساتنې له لارې د رقابتی ګټې تضمین کړی.

ځینې کوډونه حساس معلومات، کیلی یا منطق لری چې د عملیاتو لپاره مهم دی خو باید عامو خلکو ته څرګند نه شی، ستاسو د معلوماتو د نشتوالی مخه نیسی او د معلوماتو سره مرسته کوی چې یوازې ستاسو لپاره وی.

لاندې د جاوا اسکریپت مبهم مثال دی:

په JS کې د Hello د کلمې اصلی کوډ داسې ښکاری:

تابع greet(name) {

    return "Hello, " + name + "!";

}

د مبهم کولو عملیات لاندې کوډ په دې بدلوی:

تابع _0x2c56(_0x1a73){return 'Hello, '+_0x1a73+'!';}

دواړه کوډونه ورته مانا لری، او د دوی محصول هیڅ توپیر نه لری، مګر د تایپو توپیر د کوډ د پام وړ ساتنې سبب کیږی. پیچلی شیانو ته لاسرسی تل ډیر ستونزمن وی.

د JS مبهم کار په لاندې ډول ښودل شوی دی

ټول پروسه ځینې ګامونه تعقیبوی لکه 

دلته د تشریحی متغیر نومونو بدلول د بې مانا تارونو سره ترسره کیږی (د بیلګې په توګه، د کارن نوم a1b2c3 کیږی)

د ښه پوهاوی لپاره لاندې یو مثال ورکړل شوی دی

اصلی کوډ:

function calculateTotal(price, tax) {

    د بیرته راتګ قیمت + (قیمت * مالیه)؛

}

دا کوډ کیدای شی د مبهم کولو وروسته داسې ښکاری

مبهم کوډ:

تابع _0x45a1(x,y){return x+(x*y);}

دا د سټرینګ کوډ په نوم هم پیژندل کیږی. دا یوه داسې پروسه ده چې د هغې په وسیله حساس ډاټا لکه یو آر ایل یا اې پی آی کیلی د کوډ دننه د تارونو سره کوډ کیږی. لاندې د سټرینګ کوډ کولو یو مثال دی:

اصلی کوډ:

const apiKey = "ABC123";

مبهم نسخه در زیر آورده شده است.

مبهم کوډ:

const _0x3d2a = "\x41\x42\x43\x31\x32\x33";

 په لنډه توګه چې د کوډ چپنه بلل کیږی. پیچلی کوډ جوړښتونه ساده دی، تبصرې لیرې کیږی ترڅو د امکان تر حده د لوستلو وړتیا کموی.

اصلی کوډ:

یو ساده کوډ کیدای شی داسې ښکاری

function checkAccess(user) {

    اګر (user.role === "admin") برګردد true;

    else return false;

}

مبهم کوډ:

تابع _0x1a2b(_0x3c4d) {

    return _0x3c4d["\x72\x6f\x6c\x65"] === "\x61\x64\x6d\x69\x6e" ? !0x0 : !0x1;

}

 د لوستلو وړتیا په زیاته پیمانه کمیږی، لکه څنګه چې پورته وړاندې شوی دوو کوډونو تر منځ د توپیر څخه لیدل کیږی.

دا د کوډ چپنه او کنټرول جریان بدلولو ته ورته دی. دا د اصلی کوډ لپاره د بې مانا کوډ ټوټې اضافه کول دی چې دا لږ لوستل کیږی.

function validateInput(input) {

    اګر (input.length > 5) return true;

    else return false;

    // لاندې مړه کوډ

    const x = 10;

    console.log("دا هیڅکله نه چلیږی");

}

د دې کوډ د مړه کوډ داخلولو نسخه (مبهم ) په دې ډول ښکاری :

function validateInput(input) {

    if (input.length > 5) {

        // مړه کوډ چې هیڅ ګټور کار نه کوی

        const unusedVar = Math . random () * 100 ;

        console.log("This is part of the dead code: ", unusedVar);

        return true;

    } else {

        // نور مړه کوډونه لاندې

        let fakeCondition = input.includes("secret");

        if (fakeCondition) {

            console.log ("دا شرط جعلی او بې ارزښته دی")؛

        }

        return false;

    }

    // ناقابل رسیدنی مړه کوډ

    const x = 10;

    const y = 20;

    console.log("دا به هیڅکله اجرا نه شی مګر برید کوونکی مغشوش کوی: ", x + y);

}

په JS کې د ډیبګ ضد تخنیک بې ساری دی او د ډیبګر بیانونه، کنسول موندنه، او د وخت بریدونه شامل دی ترڅو د کوډ او ډیبګنګ مخه ونیسی.

setInterval(function(){

    if (typeof console._commandLineAPI !== 'undefined') {

        alert("Debugger کشف شو!");

        window.location.href = "about:blank";

    }

}, 1000);

ورته کوډ، کله چې د JS مبهم آلې په کارولو سره په یو مبهم نسخه کې تعدیل شی. د انټی ډیبګنګ د اضافی طبقې په کارولو سره پوهیدل او تحلیل کول ستونزمن شوی دی.

مبهم کوډ:

(تابع () {

    var _0x3c87 = ['_commandLineAPI', 'undefined', 'about:blank'];

    (تابع (_0x4d1b99, _0x1ea782) {

        var _0x223b1b = تابع (_0x234219) {

            while (--_0x234219) {

                _0x4d1b99['push'](_0x4d1b99['shift']());

            }

        };

        _0x223b1b(++_0x1ea782);

    }(_0x3c87, 0x18f));

    var _0x4a68 = تابع (_0x4d1b99, _0x1ea782) {

        _0x4d1b99 = _0x4d1b99 - 0x0;

        var _0x223b1b = _0x3c87[_0x4d1b99];

        بېرته _0x223b1b ؛

    };

    setInterval(تابع () {

        if (typeof console[_0x4a68('0x0')] !== _0x4a68('0x1')) {

            alert('Debugger کشف شو!');

            window['location']['href'] = _0x4a68('0x2');

        }

    }, 0x3e8);

})();

دا یوازې ځینې ساده ګامونه (تخنیکونه) وو چې څنګه د کوډ یوه ساده او ضروری ټوټه د مشکل تر ټولو لوړې کچې ته تبدیل کیدی شی، چې دا د یو ډیر پرمختللی او پیچلی کوډ په څیر ښکاره کیږی.

په JS کې د مبهم کولو د غوره کړنلارو لپاره، څو وړاندیزونه شتون لری چې عملی یې کړی.

د قوی بدلونونو د لرې کولو لپاره د جاوا اسکریپت Obfuscator یا UglifyJS د باور وړ مبهمکارانو عملیات.  

مبهم توب د دفاع د پیل طبقه ده. د مختلفو تخنیکونو سره جوړه کول لکه سخت ازموینه، خوندی کوډ کړنلارو، او داسې نور کولی شی ستاسو پروژې ته یو نه ماتیدونکی ساتنه ورکړی.

د راتلونکی ډیبګنګ لپاره د اصلی کوډ او چارټرنګ یو واضح نسخه خوندی کړئ. دا به تاسو ته اجازه درکړی چې خپل اصلی کوډ ته لاسرسی ولرئ، په دې توګه د تعدیل پروسه اسانه کوی.

د نویو ګواښونو په اړه تازه واوسئ او د مبهم کولو تاکتیکونه یې له دې سره سم بدل کړئ.

د مبهم کولو مفکوره د سایبری بریدونو څخه ستاسو د پروژو د اخلاقی ساتنې احساس سره راغله. په دې توګه، د هغې ناوړه کارول کیدای شی د بدو شرایطو لامل شی، لکه:

سایبری مجرمین اکثرا د مبهم کولو تخنیک کاروی ترڅو خپل خطرناک سکرپټونه یا جنایی ریکارډونه پټ کړی.

مبهم کول هم کولی شی د یو کس په خلوت یرغل وکړی، سکرپټونه تعقیب کړی، او داسې نور. دا تل اړینه ده چې د داسې تخنیکونو مناسب استعمال په پام کې ونیول شی. د داسې شیانو تر منځ توازن ساتل د ابهام ترسره کولو لپاره لومړی ګام دی.

په داسې حال کې چې ستاسو د کوډ او پروژو د ساتنې لپاره د مبهم کارول ډیر ګټور دی، دا بې خطا نه دی. دا ځینې محدودیتونه لری چې کولی شی تاسو د کارولو په وخت کې ځوروی. د هغې ځینې ناپوره نیمګړتیاوې په لاندې توګه بحث شوی دی:

که ستاسو کوډ د اړتیا څخه زیات مبهم وی، دا به ستاسو د کوډ د رن ټایم باندې منفی اغیزه وکړی، په ځانګړې توګه که متحرک نسل یا بې ځایه کوډ میتودونه کارول کیږی.

ماهر هیکرز یا حمله کوونکی کولی شی ستاسو د مخکې له مخکې مبهم کوډ باندې مبهم کار واخلی، په پای کې ستاسو د کوډ هیڅ ساتنه نه پریږدی.

مبهم کوډ تل ستونزمن وی چې د غیر ضروری کرښو د اضافه کولو له امله د هغه د ساتنې لپاره کارول کیږی. دا د پروګرام جوړونکو لپاره چې د اصلی کوډ او مبهم کوډ د پرمختیایی ټیم برخه نه وه لا ډیره ستونزمنه ده.

د مبهم کولو ځانګړی تخنیکونه په ټولو براوزرونو یا چاپیریالونو کې د لاسرسی وړ نه دی، نو په دې توګه د کوډ په تولید یا کار کې د تخنیکی مسایلو چانس زیاتیږی.

جاوا اسکریپت مبهم کول یو پیاوړی او ګټور وسیله ده چې د یو کس کوډ د غلا ، هیکرانو ، برید کوونکو ، لاس وهنې او معکوس انجینرۍ په مقابل کې ساتنه کوی. په داسې حال کې چې دا ستاسو د حساسو معلوماتو او معنوی ملکیت لپاره د کوډ کولو له لارې ستاسو په کمپیوټر کې خوندی ساتل شوی ساتنه ده ، دا د خوندیتوب لپاره دایمی یا نه ماتیدونکی حل دی.

 پراختیا ورکوونکی باید یوازې په مبهم توب تکیه ونه کړی. د هغه د تخنیکونو ، ګټو او محدودیتونو په اړه د کافی پوهې او پوهې په ترلاسه کولو سره ، پراختیا ورکوونکی کولی شی دا ستاسو د کوډ د وروستی ساتنې لپاره ډیر ارزښتناک او اغیزمن کړی.

په داسې حال کې چې دا ځینې ګټې ، محدودیتونه او هر هغه څه لری چې یوه پروسه یا تخنیک شتون ته اړتیا لری ، د هغې اصلی ځواک په دې حقیقت کې دی چې دا د پوړ دفاعی ستراتیژۍ یوه برخه ده. تاسو باید کافی تمرین وکړئ ترڅو دا ستاسو لپاره تر بل هر چا ډیر اغیزمن ، ګټور او ګټور وګرځوی. دا مرسته کوی چې ستاسو د جاوا اسکریپت کوډ بشپړتیا ، محرمیت او اعتبار په هر وخت کې په ډیجیټل منظره کې ډاډ ترلاسه کړی. 

په لنډه توګه ، دا یوه وسیله ده چې تاسو سره مرسته کوی چې خپل محرمیت وساتی او تاسو دې ته هڅوی چې د خپلو معلوماتو د ساتنې لپاره د لا زیاتو اغیزمنو لارو په اړه فکر وکړئ.

د نورو وسایلو لپاره چې ستاسو د ویب پراختیا ښه کولو لپاره ، وګورئ :

دا یو تخنیک دی چې د هغې په وسیله یو پروګرام جوړونکی خپلې پروژې ته امنیت زیاتوی. دا یو ډیر ګټور تخنیک دی چې د پروګرام جوړونکو لخوا کارول کیږی ترڅو ستاسو کوډ د غلا ، برید کوونکو ، پروګرامونو ، هیکرانو په وړاندې پیچلی کړی.

مبهم توب د دفاعی طبقې د ستراتیژۍ له لارې کار کوی ، ستاسو په اصلی کان کوډ کې د کوډ بې مانا کرښو اضافه کولو سره چې دا د نورو لپاره لږ لوستل کیږی او په دې توګه د محرمیت یوه طبقه اضافه کوی.

نه، د JS مبهم کیدی شی بیرته وګرځول شی. یو ځل چې کوډ مبهم شی، دا خپل اصلی بڼې ته نشی بیرته راګرځیدلی. دا یو اړخیزه پروسه ده. دا تل سپارښتنه کیږی چې د خپل اصلی کوډ یوه کاپی وساتئ. 

د نورو امنیتی وسایلو لپاره، د UrwaTools امنیتی څانګې ته مراجعه وکړئ.

 

د دې سایټ کارولو په دوام سره تاسو زموږ د کوکیز کارولو سره رضایت لرئ زموږ سره د کوکیز کارولو رضایت د محرمیت تګلاره.