Pentesters ئۈچۈن CSP: ئاساسنى چۈشىنىش | Mewayz Blog Skip to main content
Hacker News

Pentesters ئۈچۈن CSP: ئاساسنى چۈشىنىش

باھا

2 min read Via www.kayssel.com

Mewayz Team

Editorial Team

Hacker News

نېمە ئۈچۈن ھەر بىر Pentester مەزمۇن بىخەتەرلىك سىياسىتىنى ياخشى ئىگىلەشكە موھتاج

مەزمۇن بىخەتەرلىك سىياسىتى (CSP) تور بېكەت قوليازمىسى (XSS) ، سانلىق مەلۇمات ئوكۇلى ۋە چېكىش ھۇجۇمىغا قارشى ئەڭ ھالقىلىق توركۆرگۈچ مۇداپىئە مېخانىزمىنىڭ بىرىگە ئايلاندى. شۇنداقتىمۇ سىڭىپ كىرىش سىناق پائالىيىتىدە ، CSP ماۋزۇلىرى بىخەتەرلىك كونتروللۇقىدىكى دائىم خاتا ئۆزگەرتىلگەن ۋە خاتا چۈشىنىلگەنلەرنىڭ بىرى بولۇپ قالدى. 2024-يىلدىكى بىر مىليوندىن ئارتۇق توربېكەتنى تەھلىل قىلغان تەتقىقاتتا بايقىلىشىچە ، پەقەت% 12.8 كىشى CSP باش بېتىنى ئورۇنلاشتۇرغان ، بۇنىڭ ئىچىدە ،% 94 كە يېقىن كىشى كەم دېگەندە بىر سىياسەت ئاجىزلىقىنى ئۆز ئىچىگە ئالىدۇ. قەلەمكەشلەر ئۈچۈن ئېيتقاندا ، CSP نى چۈشىنىش ئىختىيارى ئەمەس - ئۇ يەر يۈزىنى باھالاش بىلەن دوكلاتنىڭ پەرقى ، خېرىدارلارنىڭ بىخەتەرلىك قىياپىتىنى ئەمەلىيەتتە كۈچەيتىدۇ.

مەيلى سىز تور قوللىنىشچان پروگراممىلىرىنى باھالاش ، كەمتۈكلەرنى ئوۋلاش ياكى خېرىدارلارنىڭ سەزگۈر سانلىق مەلۇماتلىرىنى بىر تەرەپ قىلىدىغان سودا سۇپىسىغا بىخەتەرلىك بەرپا قىلىش بولسۇن ، CSP بىلىملىرى ئاساس. بۇ قوللانما CSP نىڭ نېمىلىكىنى ، ئۇنىڭ قاپاق ئاستىدا قانداق ئىشلەيدىغانلىقىنى ، قەيەردە مەغلۇپ بولىدىغانلىقىنى ، ھەمدە قەلەمكەشلەرنىڭ ئاجىز سىياسەتلەرنى سىستېمىلىق باھالاپ ۋە ئايلىنىپ ئۆتەلەيدىغانلىقىنى پارچىلايدۇ.

مەزمۇن بىخەتەرلىك سىياسىتى ئەمەلىيەتتە نېمە قىلىدۇ

ئۇنىڭ يادروسى ، CSP بولسا HTTP ئىنكاس بېشى (ياكى ئادەتتە ) بەلگىسى ئارقىلىق يەتكۈزۈلگەن مەلۇم قىلىش بىخەتەرلىك مېخانىزمى. ئۇ توركۆرگۈچكە قايسى بەتتىكى مەزمۇنلارنىڭ - قوليازما ، ئۇسلۇب ، رەسىم ، خەت نۇسخىسى ، رامكا ۋە باشقا مەزمۇنلارنىڭ مەلۇم بەتتە يۈكلىنىشى ۋە ئىجرا قىلىنىشىغا يول قويىدۇ. بايلىق سىياسەتكە خىلاپلىق قىلغاندا ، توركۆرگۈچ ئۇنى توسىدۇ ھەمدە بەلگىلىمىگە خىلاپلىق قىلغانلىقىنى مەلۇم نۇقتىغا دوكلات قىلىدۇ.

CSP نىڭ ئەسلىدىكى ھەرىكەتلەندۈرگۈچ كۈچى XSS ھۇجۇمىنى ئازايتىش ئىدى. كىرگۈزۈش تازىلىقى ۋە چىقىرىش كودلاش قاتارلىق ئەنئەنىۋى XSS مۇداپىئەلىرى ئۈنۈملۈك ، ئەمما چاتاق - يەككە قولدىن كەتكەن مەزمۇن ياكى كودلاش خاتالىقى بۇ يوچۇقنى قايتا پەيدا قىلالايدۇ. CSP مۇداپىئەگە چوڭقۇر قاتلام قوشىدۇ: ھۇجۇم قىلغۇچى DOM غا يامان غەرەزلىك خەتكۈچ خەتكۈچ سالغان تەقدىردىمۇ ، مۇۋاپىق تەڭشەلگەن سىياسەت توركۆرگۈچنىڭ ئۇنى ئىجرا قىلىشىنى توسىدۇ.

CSP ئاق تىزىملىك مودېلى دا مەشغۇلات قىلىدۇ. ئۇ بىلىنگەن ناچار مەزمۇنلارنى توسۇشقا ئۇرۇنماي ، ئېنىق رۇخسەت قىلىنغان نەرسىنى بەلگىلەيدۇ. سۈكۈتتىكى باشقا ھەممە نەرسە رەت قىلىنىدۇ. بۇ بىخەتەرلىك ئەندىزىسىنىڭ بۇرۇلۇشى نەزەرىيە جەھەتتىن كۈچلۈك ، ئەمما ئەمەلىيەتتە ، مۇرەككەپ تور قوللىنىشچان پروگراممىلىرىدا قاتتىق سىياسەتلەرنى ساقلاپ قېلىش ، بولۇپمۇ CRM ، تالون ، ئانالىز ۋە زاكاز سىستېمىسى قاتارلىق ئون نەچچە توپلاشتۇرۇلغان مودۇلنى باشقۇرىدىغان سۇپىلار بىر قەدەر قىيىن.

