ሩትኪት ምንድን ነው?
ሩትኪት አሁን ዝቅተኛ ደረጃ ያለው ማልዌር ብቻ አይደለም። በመሠረቱ፣ ሚስጥራዊ ነው ያልተፈቀደ መዳረሻ የሚሰጥ ማልዌር የራሱን ህልውና እየደበቀ። በባህላዊ አውዶች፣ ሩትኪቶች በከርነል ቦታ ወይም በስርዓት አገልግሎቶች ውስጥ ይኖራሉ። ሆኖም ግን፣ ዛሬ፣ በማከማቻዎችዎ፣ በCI ስርዓቶችዎ እና በጥቅል ማኒፌስቶችዎ ውስጥም ይኖራሉ፣ በግልጽ በሚታይ ሁኔታ ይደበቃሉ፣ የኮድ ትክክለኛነትን ያዛባሉ እና የግንባታ ስርዓቶችን ይበክላሉ።
ከሲስተም ሩትኪትስ ወደ መዝገብ ቤት ሩትኪትስ
የስርዓት መሐንዲሶች የከርነል ሩትኪቶችን ይቆጣጠሩ ነበር። እነዚህ ስርዓቶችን ሙሉ በሙሉ ይቆጣጠሩ ነበር፣ ሲስካሎችን ይጥላሉ፣ ሂደቶችን ይደብቃሉ እና የኮድ ታማኝነትን ይጎዳሉ። አሁን፣ በገንቢ ላይ ያተኮረ ሁኔታን አስቡ፡ አንድ ተንኮል አዘል ተዋናይ ሩትኪትን ወደ የእርስዎ ሩትኪት ያስገባል። የጂት ማከማቻ or የጥገኝነት ዛፍይህ የማከማቻ ስርወ-ኪት የግንባታ ውጤቶችዎን ወይም ወደ ኋላ ሾልኮ የሚገቡትን የሚቆጣጠር ኮድ ሲሆን፣ ስርዓቱ እነሱን ከማስኬዱ በፊትም እንኳ የጥቅል ቅርሶችዎ አካል ይሆናል። ስርወ-ኪትስ ወደ ምንጭዎ፣ ጥገኞችዎ እና ወደ እርስዎ ምንጭ፣ ጥገኞች እና CI/CD ፍሰቶች.
Rootkits በኮድቤዝ እና ጥገኛዎች ውስጥ እንዴት እንደሚደበቅ
ገንቢዎች ሊመለከቷቸው የሚገቡ ተጨባጭ የ rootkit ጥቃት ቬክተሮችን እንፈትሽ፡
- የተደበቀ ወይም አሳሳች commits
እስኪ ሀ commit "የትየባ ስህተትን አስተካክል" የሚል ነገር ግን በእውነቱ በሂደት ላይ እያሉ ተንኮል አዘል የክፍያ ጭነቶችን የሚፈታ ሎደርን የሚያስገባ ነው። የሮኬትኪት ፍለጋ አስቸጋሪ የሚሆነው መቼ ነው? commit መልእክቶች ዓላማን ይደብቃሉ. - የተለወጡ ወይም የኋላ በር ያላቸው ቤተ-መጻሕፍት
አንድ የተለመደ የፍጆታ ተግባር በድብቅ የኋላ በር ስሪት ይተካል። ፈተናዎችን ያልፋል ነገር ግን ከሰዓታት በኋላ ምስጢሮችን ከርቀት አገልጋይ ይመዘግባል። ቤተ መፃህፍቱ የሚታወቅ ቢመስልም የኮድ ትክክለኛነት ተሰብሯል። - የተበላሹ የሶስተኛ ወገን ፓኬጆች እና የመሸጋገሪያ ጥገኝነቶች
እርስዎ ጭነዋል lib-crypto@2.0.1ወደላይ፣ የተመረዘ ሰው ስሪት 2.0.0 ከማልዌር ጋር። አሁን የእርስዎ pipeline የ rootkit በድንገት ቢጎትት ወይም የባሰው ደግሞ የመቆለፊያ ፋይልዎ ተዛብቶ የተበከለውን ኮድ ጎትተውታል። - የእንቅልፍ ኮድ እና የሎጂክ ቦምቦች
ኮድ ለሳምንታት ወይም ለወራት ምቹ ሆኖ ይቆያል፣ ከዚያም ይነቃል። ለምሳሌ፦
if os.getenv("DEPLOY_DATE") == "2025-09-01":
execute_backdoor()
ፈተናዎች ዛሬ ያልፋሉ፣ እና የኮድ ትክክለኛነት እስኪዘገይ ድረስ እንደማይሳካ አያስተውሉም።
በ DevOps ውስጥ የ Rootkit ፍለጋ ለምን አስፈላጊ ነው?
በእርስዎ ውስጥ ያሉ ሩትኪቶች pipeline እና ሪፖዎች እውነተኛ የገንቢ የስራ ፍሰቶችን ያስፈራራሉ፡
- ሳይስተዋል የሚያልፉ የተዛቡ ግንባታዎች፡ የ rootkit ከሆነ hooks በግንባታ ስክሪፕትህ ውስጥ፣ ተንኮል አዘል እንበል ከተጫነ በኋላ or ማዋቀር.ፒ, የእርስዎ CI ያልፋል፣ እና እርስዎ ሳያውቁ የተጎዱ ቅርሶችን ይገፋሉ።
- ወጥነት የሌላቸው ወይም እንደገና የማይሰሩ ግንባታዎች፦ የሩትኪት ግንባታዎች በገንቢ ማሽኖች እና በCI ወኪሎች ላይ እንዲለያዩ ሊያደርግ ይችላል። ይህ ልዩነት ለኮድ ትክክለኛነት ቀይ ባንዲራ ነው፣ ነገር ግን እየፈተሹት ከሆነ ብቻ።
- በመልቀቅ ላይ የማያቋርጥ ስምምነት፦ አንዴ ከተተከለ በኋላ የቅርንጫፍ ውህደትን፣ የቼሪ-ፒክስ እና የወደፊት ልቀቶችን ሊቋቋም ይችላል። ይባስ ብሎ ደግሞ ወደ ዝመናዎች ውስጥ ሊገባ እና የአቅርቦት ሰንሰለትዎን ሊያበላሽ ይችላል።
- Pipeline በገንቢ አካባቢዎች ውስጥ መመረዝ እና የጎን እንቅስቃሴ፡ የሩትኪት በCI ውቅሮች፣ በተጋሩ ሯጮች እና በተጋሩ ምስክርነቶች ባላቸው የገንቢ ማሽኖች ሊሰራጭ ይችላል። የኮድ ታማኝነት በኮድ ብቻ ሳይሆን በተለያዩ አካባቢዎችም ይጣሳል።
ተግባራዊ የሮኬት ኪት ምርመራ በ Pipelines
የ rootkit ማወቂያ ጨዋታዎን ለማሳደግ ለገንቢዎች ተስማሚ እና ተግባራዊ ሊሆኑ የሚችሉ ቴክኒኮች እነሆ፡
• ለወሳኝ ፋይሎች የሃሽ ማረጋገጫ እና ጥገኛነት
እንደ SHA‑256 (ወይም ተመሳሳይ) ላሉ ቁልፍ ፋይሎች አስላ መስፈርቶች.txt፣ ጥቅል-መቆለፊያ.json, ወይም ከፍተኛ ደረጃ የግንባታ ስክሪፕቶች፡
sha256sum requirements.txt > baseline.hash
...
sha256sum -c baseline.hash
በእነዚህ ፋይሎች ላይ የሚደረግ ማንኛውም ለውጥ ተንኮል አዘል ዌር ሊያስከትል የሚችል መሆኑን ያሳያል።
• SBOM (የሶፍትዌር ቢል ኦፍ ማቴሪያልስ) ማረጋገጫ
አወጣ SBOM እንደ ሲፍት ወይም ኤስፒዲኤክስ ባሉ መሳሪያዎች። የትኞቹ ጥገኝነቶች (እና ስሪቶች) በግንባታዎ ውስጥ እንዳሉ በትክክል ይከታተሉ። ያወዳድሩ። SBOMያልተጠበቁ ወይም ተንኮል አዘል ተጨማሪዎችን ለመለየት በግንባታዎች መካከል።
• ተፈርሟል commitኤስ እና የፊርማ ማረጋገጫ
ተግባራዊ ማድረግ ሂድ commit -S እና በCI ውስጥ ፊርማዎችን ያረጋግጡ፡
git verify-commit HEAD
አዲስ፣ ያልተፈረመ ወይም በጥርጣሬ የተፈረመ commit ምንጭ-ሩትኪት መመርመሪያ ሊሆን ይችላል።
• በግንባታ ወይም በማስኬድ ጊዜ በባህሪ ላይ የተመሠረተ ያልተለመደ ምርመራ
ያልተለመደ ባህሪን ለመያዝ ግንባታዎን በመገለጫ መሳሪያ ይጠቀሙበት፦ ለምሳሌ፣ ያልተጠበቁ የአውታረ መረብ ጥሪዎች በሚደረጉበት ጊዜ የሌሊት ጭነት or ፒፕ መጫንወይም በተጠበቁ አድራሻዎች ላይ ለውጦችን ፋይል ያድርጉ፦
# in CI pipeline
strace -f -e trace=network python setup.py install
በመጫን ጊዜ ያልተጠበቀ የውጪ ትራፊክ የ rootkit ጭነት ደረጃ ሊሆን ይችላል።
• የተደበቀ ወይም ከፍተኛ ኢንትሮፒ ኮድ ክፍሎችን በመቃኘት ላይ
አጠራጣሪ የኮድ ኢንትሮፒ ወይም ASCII/ለማንበብ አስቸጋሪ ያልሆኑ ክፍሎችን የሚጠቁሙ መሳሪያዎችን በ ውስጥ ይጠቀሙ pull requestsለምሳሌ፣ ለ መሠረት 64 ብሎቦች ወይም እንግዳ የሆነ የexec/ቫል አጠቃቀም። የተደመቀው ኮድ የእንቅልፍ ጫኝ ወይም የተመሰጠረ የክፍያ ጭነት ሊሆን ይችላል።
በአቅርቦት ሰንሰለቱ ውስጥ የኮድ ታማኝነትን መጠበቅ
ለረጅም ጊዜ፣ የ rootkit ምርመራን ሁለተኛ ተፈጥሮ የሚያደርጉ ልምዶች ያስፈልጉዎታል፦
- የጥገኝነት ፒኒንግ እና የመቆለፊያ ፋይሎች፦ ሁል ጊዜ commit የመቆለፊያ ፋይሎች (package-lock.json፣ requirements.lock, ወዘተ) የተለወጡ ጊዜያዊ ጥገኝነቶችን በድንገት እንዳያስገቡ እና የ rootkit ሾልኮ እንዳይገባዎት ስሪቶችን ይሰኩ።
- የተለቀቁ እና ፓኬጆችን ክሪፕቶግራፊክ ፊርማ፡ የራስዎን የግንባታ ቅርሶች በጂፒጂ ወይም ተመሳሳይ ይፈርሙ። ሸማቾች ፊርማዎችን ያረጋግጣሉ፤ የ rootkit ልቀትዎን ካዛባ፣ ማረጋገጫው ይከሽፋል እና የእምነት ሰንሰለትን ይሰብራል።
- መደበኛ ግምገማ የሶስተኛ ወገን እና የሽግግር ለውጦች: አዲስ ወይም የተለወጡ ጥገኝነቶችን የሚጠቁሙ የጥገኝነት መቆጣጠሪያ መሳሪያዎችን ይጠቀሙ። ከ ጋር ይጣመሩ SBOM የተወጉ ወይም የተተኩ ሞጁሎችን ለመለየት ልዩነቶች።
- የጥገኝነት መንሸራተትን ቀጣይነት ያለው ክትትል ወይም ያልተፈቀዱ ለውጦች: ራስ-ሰር SBOM በእርስዎ CI ውስጥ ይለያያል፡ ያልተጠበቁ ጥገኝነቶች ከታዩ የውድቀት ግንባታዎች። ከጊዜ በኋላ የጥገኝነት መንሸራተትን ይከታተሉ፣ እና የሆነ ነገር ከሚጠበቀው ሁኔታ የሚለይ ከሆነ ያሳውቁ፡ ለምሳሌ፣ rootkit commit ወይም የተተካ ጥገኝነት።
መደምደሚያ
ሩትኪትስ አሁን በሲዳሚኖች እና በከርነሎች ብቻ የተወሰነ አይደለም፤ ወደ ልማት ማዕከል ተዛውረዋል፤ የእርስዎ ማከማቻ፣ ግንባታዎች እና ሲአይ pipelineዎች. ገንቢዎች የ rootkit ማወቂያ እና የኮድ ትክክለኛነትን እንደ ዋና የ appsec ጉዳዮች አድርገው መያዝ አለባቸው። የሃሽ ማረጋገጫን በመጠቀም፣ SBOM ኦዲት፣ የተፈረመ commitየባህሪ ልዩነትን መለየት እና የጥገኝነት ንፅህናን በመጠበቅ፣ በኮድ ውስጥ ከሚኖሩ የ rootkits ላይ ተግባራዊ መከላከያዎችን ይገነባሉ።
እንደ መሳሪያ ዚጌኒበሶፍትዌር አቅርቦት ሰንሰለት ማጠንከሪያ ላይ ያተኮረው የዴቭሴክኦፕስ ቡድኖች የኮድ ታማኝነትን እንዲጠብቁ እና የሮኬትኪት ስጋቶችን በስራ ፍሰቱ መጀመሪያ ላይ እንዲለዩ ሊያበረታታቸው ይችላል። ይህ ለገንቢ-መጀመሪያ ደህንነት ወሳኝ አጋር ሲሆን ይህ በእርስዎ ማከማቻ፣ ግንባታ ወይም ምርት ውስጥ ከመሰራጨቱ በፊት ለማስቆም ይረዳል።







