د اداري برخې لېږدول admin.example.com ته ریښتینې ښه والی دی: دا اداري کوکیز له عامه پاڼو لرې ساتي، دواړو اپلیکیشنونو ته جلا کیش ورکوي او اجازه ورکوي چې سخت شبکه یي تګلاره یو کوربه نوم ته واړوئ. خو دا د CSRF کنټرول نه دی، او د عامه سایټ کوډ د ننوتلي مدیر په وړاندې پرانیستی ساتل خوندي نه کوي. جلا کول هغه څه بدلوي چې براوزر یې پوله ګڼي، نه هغه څه چې سرور یې کتنه کوي، نو د دندې بشپړېدو له ویلو مخکې دا څلور کتنې ترسره کړئ.

اصل او سایټ د دوو جلا کلمو په توګه ولولئ

اصل یعنی سکیم، کوربه او پورټ، نو https://www.example.com او https://admin.example.com جلا اصلونه دي. سایټ د SameSite په مانا کې سکیم جمع د ثبت وړ ډومین دی، نو هغه دوه کوربه نومونه معمولا یو شان سایټ دي. همدا توپیر ټوله تله ده: د SameSite ځانګړنه به د خویندو فرعي ډومینونو ترمنځ مرسته ونه کړي، ځکه براوزر غوښتنه په بشپړه توګه د سایټ ترمنځ نه ګڼي. اداري برخه واقعیا بل د ثبت وړ ډومین ته، لکه admin-example.net، واړوئ، نو غوښتنه واقعیا د سایټ ترمنځ کیږي، او هماغه ځای دی چې SameSite=Lax یا Strict د باور وړ کار پیلوي.

دا په براوزر کې وآزموئ نه دا چې پرې استدلال وکړئ.

عامه سایټ بار کړئ، د پراختیا وسیلې پرانیزئ او وګورئ چې براوزر اداري کوربه ته تلونکې غوښتنې ته کوم کوکیز نښلوي. که کوکي Domain ځانګړنه نه لري، یوازې د کوربه لپاره ده او په خپل نوم پاتې کیږي؛ که Domain=example.com لري، هرې خور ته ځي، او نوي فرعي ډومین د هغې کوکي لپاره هیڅ ورنکړل.

ځواب لوستل او غوښتنه لېږل جلا کړئ

د یو شان اصل تګلاره د اصلونو ترمنځ د ځوابونو لوستل محدودوي. دا د غوښتنې لېږل نه بندوي، او د براوزر له مخکې موجودو اسنادو د فورمې لېږل نه شي منع کولی. ساده غوښتنه، چې د فورمې منځپانګې ډول یا ساده GET لري، پرته له مخکیني کتنې رسیږي؛ بیا CORS پرېکړه کوي چې بلونکې سکریپټ ځواب لوستلی شي که نه. CSRF په بشپړه توګه د لېږلو په خوا کې ژوند کوي.

له همدې امله سرور ته د حالت بدلوونکو عملیاتو لپاره روښانه کتنه پکار ده. د سیشن سره تړلی همغږي ټوکن، یا په سرور کې سره پرتله کیدونکې دوه ځله سپارل شوې کوکي هغه حالت پوښي؛ د Origin یا Referer پرتله د دوهمې دروازې په توګه د زیاتولو وړ ده، خو نه یوازینې، ځکه هر غوښتنه هغه سرلیک نه لري او هر پروکسي یې نه ساتي. د CSRF د مخنیوي لپاره د OWASP لارښود SameSite د څو طبقو په منځ کې یوه طبقه ګڼي، همدې دلیل له امله.

د شبکې دروازه واقعیا څه ثبوي پرېکړه وکړئ

د اداري کوربه مخې ته د VPN وتلو اجازه لړلیک ښه کنټرول او کمزوری هویت دعوه ده. دا ثبوي چې غوښتنه د هغې پتې څخه راغله چې VPN ورکوي، چې په هغه وتلو کې ټول یې شریکولی شي، او د هغې شاته چې کوم کس یا وسیله ده هغه نه وایي. دا د ننوتلو فلټر وګڼئ، د تصدیق نه.

