የተጋላጭነት ቅኝት እና ደህንነቱ የተጠበቀ ልማት። ክፍል 1

የተጋላጭነት ቅኝት እና ደህንነቱ የተጠበቀ ልማት። ክፍል 1

እንደ ሙያዊ ተግባራቸው አካል ገንቢዎች፣ ፔንቴተሮች እና የደህንነት ባለሙያዎች እንደ የተጋላጭነት አስተዳደር (VM)፣ (ደህንነቱ የተጠበቀ) ኤስዲኤልሲ ያሉ ሂደቶችን ማስተናገድ አለባቸው።
በእነዚህ ሀረጎች ስር የተለያዩ የልምድ ስብስቦች እና መሳሪያዎች እርስ በርስ የተያያዙ ናቸው፣ ምንም እንኳን ተጠቃሚዎቻቸው ቢለያዩም።

የቴክኒክ መሻሻል የመሠረተ ልማት እና የሶፍትዌር ደህንነትን ለመተንተን አንድ መሳሪያ አንድ ሰው መተካት የሚችልበት ደረጃ ላይ አልደረሰም.
ይህ ለምን እንደ ሆነ እና አንድ ሰው ምን ችግሮች እንደሚያጋጥመው መገንዘቡ ትኩረት የሚስብ ነው።

ሂደቶች

የተጋላጭነት አስተዳደር ሂደት የመሠረተ ልማት ደህንነትን እና የፕላስተር አስተዳደርን ቀጣይነት ባለው መልኩ ለመቆጣጠር የተነደፈ ነው።
ደህንነቱ የተጠበቀ የኤስዲኤልሲ ሂደት ("ደህንነቱ የተጠበቀ የእድገት ዑደት") በልማት እና በሚሰራበት ጊዜ የመተግበሪያውን ደህንነት ለመጠበቅ የተነደፈ ነው።

የእነዚህ ሂደቶች ተመሳሳይ አካል የተጋላጭነት ግምገማ ሂደት ነው - የተጋላጭነት ግምገማ፣ የተጋላጭነት ቅኝት።
በቪኤም እና ኤስዲኤልሲ ቅኝት መካከል ያለው ዋና ልዩነት በመጀመሪያ ሁኔታ ግቡ በሶስተኛ ወገን ሶፍትዌር ወይም ውቅረት ውስጥ የታወቁ ድክመቶችን መለየት ነው። ለምሳሌ፣ ጊዜው ያለፈበት የዊንዶውስ ስሪት ወይም የ SNMP ነባሪ የማህበረሰብ ሕብረቁምፊ።
በሁለተኛው ጉዳይ ላይ ግቡ በሶስተኛ ወገን አካላት (ጥገኛዎች) ላይ ብቻ ሳይሆን በዋናነት በአዲሱ ምርት ኮድ ውስጥ ድክመቶችን መለየት ነው.

ይህ በመሳሪያዎች እና በአቀራረቦች ላይ ልዩነት ይፈጥራል. በእኔ አስተያየት በአፕሊኬሽኑ ውስጥ አዳዲስ ተጋላጭነቶችን የማግኘት ተግባር የበለጠ ትኩረት የሚስብ ነው ፣ ምክንያቱም ወደ የጣት አሻራ ስሪቶች ፣ ባነሮች መሰብሰብ ፣ ጨካኝ-አስገዳጅ የይለፍ ቃሎች ፣ ወዘተ.
ከፍተኛ ጥራት ባለው አውቶማቲክ የመተግበሪያ ተጋላጭነቶች ቅኝት የመተግበሪያውን ፍቺ፣ ዓላማ እና ልዩ ስጋቶችን ያገናዘበ ስልተ ቀመሮች ያስፈልጋሉ።

እኔ እንዳስቀመጥኩት የመሠረተ ልማት ስካነር ብዙ ጊዜ በጊዜ ቆጣሪ ሊተካ ይችላል። አቬሎኖቭ. ነጥቡ፣ በስታቲስቲክስ ብቻ፣ መሠረተ ልማትዎን ለአንድ ወር ካላዘመኑት ለአደጋ ተጋላጭ እንደሆኑ አድርገው ሊቆጥሩት ይችላሉ።

