# ተጽዕኖ አጥቂ ሚስጥራዊነት ያለው የተረጋገጠ ውሂብ ከተጋላጭ [S2] ተጠቃሚዎች ሊሰርቅ ይችላል። አንድ ተጠቃሚ ወደ ተጋላጭ መተግበሪያ ሲገባ ተንኮል አዘል ድረ-ገጽን ከጎበኘ፣ ተንኮል አዘል ጣቢያው መነሻ ተሻጋሪ ጥያቄዎችን ለመተግበሪያው API ማድረግ እና ምላሾቹን [S1][S2] ማንበብ ይችላል። ይህ የተጠቃሚ መገለጫዎችን፣ የCSRF ቶከኖችን ወይም የግል መልዕክቶችን [S2] ጨምሮ የግል መረጃን ወደ መስረቅ ሊያመራ ይችላል።
የስር መንስኤ
CORS ኤችቲቲፒ-ራስጌን መሰረት ያደረገ ዘዴ ነው አገልጋዮች [S1] ምንጮችን ለመጫን የተፈቀደላቸውን ምንጮች (ጎራ፣ እቅድ ወይም ወደብ) እንዲገልጹ ያስችላቸዋል። አብዛኛውን ጊዜ የአገልጋዩ CORS ፖሊሲ በጣም ተለዋዋጭ ከሆነ ወይም በደንብ ካልተተገበረ [S2]፡
- የተንጸባረቀ መነሻ ራስጌ፡ አንዳንድ አገልጋዮች የ
Originአርዕስት ከደንበኛ ጥያቄ አንብበው በAccess-Control-Allow-Origin(ACAO) ምላሽ ራስጌ [S2] መልሰው ያስተጋባሉ። ይህ ውጤታማ በሆነ መንገድ ማንኛውም ድህረ ገጽ ሃብቱን [S2] እንዲደርስ ያስችለዋል። - በተሳሳተ መንገድ የተዋቀሩ ዋይልድ ካርዶች፡ የ
*ዱርካርድ የትኛውንም ምንጭ ሀብትን እንዲደርስ የሚፈቅድ ቢሆንም፣ ምስክርነት ለሚፈልጉ ጥያቄዎች (እንደ ኩኪዎች ወይም የፈቃድ ራስጌዎች) [S3] መጠቀም አይቻልም። ገንቢዎች በ[S2] ጥያቄ መሰረት በተለዋዋጭ የ ACAO ራስጌ በማፍለቅ ይህንን ለማለፍ ይሞክራሉ። - በነጭ መመዝገብ 'ኑል': አንዳንድ መተግበሪያዎች የ
nullምንጭን በተፈቀደላቸው ዝርዝር ውስጥ ያስቀምጣሉ፣ይህም በተዘዋዋሪ ጥያቄዎች ወይም በአገር ውስጥ ፋይሎች ሊነሳ ይችላል፣ይህም ተንኮል-አዘል ጣቢያዎች መዳረሻ ለማግኘት የnullምንጭ እንዲመስሉ ያስችላቸዋል። [S2][S3]. - ስህተቶችን በመተንተን: የ
Originራስጌን በሚያረጋግጥበት ጊዜ በሪጅክስ ወይም በሕብረቁምፊ ማዛመድ ላይ ያሉ ስህተቶች አጥቂዎች እንደtrusted-domain.com.attacker.com[S2] ያሉ ጎራዎችን እንዲጠቀሙ ያስችላቸዋል።
CORS ከጣቢያ ተሻጋሪ ጥያቄ ፎርጀሪ (CSRF) [S2] ጥበቃ እንዳልሆነ ልብ ሊባል ይገባል።
ኮንክሪት ጥገናዎች
የማይለዋወጥ የተፈቀደ ዝርዝር ተጠቀም: የAccess-Control-Allow-Origin ራስጌ ከጥያቄው Origin ራስጌ [S2]። በምትኩ፣ የጥያቄውን አመጣጥ በሃርድ ኮድ ከተቀመጡ የታመኑ ጎራዎች ዝርዝር [S3] ጋር ያወዳድሩ።
- ከ"ኑል" አመጣጥን አስወግዱ፡
nullበተፈቀደላቸው የተፈቀደላቸው ምንጮች ዝርዝር ውስጥ በጭራሽ አታካትት [S2] - ምስክርነቶችን ገድብ፡ ለተለየ ምንጭ-አቋራጭ መስተጋብር [S3] አስፈላጊ ከሆነ
Access-Control-Allow-Credentials: trueብቻ ያቀናብሩ።
ትክክለኛ ማረጋገጫን ተጠቀም፡ ብዙ መነሻዎችን መደገፍ ካለብህ የOrigin አርዕስት የማረጋገጫ አመክንዮ ጠንካራ መሆኑን አረጋግጥ እና በንዑስ ጎራዎች ወይም ተመሳሳይ በሚመስሉ ጎራዎች [S2] ሊታለፍ አይችልም።
FixVibe እንዴት እንደሚፈትሽ
FixVibe አሁን ይህንን እንደ የተዘጋ ንቁ ቼክ ያካትታል። ከጎራ ማረጋገጫ በኋላ፣ active.cors ተመሳሳይ መነሻ API ጥያቄዎችን ከተሰራ አጥቂ ምንጭ ጋር ይልካል እና የCORS ምላሽ ራስጌዎችን ይገመግማል። የተንፀባረቁ የዘፈቀደ መነሻዎች፣ የዱድ ካርድ ምስክርነት ያለው CORS እና ሰፊ ክፍት CORS ይፋዊ ባልሆኑ የAPI የመጨረሻ ነጥቦች ላይ የህዝብ ንብረት ጫጫታን በማስወገድ ሪፖርት ያደርጋል።