دا د غوښتنې کچې کتنو څخه خپلواکه وساتئ. که لړلیک د بریدګر او د حالت بدلوونکي پای ټکي ترمنځ یوازینی شی وي، یوه غلطه تنظیم شوې لار، یو split-tunnel کلاینټ یا یو پور شوی لیپ ټاپ کنټرول په بشپړه توګه لرې کوي.

د تمه شوو حدودو څخه بهر ردونه هم ثبت کړئ. د هغوی راپورته کیدل ترټولو ګټور اشاره ده چې یو څوک هغه پوله ګوري چې تاسو همدا اوس جوړه کړې، او چوپتیا هغه اشاره ده چې فلټر ته هیڅ نه رسیږي.

کوکیز، ننوتل او اجازه روښانه وساتئ

د کوکي حد پایله ډیره برخه ټاکي. د مورني ډومین کوکي اداري کوربه ته لېږل کیږي، نو په عامه سایټ کې د سکریپټ ننوتل کولای شي د مدیر د سیشن سره عمل وکړي؛ یوازې د کوربه کوکي نه شي کولی. یوازې د کوربه بڼه غوره کړئ، Secure ځانګړنه ورزیاته کړئ او چیرې چې پلیټ فارم ملاتړ کوي __Host- مخکښ وکاروئ، ځکه هغه مخکښ Secure، Path=/ او د Domain ځانګړنې نه شتون غواړي. د کوکي لوښي نه، د ځواب سرلیک ولولئ: Set-Cookie: __Host-admin_session=...; Secure; Path=/; HttpOnly; SameSite=Lax، پرته له Domain ځانګړنې. براوزر هغه __Host- کوکي غورځوي چې Domain لري، نو هغه کوکي چې لا هم په خویندو کوربه کې لیدل کیږي د دې ثبوت دی چې مخکښ هیڅکله نه دی پلي شوی.

بیا اجازه په سرور کې، د هرې غوښتنې لپاره، په هر اداري پای ټکي کې وساتئ، نه یوازې د ننوتلو پر مهال. د اجازه شوې شبکې څخه راغلې غوښتنه هم باید تصدیق او د هغې غوښتل شوې عملیې لپاره اجازه ولري؛ کوربه نوم کوم فعال نه دی. که عامه او اداري اپلیکیشنونه د ننوتلو بهیر یا د سیشن زېرمه شریکوي، هغه اړیکه ولیکئ، ځکه دا له عامه سایټ تېروتنې څخه اداري عمل ته ترټولو لنډه لار ده.

له جلا کولو وروسته پوله بیا وګورئ

منفي ازموینې وچلوئ، نه یوازې خوښه لار: پرته له ټوکن د سایټ ترمنځ فورمه باید رد شي، د بل سیشن ټوکن باید رد شي، او هیڅ GET باید حالت بدل نه کړي. په پراختیا وسیلو کې د کوکي ځانګړنې وګورئ، تایید کړئ چې د Origin کتنه په ناسمه غوښتنه فعالیږي، او د فلټر کار کیدل وګورئ چې له VPN سیمې بهر څخه اداري کوربه وآزموئ.

له دې څخه هیڅ یو هم په اداري اپلیکیشن کې دننه XSS نیمګړتیا نه لرې کوي. جلا کوربه نوم د براوزر خوا د جلاوالي پوله ده چې ریښتینې ارزښت لري، او دا د ناامن کوډ چلولو مخنیوي یا د سرور خوا د غوښتنو ساتنې بدیل نه دی. له جلا کولو وروسته لړلیک د لیدلو څخه لنډ دی: جلا اصل، یوازې د کوربه کوکیز، په هر بدلون کې ټوکن، د ننوتلو فلټر چې د هویت په توګه باور پرې نه کوئ، او د هرې غوښتنې لپاره ټاکل شوې اجازه.

اړوندې مقالې