መሳሪያዎች

መቃኘት፣ ልክ እንደ የደህንነት ትንተና፣ በጥቁር ሣጥን ወይም በነጭ ሳጥን በመጠቀም ሊከናወን ይችላል።

ጥቁር ሣጥን

ብላክቦክስ ስካን በሚደረግበት ጊዜ መሳሪያው ተጠቃሚዎች ከእሱ ጋር በሚሰሩበት ተመሳሳይ መገናኛዎች ከአገልግሎቱ ጋር አብሮ መስራት መቻል አለበት።

የመሠረተ ልማት ስካነሮች (Tenable Nessus, Qualys, MaxPatrol, Rapid7 Nexpose, ወዘተ.) ክፍት የኔትወርክ ወደቦችን ይፈልጉ, "ባነር" ይሰበስባሉ, የተጫኑትን የሶፍትዌር ስሪቶች ይወስናሉ እና በእነዚህ ስሪቶች ውስጥ ስላሉ ተጋላጭነቶች መረጃ ለማግኘት የእውቀታቸውን መሰረት ይፈልጉ. እንዲሁም እንደ ነባሪ የይለፍ ቃሎች ወይም ክፍት የውሂብ መዳረሻ፣ ደካማ የኤስ ኤስ ኤል ምስጢሮች፣ ወዘተ ያሉ የማዋቀር ስህተቶችን ለማግኘት ይሞክራሉ።

የድር አፕሊኬሽን ስካነሮች (Acunetix WVS፣ Netsparker፣ Burp Suite፣ OWASP ZAP፣ ወዘተ) እንዲሁም የታወቁ ክፍሎችን እና ስሪቶቻቸውን (ለምሳሌ ሲኤምኤስ፣ ማዕቀፎች፣ JS ቤተ-መጻሕፍት) መለየት ይችላሉ። የቃኚው ዋና ደረጃዎች እየተሳቡ እና እየደበደቡ ናቸው።
በሚጎበኝበት ጊዜ ስካነሩ ስለ ነባር የመተግበሪያ በይነገጾች እና የኤችቲቲፒ መለኪያዎች መረጃ ይሰበስባል። በማደብዘዝ ጊዜ፣የተቀየረ ወይም የመነጨ ውሂብ ስህተትን ለመቀስቀስ እና ተጋላጭነትን ለመለየት በሁሉም የተገኙ ግቤቶች ውስጥ ይገባል።

እንደነዚህ ያሉት የመተግበሪያ ስካነሮች የDAST እና የ IAST ክፍሎች ናቸው - ተለዋዋጭ እና በይነተገናኝ የመተግበሪያ ደህንነት ሙከራ።

ነጭ ሣጥን

በ whitebox ቅኝት ላይ ተጨማሪ ልዩነቶች አሉ።
እንደ VM ሂደት አካል፣ ስካነሮች (Vulners፣ Incsecurity Couch፣Vuls፣ Tenable Nessus፣ወዘተ) ብዙ ጊዜ የተረጋገጠ ስካን በማድረግ የስርዓቶች መዳረሻ ይሰጣቸዋል። ስለዚህ ስካነሩ የተጫኑ የጥቅል ስሪቶችን እና የውቅረት መለኪያዎችን ከአውታረ መረብ አገልግሎት ባነሮች ሳይገምቱ በቀጥታ ከስርዓቱ ማውረድ ይችላል።
ቅኝቱ የበለጠ ትክክለኛ እና የተሟላ ነው።

ስለ አፕሊኬሽኖች ስለ whitebox ስካን (CheckMarx, HP Forify, Coverity, RIPS, FindSecBugs, ወዘተ) ከተነጋገርን ብዙውን ጊዜ የምንነጋገረው ስለ ቋሚ ኮድ ትንተና እና የ SAST ክፍል አግባብ ያላቸውን መሳሪያዎች አጠቃቀም ነው - የማይንቀሳቀስ መተግበሪያ ደህንነት ሙከራ።