CSP ماۋزۇسىنىڭ ئاناتومىيىسى: كۆرسەتمە ۋە مەنبە

CSP ماۋزۇسى كۆرسەتمە دىن تەركىب تاپقان بولۇپ ، ھەر بىرسى مەلۇم مەنبە تىپىنى كونترول قىلىدۇ. نىشاننى سىياسەتنى باھالايدىغان ھەر بىر پىنستېر ئۈچۈن بۇ كۆرسەتمىلەرنى چۈشىنىش ئىنتايىن مۇھىم. ئەڭ مۇھىم كۆرسەتمىلەر سۈكۈتتىكى src (ئېنىق بېكىتىلمىگەن ھەر قانداق كۆرسەتمىنىڭ ئارقىغا چېكىنىشى) ، script-src (JavaScript ئىجرا) ، ئۇسلۇب- src (CSS) ، img-src (رەسىم) ، ئۇلىنىش- src (XHR ، Fetch ، WebSocket ئۇلىنىشى) ، رامكا). object-src (Flash ياكى Java ئالما قاتارلىق قىستۇرمىلار).

ھەر بىر كۆرسەتمە رۇخسەت قىلىنغان مەنبەنى بەلگىلەيدىغان بىر ياكى بىر قانچە مەنبە ئىپادىلەش نى قوبۇل قىلىدۇ. بۇلار ئالاھىدە ساھىبجاماللار ( https://cdn.example.com ) دىن تېخىمۇ كەڭ ئاچقۇچلۇق سۆزلەرگىچە:

  • 'ئۆزى' - ھۆججەت بىلەن ئوخشاش مەنبەدىكى مەنبەلەرگە يول قويىدۇ
  • 'none' - بۇ تۈردىكى بارلىق مەنبەلەرنى توسىدۇ
  • 'بىخەتەر بولمىغان سىزىق' - قۇر خەت نۇسخىسى ياكى ئۇسلۇبقا رۇخسەت قىلىدۇ (XSS قوغداشنى ئۈنۈملۈك نېيتراللاشتۇرىدۇ)
  • 'بىخەتەر بولمىغان باھالاش' - eval () ، setTimeout (تىزما) ۋە شۇنىڭغا ئوخشاش ھەرىكەتچان كود ئىجرا قىلىشقا يول قويىدۇ
  • 'nonce- {تاسادىپىي}' - ماسلاشتۇرۇلغان شىفىرلىق بەلگە بىلەن بەلگە قويۇلغان ئالاھىدە ئىچكى ئورگىناللارغا يول قويىدۇ
  • 'قاتتىق ھەرىكەتچان' - ئاللىبۇرۇن ئىشەنچلىك ئورگىناللار قاچىلانغان ئورگىنالغا ئىشىنىدۇ ، باش ئاپپاراتنى ئاساس قىلغان تىزىملىك تىزىملىكىگە سەل قارايدۇ.
  • سانلىق مەلۇمات: - سانلىق مەلۇمات URI لارنى مەزمۇن مەنبەسى سۈپىتىدە رۇخسەت قىلىدۇ

ھەقىقىي CSP ماۋزۇسى مۇنداق بولۇشى مۇمكىن: مەزمۇن-بىخەتەرلىك-سىياسەت: default-src 'self'; script-src 'self' https://cdn.jsdelivr.net 'nonce-abc123'; style-src 'self' 'بىخەتەر بولمىغان سىزىق'; img-src *; object-src 'none' . بەش بۇرجەكلىك بىنا بولۇش سۈپىتىڭىز بىلەن ، سىزنىڭ خىزمىتىڭىز بۇ سىياسەتنى ئوقۇش ھەمدە ئۇنىڭ قەيەردە كۈچلۈك ، قەيەردە ئاجىز ۋە قەيەردە پايدىلىنىدىغانلىقىنى دەرھال ئېنىقلاش.

كۆپ ئۇچرايدىغان CSP خاتا سەپلىمىلىرى Pentesters نىشانلىنىشى كېرەك

CSP بېشىنى ئورۇنلاشتۇرۇش بىلەن ئۈنۈملۈك CSP ماۋزۇسىنى ئورۇنلاشتۇرۇشنىڭ پەرقى ناھايىتى چوڭ. ئەمەلىيەتتە ، كۆپىنچە سىياسەتلەردە ئاچقۇچىلارنىڭ قۇلايلىقلىقى ، ئۈچىنچى تەرەپ بىر گەۋدىلىشىشى ياكى ئاددىي ئۇقۇشماسلىق كەلتۈرۈپ چىقارغان ئاجىزلىقلار بار. باھالاش جەريانىدا ، قەلەمكەشلەر بۇ ئورتاق مەغلۇبىيەتنى سىستېمىلىق تەكشۈرۈشى كېرەك.

ئەڭ ۋەيران قىلغۇچ خاتا سەپلىمە script-src كۆرسەتمىسىدە 'بىخەتەر بولمىغان سىزىق' نىڭ بولۇشى. بۇ يەككە ئاچقۇچلۇق سۆز CSP نىڭ بارلىق XSS غا قارشى پايدىسىنى ئاساسىي جەھەتتىن پايدىسىز قىلىدۇ ، چۈنكى ئۇ توركۆرگۈچنىڭ ھەر قانداق بىر سىزىق