ችግሮች

በመቃኘት ላይ ብዙ ችግሮች አሉ! የፍተሻ ግንባታ እና ደህንነታቸው የተጠበቀ የልማት ሂደቶች እንዲሁም የደህንነት ትንተና ስራን በምሰራበት ጊዜ አገልግሎትን እንደመስጠት አብዛኛዎቹን በግል ማስተናገድ አለብኝ።

በተለያዩ ኩባንያዎች ውስጥ ከሚገኙት መሐንዲሶች እና የመረጃ ደህንነት አገልግሎት ኃላፊዎች ጋር በሚደረጉ ንግግሮች የተረጋገጡ 3 ዋና ዋና የችግር ቡድኖችን አጉልቻለሁ።

የድር መተግበሪያ መቃኘት ጉዳዮች

  1. የመተግበር አስቸጋሪነት. ይህ ውጤታማ እንዲሆን ስካነሮችን ማሰማራት፣ ማዋቀር፣ ለእያንዳንዱ መተግበሪያ ብጁ ማድረግ፣ የፍተሻ አካባቢ መመደብ እና በCI/CD ሂደት ውስጥ መተግበር አለበት። አለበለዚያ, የውሸት አወንታዊ ውጤቶችን ብቻ የሚያመጣ የማይረባ መደበኛ አሰራር ይሆናል
  2. የቆይታ ጊዜን ይቃኙ። እ.ኤ.አ. በ 2019 እንኳን ስካነሮች በይነገጾችን የማባዛት ደካማ ስራ ይሰራሉ ​​እና አንድ አይነት ኮድ ለእነሱ ተጠያቂ ቢሆንም እያንዳንዳቸው 10 መለኪያዎች ያላቸውን አንድ ሺህ ገጾችን በመቃኘት ቀናትን ያሳልፋሉ። በተመሳሳይ ጊዜ በእድገት ዑደት ውስጥ ወደ ምርት የመሰማራት ውሳኔ በፍጥነት መደረግ አለበት
  3. ደካማ ምክሮች። ስካነሮች በትክክል አጠቃላይ ምክሮችን ይሰጣሉ ፣ እና ገንቢው የአደጋውን ደረጃ እንዴት እንደሚቀንስ ሁል ጊዜ በፍጥነት ሊረዳቸው አይችልም ፣ እና ከሁሉም በላይ ፣ አሁን መደረግ ያለበት ወይም አሁንም አስፈሪ አይደለም
  4. በመተግበሪያው ላይ አጥፊ ተጽእኖ. ስካነሮች በማመልከቻው ላይ የዶኤስ ጥቃት ሊፈጽሙ ይችላሉ፣ እና ብዙ አካላትን ሊፈጥሩ ወይም ያሉትን ሊለውጡ ይችላሉ (ለምሳሌ ፣ በብሎግ ላይ በአስር ሺዎች የሚቆጠሩ አስተያየቶችን ይፍጠሩ) ፣ ስለሆነም በግዴለሽነት በምርት ውስጥ ስካን ማድረግ የለብዎትም።
  5. ዝቅተኛ ጥራት ያለው የተጋላጭነት መለየት. ስካነሮች ብዙውን ጊዜ ቋሚ የጭነት ድርድር ይጠቀማሉ እና ከመተግበሪያው የታወቀ የባህሪ ሁኔታ ጋር የማይጣጣም ተጋላጭነትን በቀላሉ ሊያጡ ይችላሉ።
  6. ስካነሩ የመተግበሪያውን ተግባራት አይረዳም። ስካነሮቹ እራሳቸው “የኢንተርኔት ባንክ”፣ “ክፍያ”፣ “አስተያየት” ምን እንደሆኑ አያውቁም። ለእነሱ ፣ አገናኞች እና መለኪያዎች ብቻ አሉ ፣ ስለሆነም ትልቅ ሊሆኑ የሚችሉ የንግድ አመክንዮ ተጋላጭነቶች ሙሉ በሙሉ እንደተገለጡ ይቆያሉ ፣ ድርብ ፅሁፍ ለመስራት ፣ የሌላ ሰውን መረጃ በመታወቂያ ለመሰለል ወይም ሚዛኑን በክብ ለማድረግ አያስቡም።
  7. ስካነሩ የገጾቹን ትርጉም አይረዳም። ስካነሮች ተደጋጋሚ ጥያቄዎችን ማንበብ አይችሉም፣ ካፕቻዎችን ማወቅ አይችሉም፣ እና በራሳቸው እንዴት መመዝገብ እና እንደገና መግባት እንደሚችሉ አይገነዘቡም፣ “መውጣት” የሚለውን ጠቅ ማድረግ እንደማይችሉ እና ግቤት ሲቀይሩ እንዴት እንደሚፈርሙ እሴቶች. በዚህ ምክንያት አብዛኛው አፕሊኬሽኑ ጨርሶ ላይመረመር ይችላል።

የምንጭ ኮድን በመቃኘት ላይ ችግሮች

  1. የውሸት አዎንታዊ ነገሮች. የማይለዋወጥ ትንተና ብዙ የንግድ ልውውጥን የሚያካትት ውስብስብ ተግባር ነው። ትክክለኛነት ብዙውን ጊዜ መስዋእት መሆን አለበት ፣ እና ውድ የሆኑ የድርጅት ስካነሮች እንኳን እጅግ በጣም ብዙ የውሸት አወንታዊ ውጤቶችን ያስገኛሉ።
  2. የመተግበር አስቸጋሪነት. የስታቲስቲክስ ትንታኔን ትክክለኛነት እና ሙሉነት ለመጨመር የፍተሻ ደንቦችን ማጣራት አስፈላጊ ነው, እና እነዚህን ደንቦች መጻፍ በጣም ጉልበት የሚጠይቅ ሊሆን ይችላል. አንዳንድ ጊዜ በኮዱ ውስጥ ያሉትን ሁሉንም ቦታዎች በአንድ አይነት ስህተት ማግኘት እና እነሱን ማስተካከል ቀላል ነው እንደዚህ አይነት ጉዳዮችን ለማወቅ ህግ ከመፃፍ
  3. የጥገኝነት ድጋፍ እጦት. ትላልቅ ፕሮጀክቶች የፕሮግራም አወጣጥ ቋንቋን አቅም በሚያራዝሙ በርካታ ቤተ-መጻሕፍት እና ማዕቀፎች ላይ የተመሰረቱ ናቸው። የቃኚው ዕውቀት መሰረት በእነዚህ ማዕቀፎች ውስጥ ስላሉት "ማጠቢያዎች" መረጃ ከሌለው ዕውር ቦታ ይሆናል እና ስካነሩ በቀላሉ ኮዱን እንኳን አይረዳውም
  4. የቆይታ ጊዜን ይቃኙ። በኮድ ውስጥ ድክመቶችን መፈለግ በአልጎሪዝም ረገድ ውስብስብ ስራ ነው. ስለዚህ ሂደቱ ብዙ ጊዜ ሊወስድ ይችላል እና አስፈላጊ የኮምፒዩተር ሀብቶችን ይፈልጋል።
  5. ዝቅተኛ ሽፋን. ምንም እንኳን የግብዓት ፍጆታ እና የፍተሻ ጊዜ ቢኖርም ፣ የ SAST መሣሪያ ገንቢዎች አሁንም ስምምነት ማድረግ አለባቸው እና ፕሮግራሙ በ ውስጥ ሊሆን እንደሚችል ሁሉንም ሁኔታዎች መተንተን አለባቸው።
  6. የግኝቶች እንደገና መባዛት. ወደ ተጋላጭነት የሚያመራውን የተወሰነ መስመር እና የጥሪ ቁልል መጠቆም በጣም ጥሩ ነው፣ ነገር ግን እንደ እውነቱ ከሆነ፣ ብዙውን ጊዜ ስካነር ከውጭ የተጋላጭነት መኖሩን ለማረጋገጥ በቂ መረጃ አይሰጥም። ደግሞም ስህተቱ በሙት ኮድ ውስጥም ሊሆን ይችላል፣ ይህም ለአጥቂ የማይደረስ ነው።

የመሠረተ ልማት ቅኝት ችግሮች

  1. በቂ ያልሆነ ክምችት። በትልልቅ መሠረተ ልማት አውታሮች ውስጥ፣ በተለይም በጂኦግራፊያዊ አቀማመጥ በተለዩት፣ ብዙውን ጊዜ የትኞቹን አስተናጋጆች መቃኘት እንዳለቦት ለማወቅ በጣም አስቸጋሪው ነው። በሌላ አነጋገር የፍተሻ ስራው ከንብረት አስተዳደር ተግባር ጋር በቅርበት የተያያዘ ነው
  2. ደካማ ቅድሚያ መስጠት. የኔትዎርክ ስካነሮች ብዙ ውጤቶችን በተግባር ላይ ሊውሉ በማይችሉ ጉድለቶች ያመርታሉ፣ነገር ግን በመደበኛነት የአደጋ ደረጃቸው ከፍ ያለ ነው። ሸማቹ ለመተርጎም አስቸጋሪ የሆነ ሪፖርት ይቀበላል, እና በመጀመሪያ ምን መታረም እንዳለበት ግልጽ አይደለም.
  3. ደካማ ምክሮች። የቃኚው የእውቀት መሰረት ብዙውን ጊዜ ስለ ተጋላጭነቱ እና እንዴት ማስተካከል እንደሚቻል በጣም አጠቃላይ መረጃን ብቻ ይይዛል፣ ስለዚህ አስተዳዳሪዎች ጎግልን ማስታጠቅ አለባቸው። ሁኔታው በ whitebox ስካነሮች ትንሽ የተሻለ ነው, ይህም ለማስተካከል የተለየ ትዕዛዝ ሊሰጥ ይችላል
  4. በእጅ የተሰራ. መሠረተ ልማቶች ብዙ አንጓዎች ሊኖራቸው ይችላል ይህም ማለት ብዙ ጉድለቶች ሊኖሩት ይችላል, ሪፖርቶች በእያንዳንዱ ድግግሞሽ ላይ በእጅ መተንተን እና መተንተን አለባቸው.
  5. ደካማ ሽፋን. የመሠረተ ልማት ፍተሻ ጥራት በቀጥታ ስለ ተጋላጭነቶች እና የሶፍትዌር ስሪቶች ባለው የእውቀት መሠረት መጠን ይወሰናል። በውስጡ፣ ሁኔታው ግልጽ ሆነ, የገበያ መሪዎች እንኳን አጠቃላይ የእውቀት መሰረት የላቸውም, እና የነጻ መፍትሄዎች የውሂብ ጎታ መሪዎቹ የሌላቸው ብዙ መረጃዎችን ይይዛሉ.
  6. በመለጠፍ ላይ ችግሮች. ብዙ ጊዜ የመሠረተ ልማት ድክመቶችን ማስተካከል ጥቅል ማዘመን ወይም የውቅር ፋይል መቀየርን ያካትታል። እዚህ ላይ ያለው ትልቁ ችግር ስርዓት በተለይም ውርስ በዝማኔ ምክንያት ሊተነበይ የማይችል ባህሪ ሊኖረው ይችላል። በዋናነት፣ በምርት ውስጥ የቀጥታ መሠረተ ልማት ላይ የውህደት ሙከራዎችን ማካሄድ አለቦት።

አቀራረቦች

እንዴት መሆን
በሚከተሉት ክፍሎች ውስጥ ስለ ምሳሌዎች እና ብዙ የተዘረዘሩ ችግሮችን እንዴት መቋቋም እንደሚቻል የበለጠ እነግርዎታለሁ ፣ ግን አሁን እርስዎ ሊሰሩባቸው የሚችሉባቸውን ዋና አቅጣጫዎች እጠቁማለሁ ።

  1. የተለያዩ የመቃኛ መሳሪያዎችን ማሰባሰብ. በርካታ ስካነሮችን በትክክል በመጠቀም በእውቀት መሠረት እና በምርመራው ጥራት ላይ ከፍተኛ ጭማሪ ማግኘት ይችላሉ። በተናጥል ከተከፈቱት ሁሉም ስካነሮች አጠቃላይ የበለጠ ተጋላጭነቶችን ማግኘት ትችላለህ፣ የአደጋውን ደረጃ በበለጠ በትክክል መገምገም እና ተጨማሪ ምክሮችን መስጠት ትችላለህ።
  2. የ SAST እና DAST ውህደት። በመካከላቸው መረጃ በመለዋወጥ የ DAST ሽፋን እና የ SAST ትክክለኛነት ማሳደግ ይቻላል. ከምንጮቹ ስለ ነባር መንገዶች መረጃ ማግኘት ይችላሉ፣ እና DAST ን በመጠቀም ተጋላጭነቱ ከውጭ የሚታይ መሆኑን ማረጋገጥ ይችላሉ።
  3. ማሽን መማር™ በ 2015 I ተናገሩ (እና) ተጨማሪ) ስታቲስቲክስን ስለመጠቀም ስካነሮችን የጠላፊ ግንዛቤን ለመስጠት እና እነሱን ለማፋጠን። ይህ በእርግጠኝነት ለወደፊት አውቶሜትድ የደህንነት ትንተና ልማት መኖ ነው።
  4. የIAST ከአውቶሞተሮች እና ከOpenAPI ጋር ውህደት። በ CI/CD ቧንቧ መስመር ውስጥ እንደ ኤችቲቲፒ ፕሮክሲ በሚሰሩ መሳሪያዎች እና በኤችቲቲፒ ላይ የሚሰሩ የተግባር ሙከራዎችን መሰረት በማድረግ የፍተሻ ሂደት መፍጠር ይቻላል። የOpenAPI/Swagger ሙከራዎች እና ኮንትራቶች ስካነር ስለ የውሂብ ፍሰቶች የጎደለውን መረጃ ይሰጡታል እና አፕሊኬሽኑን በተለያዩ ግዛቶች ለመቃኘት ያስችላል።
  5. ትክክለኛ ውቅር። ለእያንዳንዱ መተግበሪያ እና መሠረተ ልማት ፣ የበይነገጽ ብዛት እና ተፈጥሮ እና ጥቅም ላይ የዋሉ ቴክኖሎጂዎችን ከግምት ውስጥ በማስገባት ተስማሚ የፍተሻ መገለጫ መፍጠር ያስፈልግዎታል
  6. ስካነር ማበጀት። ብዙውን ጊዜ አፕሊኬሽኑ ስካነሩን ሳይቀይር መቃኘት አይቻልም። እያንዳንዱ ጥያቄ መፈረም ያለበት የክፍያ መግቢያ በር ምሳሌ ነው። ወደ ጌትዌይ ፕሮቶኮል ማገናኛ ሳይጽፉ፣ ስካነሮች ያለምንም ሀሳብ በተሳሳተ ፊርማ ይሞላሉ። እንዲሁም ለአንድ የተወሰነ ጉድለት ልዩ ስካነሮችን መጻፍ አስፈላጊ ነው, ለምሳሌ ደህንነቱ ያልተጠበቀ የቀጥታ ዕቃ ማጣቀሻ
  7. የአደጋ አስተዳደር. የተለያዩ ስካነሮችን መጠቀም እና እንደ የንብረት አስተዳደር እና የዛቻ አስተዳደር ካሉ ውጫዊ ስርዓቶች ጋር ማቀናጀት ብዙ መለኪያዎችን መጠቀም የአደጋውን ደረጃ ለመገምገም ያስችለዋል ፣ በዚህም አመራሩ ስለ ልማት ወይም መሠረተ ልማት ወቅታዊ የፀጥታ ሁኔታ በቂ ምስል እንዲያገኝ ያስችለዋል።

ይከታተሉ እና የተጋላጭነት ቅኝትን እናስተጓጉል!

ምንጭ: hab.com

አስተያየት ያክሉ