Ectoplasm npm ස්ථාපනය Hooks ඒක AWS අක්තපත්‍ර සොරකම් කරනවා

Ectoplasm: npm install hooks බහාලුම්-පමණක් ප්‍රේරකයක් පිටුපස AWS අක්තපත්‍ර අස්වැන්න නෙළා ගන්නා

TL; ඩී

පොකුරක් npm පැකේජ පහක්ගිණුම් හැන්ඩ්ල් දෙකක් හරහා ප්‍රකාශයට පත් කරන ලද, නැව්ගත කරන ලද postinstall සත්කාරකයෙන් වලාකුළු අක්තපත්‍ර කියවා ඒවා පෙට්ටියෙන් පිටතට යවන කොක්කකි. පැකේජවල අවතාර සහ මුහුදු කොල්ලකරුවන්ගේ නම් ඇත - coral-wraith, ecto-corsair-whisper-6f3b9, ecto-corsair-flag-x9m4, ecto-rust-read-f3a9c1, ecto-nightly-spirit — සහ ඔවුන් එකතු කරන ඕනෑම දෙයක් ව්‍යාජ එකක් බවට අනුක්‍රමික කරන්න ecto_module: YAML මැනිෆෙස්ට් එක සම්ප්‍රේෂණය කිරීමට පෙර. අපි පොකුර නිරීක්ෂණය කරන්නේ ectoplasm.

ගෙවීමේ බර ක්‍රියාත්මක වන්නේ එය නිශ්චිත පරිසරයක් අනාවරණය කරගත් විට පමණි: එහි නම a වන සත්කාරකයක් අක්ෂර 12 ෂඩ් තන්තුව සහ යටතේ වැඩ කරන නාමාවලියක් /app/node_modules — බහාලුම් කළ ගොඩනැගිල්ලක හෝ CI සේවකයෙකුගේ හැඩය. එම ගේට්ටුව පසු කරන විට, කොක්කෙන් විමසනු ලැබේ AWS නිදර්ශන පාරදත්ත සේවාව (IMDSv2) IAM භූමිකාව පිළිබඳ සහතික සඳහා, ලැයිස්තුගත කරයි AWS රහස් කළමනාකරු කලාප තුනක් හරහා, පරිසර විචල්‍යයන් ඩම්ප් කරයි, යටතේ ඇති ගොනු කියවයි /app, සහ කොඩි නූල් අල්ලා ගැනීම සඳහා සීරීම්. ඉන්පසු එය ප්‍රතිඵලය ක්‍රම දෙකකට පෙරහන් කරයි: බීකන් එකක් a වෙත webhook.site එකතුකරන්නා සහ raw-IP අන්ත ලක්ෂ්‍යයකට මැනිෆෙස්ට් PUT එකක්, localhost-පළමු පසුබැසීම් ලැයිස්තුවක් සමඟ.

පසුකාලීන පැකේජ විස්තරවල "verdaccio සැපයුම් දාම පරීක්ෂාව සඳහා CTF ගෙවීම්" යනුවෙන් සඳහන් කර ඇත. අපි එම ස්වයං විස්තරය නිරීක්ෂණය කළ හැකි කරුණක් ලෙස වාර්තා කරමු. හැසිරීමම - පොදු IP ලිපිනයකට සජීවීව පිටවීම, සැබෑ IMDS අක්තපත්‍ර කියවීම්, සැබෑ Secrets Manager ඇමතුම් - ලේබලය කුමක් වුවත් එය වන අතර මෙම අනුවාද අනිෂ්ට ලෙස වර්ගීකරණය කිරීමට හේතුව එයයි.

පොකුරේ එක් නමක්, coral-wraith, එක නිකුතුවකින් නතර වූයේ නැත. එය පැය කිහිපයක් ඇතුළත අනුවාද දුසිම් ගණනක් හරහා වේගයෙන් නැවත ප්‍රකාශයට පත් කරන ලදී - 1.0.0 වෙත නැගීම 6.0.0 — සහ එම නමින්ම පෙර ධාවනයක් පුම්බන ලද භාවිතා කර ඇත 9999.0.x අනුවාද අංක, a හි සම්භාව්‍ය හැඩය යැපීම-ව්‍යාකූල උත්සාහය. ඒ හරහා ගෙවීම් බර දෘශ්‍යමාන ලෙස පරිණත කර ඇත: එක්-පහර ධාරක-ගණනය කිරීමේ බීකනයක සිට එහි අපේක්ෂිත ඉලක්කයෙන් පිටත නිහඬව තබා ගන්නා පරිසර පරීක්ෂාවන්ගෙන් ඔතා ඇති සම්පූර්ණ AWS අක්තපත්‍ර හැරීමක් දක්වා.

පැකේජ නම් 5; coral-wraith පමණක් අනුවාද දුසිම් ගණනක් හරහා නැවත ප්‍රකාශයට පත් කරන ලදී.
පරිසර පද්ධතිය npm
දෛශිකය ස්ථාපනය කරන්න postinstall ජීවන චක්‍ර පිටපත
ප්‍රාථමික ඉලක්කය AWS IAM භූමිකාවේ අක්තපත්‍ර + රහස් කළමනාකරු රහස් අගයන්, පරිසර විචල්‍යයන්, /app ගොනු
එක්ස්ෆිල් webhook.site බීකන් + අමු-IP C2 PUT
ට්‍රිගර් ගේට්ටුව 12-හෙක්ස් සත්කාරක නාමය + /app/node_modules cwd, ඊට අමතරව එම සන්දර්භයෙන් පිටත ගෙවීම මර්දනය කරන පරිසර පරීක්ෂාවක්
බරපතලකම ඉහළ — වලාකුළු අක්තපත්‍ර සහ කළමනාකරණය කළ රහස් හෙළිදරව් කිරීම බහාලුම්ගත ගොඩනැගීම සහ ධාවන කාල පරිසරයන්

ප්‍රහාර ව්‍යුහ විද්‍යාව

පොකුරේ ඇති සෑම පැකේජයක්ම එකම ආකාරයකින් ගොඩනගා ඇත: පාහේ හිස් index.js (මොඩියුලය.අපනයන = {}), තනි පේළියක් පැකේජය ස්ක්‍රිප්ට් — “postinstall”: “node postinstall.js” — සහ එහි බර පැටවීම postinstall.js. පැකේජය ස්ථාපනය කිරීම කොක්ක ක්‍රියාත්මක කිරීමට ප්‍රමාණවත් වේ; ආනයනය හෝ ඇමතුම අවශ්‍ය නොවේ.

ඉලක්කගත දොරටුව. කිසිවක් කිරීමට පෙර, ecto-පවුලේ බර පැටවීම එහි වටපිටාව පරීක්ෂා කරයි:

function isAppWorker():   host = os.hostname()   if host does NOT match /^[0-9a-f]{12}$/  -> exit   if cwd does NOT contain "/app/node_modules" -> exit   if cwd contains "/tmp/npm-safe"            -> exit   otherwise -> proceed

12-හෙක්ස් සත්කාරක නාමයක් යනු ඩොකර් විසින් බහාලුමකට පවරන පෙරනිමි හැඩය වන අතර, /යෙදුම/නෝඩ්_මොඩියුල සාම්ප්‍රදායික බහාලුම් තුළ ස්ථාපන මාර්ගයකි. මාර්ගය වැලිපිල්ල නිස්සාරණ නාමාවලියක් මෙන් පෙනේ නම් තුන්වන වගන්තිය ඇපකර දෙයි. ශුද්ධ බලපෑම නම්, ගෙවීම් භාරය සංවර්ධක ලැප්ටොප් පරිගණකයක හෝ විශ්ලේෂණ වැලිපිල්ලක අක්‍රියව පවතින අතර බහාලුම්ගත ගොඩනැගීමක් හෝ ධාවන කාල සේවකයෙකු තුළ පමණක් සක්‍රිය වීමයි - සජීවී වලාකුළු අක්තපත්‍ර රැගෙන යාමට බොහෝ දුරට ඉඩ ඇති පරිසරය. පොකුරේ මුල්ම පැකේජය, කොරල් රැලි, එවැනි ගේට්ටුවක් නොමැති අතර එහි (සරල) එකතුව කොන්දේසි විරහිතව පවත්වාගෙන යයි.

එකතු. ගේට්ටුව පසු කරන විට, කොක්ක පිටතට යයි එක්සෙක්ෆයිල්සින්ක්(“/bin/sh”, [“-c”, ...]) සහ තනි සංයුක්ත විධානයක් ක්‍රියාත්මක කරයි, එය අනුපිළිවෙලින්:

1. PUT /latest/api/token to 169.254.169.254          (IMDSv2 token request) 2. GET .../iam/security-credentials/                  (IAM role name) 3. GET .../iam/security-credentials/<role>            (temporary credentials) 4. dump env | sort                                    (environment variables) 5. list /app (excl. node_modules) + cat first 15      (application files) 6. aws secretsmanager list-secrets                    (us-east-1, eu-west-1, eu-central-1) 7. scrape readable files for HTB{...}                 (capture-the-flag strings)

පියවර 1–3 යනු පෙළපොත් IMDSv2 ලබා ගැනීමකි: සැසි ටෝකනයක් ඉල්ලා සිටින්න, ඉන්පසු එය අමුණන්න X-aws-ec2-මෙටාඩේටා-ටෝකනය අවස්ථාවෙහි IAM භූමිකාව සහ එම භූමිකාවෙහි තාවකාලික ප්‍රවේශ යතුරු ඇද ගැනීමට ශීර්ෂකය. සරල සත්‍යාපනය නොකළ IMDSv1 වෙනුවට IMDSv2 ක්‍රියාත්මක කිරීමට තේරීම. ගන්න සඳහන් කිරීම වටී — එයින් අදහස් වන්නේ AWS-නිර්දේශිත දැඩි කිරීම වන ටෝකන්-පාදක මෙටාඩේටා ප්‍රවේශය අවශ්‍ය වන පරිදි වින්‍යාස කර ඇති අවස්ථාවන්හිදී පවා ගෙවීම ක්‍රියා කරන බවයි. පියවර 3 මගින් ආපසු ලබා දෙන අක්තපත්‍ර කෙටි කාලීන වේ. AccessKeyId/රහස් ප්‍රවේශ යතුර/ටෝකන් අවස්ථාවෙහි භූමිකාව සඳහා ත්‍රිත්ව විෂය පථයක් ඇත; එම භූමිකාවට කළ හැකි දේ කුමක් වුවත්, එම යතුරු දරන්නාට අක්තපත්‍රයේ ජීවිත කාලය පුරාම කළ හැකිය.

පියවර 4–6 මඟින් ලබා ගැනීම පුළුල් කරයි. දළ වශයෙන් ඩම්ප් මඟින් ගොඩනැගීමේ හෝ ධාවන කාල ක්‍රියාවලිය උරුම කරගත් ඕනෑම දෙයක් ග්‍රහණය කරයි - ප්‍රායෝගිකව රෙජිස්ට්‍රි ටෝකන, දත්ත සමුදා සම්බන්ධතා නූල් සහ API යතුරු බොහෝ විට ජීවත් වන්නේ මෙහිදීය. / යෙදුම file walk මඟින් යෙදුම් ගොනු පහළොවක් දක්වා පිටතින් කියවනු ලැබේ. node_modules, මතුපිට වින්‍යාසය කළ හැකි, .env ගොනු, හෝ මූලාශ්‍රය. පියවර 6 ඇමතුම් aws රහස් කළමනාකරු ලැයිස්තුව-රහස් කලාප තුනක; පියවර 1–3 තුළ ලබා ගන්නා ලද අක්තපත්‍ර හරියටම එම ඇමතුම් සත්‍යාපනය කරන දේ වන බැවින්, IMDS කියවීම සහ රහස් කළමනාකරු ගණන් කිරීමේ දාමය තනි උත්සන්න කිරීමකට ඒකාබද්ධ කරයි: අවස්ථා භූමිකාව → කළමනාකරණය කළ-රහස් ඉන්වෙන්ටරි. පියවර 7 යනු ග්‍රහණය-ධජ-රාමුව සඳහා අනුමැතියකි - කවදාද? එච්ටීබී{…} කොඩිය හමු වූ පසු එය තනිවම යවනු ලැබේ, එසේ නොමැතිනම් අමුවෙන් එකතු කරන ලද බ්ලබ් එක කැබලි හතරකට කපා යවනු ලැබේ.

පසුකාලීන අනුවාදවල පොකුර තවදුරටත් උත්සන්න වීම සිදු වේ. ඉන්වෙන්ටරියක නතර වීම වෙනුවට, ඔවුන් IMDS ප්‍රතිචාරය විග්‍රහ කර, තාවකාලික යතුරු අපනයනය කරන්නේ AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY / AWS_සැසිය_ටෝකන් පරිසර විචල්‍යයන්, අනන්‍යතාවය තහවුරු කරන්න aws sts ඇමතුම්කරුගේ අනන්‍යතාවය ලබා ගන්න, ඉන්පසු ආපසු ලබා දෙන සෑම රහසක්ම ලූප් කරන්න ලැයිස්තු-රහස් ඉල්ලා aws රහස් කළමනාකරු රහස්-වටිනාකම ලබා ගන්න එක් එක් මත — ඒවායේ නම් පමණක් නොව රහස් අන්තර්ගතයන් ලබා ගැනීම. එම අනුවාදයන්ම ක්‍රියාවලි-ආදේශක ධජ ද්විමය ද කියවයි (/කියවන්නධජය සහ මිතුරන්) උත්සාහ කර බලන්න ආරෝපණ ධාවනය යටතේ ඇති ඕනෑම මලකඩ ව්‍යාපෘතියකට එරෙහිව / යෙදුම, ගොඩනැගීමේ පරිසරය නිරාවරණය කරන ඕනෑම දෙයකට වලාකුළු අක්තපත්‍රවලින් ඔබ්බට අස්වැන්න පුළුල් කිරීම.

මෙම පසුකාලීන අනුවාදයන් ද වඩාත් ආක්‍රමණශීලී ලෙස දොරටුව සපයයි. 12-හෙක්ස්-ධාරක නාමයට අමතරව සහ /යෙදුම/නෝඩ්_මොඩියුල පරීක්ෂා කරන විට, ගෙවීම් බර සක්‍රීය පැකේජ-ලේඛන වින්‍යාසය සහ ක්‍රියාකාරී-නාමාවලි මාර්ගය පරීක්ෂා කරන අතර සජීවී ඉලක්කයකට වඩා විශ්ලේෂණයක් හෝ කැඩපත් සන්දර්භයක් දක්වන විට නිහඬව පිටවෙයි. ඒකාබද්ධ බලපෑම යනු බොහෝ පරීක්ෂණ පරිසරයන්හි නිරීක්ෂණය කළ හැකි කිසිවක් නොකරන ගෙවීමක් වන අතර එය අව්‍යාජ බහාලුම් කළ ධාරකයක සිටින බව විනිශ්චය කරන තැන පමණක් එහි සම්පූර්ණ එකතුව ක්‍රියාත්මක කරයි.

පිටකිරීම. එකතු කරන ලද දත්ත ධාරකය නාලිකා දෙකකට තබයි. පළමුව, බීකන් එකක් තැපැල් ස්ථාවරයකට වෙබ්හුක්.අඩවිය එකතුකරන්නා, සත්කාරක නාමය, සංඛ්‍යාත්මක UID, ක්‍රියාකාරී නාමාවලිය සහ එකතු කරන ලද දත්ත 120 KB දක්වා රැගෙන යයි. දෙවනුව, දත්ත ව්‍යාජ YAML “මොඩියුල මැනිෆෙස්ට්” එකකට නැවී ඇත. දාන්න දක්වා /api/මොඩියුල/ ඉලක්ක සේවාදායකයක:

ecto_module:   name: "<flag-or-chunk-0>"   version: "1.0.0"   power_level: "<chunk-1>"   ship_deck: "<chunk-2>"   cargo_hold: "<chunk-3>"

මැනිෆෙස්ට් ක්ෂේත්‍ර නම් (බල මට්ටම, නැව් තට්ටුව, භාණ්ඩ_රැඳවුම) යනු සැරසිලි වේ — සොරකම් කරන ලද දත්ත නූල් අගයන් තුළට ගමන් කරයි, එම නිසා ජාල මොනිටරයක් ​​පැහැදිලි දත්ත ඩම්ප් එකකට වඩා මෘදු පැකේජ-රෙජිස්ට්‍රි මැනිෆෙස්ට් උඩුගත කිරීමක් මෙන් පෙනෙන දේ දකී. බීකන් නාලිකාව තවත් බොහෝ දේ රැගෙන යයි: තැපැල් ශරීරය වෙත වෙබ්හුක්.අඩවිය ධාරක නාමය, සංඛ්‍යාත්මක UID, ක්‍රියාකාරී නාමාවලිය සහ එකතු කරන ලද බ්ලොබ් එකේ 120 KB දක්වා ඇතුළත් වේ, එබැවින් එක් සාර්ථක බීකන් එකක් පවා සම්පූර්ණ ග්‍රහණය ලබා දෙයි. වෙබ්හුක්.අඩවිය නොමිලේ ඉල්ලීම්-පරීක්ෂණ සේවාවකි; එය එකතුකරන්නෙකු ලෙස භාවිතා කිරීම යනු එම නාලිකාව සඳහා තමන්ගේම යටිතල පහසුකම් ලබා ගැනීම සඳහා ක්‍රියාකරුට කිසි විටෙකත් නැගී සිටීමට සිදු නොවන අතර, පටිගත කරන ලද ඉල්ලීම් සේවා බඳුනේ පවතී.

මැනිෆෙස්ට් එක දාන්න කිහිපයකින් ආරම්භ වන පසුබැසීම් ලැයිස්තුවක් ක්‍රියාත්මක කරයි 127.0.0.1/දේශීයව වරායන් සහ පසුව ` හි පොදු ලිපින තුනකට වැටේ154.57.164.0/24` පරාසය, 2xx තත්ත්වයකින් පිළිතුරු දෙන පළමු අන්ත ලක්ෂ්‍යයෙන් නතර වේ. localhost-පළමු අනුපිළිවෙල “verdaccio පරීක්ෂණ” ස්වයං-විස්තරයට (loopback හි දේශීය ලේඛනයක්) අනුකූල වේ, නමුත් public-IP පසුබැසීම් යන්නෙන් අදහස් කරන්නේ loopback සවන් නොදෙන සෑම අවස්ථාවකම දත්ත ධාරකයෙන් ඉවත් වන බවයි - එනම්, කර්තෘගේම පරීක්ෂණ යන්ත්‍රයක් නොවන ඕනෑම යන්ත්‍රයක.

කාල නියමය

පොකුර තනි බිංදුවකට වඩා වර්ධක හැකියාවන් වර්ධනයක් පෙන්නුම් කරයි. අපි එය ඇණවුම් කරන්නේ නිරීක්ෂණය කරන ලද හැසිරීම අනුව මිස බිත්ති ඔරලෝසුව ප්‍රකාශයට පත් කිරීමෙන් නොවේ:

අදියර පැකේජ / අනුවාද හැසිරීම
කලින් ධාවනය coral-wraith 9999.0.x පරායත්තතා-ව්‍යාකූල උත්සාහයකට අනුකූල වන පුම්බන ලද අනුවාද අංක; ස්ථාපන-කාල ගණන් කිරීම සහ පිටකිරීම
බීජ coral-wraith 1.0.0 postinstall id/env/flag ගොනු එකතු කරයි; තනි PUT එකක් 154[.]57[.]164[.]71:30782, සලකුණුකාරකය ECT-472839
වේගවත් පුනරාවර්තනය coral-wraith 1.0.1 → 6.0.0 පැය කිහිපයක් ඇතුළත නිකුත් කිරීම් දුසිම් ගණනක්; බර පැටවීම වැඩි කරයි isAppWorker() ගේට්ටුව, IMDSv2 අක්තපත්‍ර ඇද ගැනීම, සම්පූර්ණ get-secret-value විවර්තනය, රෙජිස්ට්‍රි/මාර්ග පරිසර පරීක්ෂාව සහ ද්විත්ව සින්ක් සලකුණු
සමාන්තර නම් ecto-corsair-whisper-6f3b9 1.0.14–1.0.18 එකම ගේටඩ් බර පැටවීම; webhook.site බීකන් සහ බහු-අන්ත ලක්ෂ්‍ය පසුබැසීම් ලැයිස්තුව
ප්රභේද ecto-rust-read-f3a9c1 1.0.1–1.0.2 අමතර සින්ක් සලකුණු එකතු කරයි ECT-987654, ECT-654321, ECT-839201
ප්රභේද ecto-corsair-flag-x9m4 1.0.0, ecto-nightly-spirit 1.1.0 එකම ගේටඩ් බර පැටවීම, එකම C2 සහ බීකන් එක

පොකුරේ නිර්වචන ලක්ෂණය වන්නේ එහි ප්‍රකාශන ධාරිතාවය: එක් පැකේජයක් සහ එක් අනුවාදයක් වෙනුවට, එකම නම ඉක්මනින් අනුප්‍රාප්තිකව නැවත නැවත ප්‍රකාශයට පත් කරනු ලැබේ, ඒ සෑම එකක්ම අවසාන එකෙහි කුඩා විචලනයක් නිකුත් කරයි, එකම බර උසුලන වෙනස් ලෙස නම් කරන ලද සහෝදර සහෝදරියන් අතලොස්සක් සමඟ. විහඟි කේතය සමීප ඇඟිලි සලකුණු දෙකකට බෙදා ඇත - එක් කට්ටලයක් තීරණාත්මක අනාවරණ දෙකක් ට්‍රිප් කරයි, තවත් කට්ටලයක් (අතිරේක ගොනු-කියවන සින්ක් එකක්) - නමුත් දෙකම එකම ගෙවීමකට නිරාකරණය වේ; වෙනස වන්නේ හැසිරීම් දෙබලක නොව කේත ප්ලාවිතයයි. අනුවාද විහඟි විශ්ලේෂණය කරන ලද පරාසයෙන් ඔබ්බට (ලිවීමේදී අවම වශයෙන් 1.0.25 දක්වා) ලේඛනයේ සජීවීව නිරීක්ෂණය කරන ලද අතර, කොරල් රැලි නම එකම කවුළුව හරහා තමන්ගේම අනුවාද ඉණිමඟට නැග්ගා.

සම්මුති දර්ශක

පහත දැක්වෙන සියලුම දර්ශක තැටියේ ඇති පැකේජ මූලාශ්‍රයෙන් උපුටා ගන්නා ලදී. ජාල දර්ශක විකෘති කර ඇත.

ජාල

දර්ශකයක් කාර්යභාරය
hxxp://154[.]57[.]164[.]71:30782 C2 PUT ඉලක්කය (coral-wraith)
hxxp://154[.]57[.]164[.]80:30543 C2 PUT පසුබැසීම (ecto-*)
hxxp://154[.]57[.]164[.]82:31250 C2 PUT පසුබැසීම (ecto-*)
hxxp://154[.]57[.]164[.]71:31289 C2 PUT පසුබැසීම (ecto-*)
hxxps://webhook[.]site/602a4c72-7033-4e28-92ea-dc66e59206e5 බීකන් එකතු කරන්නා
169[.]254[.]169[.]254/latest/... IMDSv2 අක්තපත්‍ර කියවීම (ඉලක්ක පැත්ත, AWS පාර-දත්ත)

හැසිරීම්/ගොනුව

දර්ශකයක් කාර්යභාරය
"postinstall": "node postinstall.js" දෛශිකය ස්ථාපනය කරන්න
ecto_module: සමඟ YAML power_level / ship_deck / cargo_hold යතුරු Exfil මැනිෆෙස්ට් යෝජනා ක්‍රමය
සින්ක් සලකුණු ECT-472839, ECT-987654, ECT-654321, ECT-839201 C2 මාර්ග කොටස /api/modules/<marker>
isAppWorker() ගේට්ටුව: සත්කාරක /^[0-9a-f]{12}$/, cwd අඩංගු වේ /app/node_modules සක්‍රිය කිරීමේ තත්ත්වය
aws secretsmanager list-secrets කට us-east-1, eu-west-1, eu-central-1 රහස් ගණන් කිරීම
HTB{...} රීජෙක්ස් ස්ක්‍රේප් කොඩි අස්වැන්න අල්ලා ගැනීම

ගොනු හැෂ් (sha256, විශ්ලේෂණ අවස්ථාවේදී ග්‍රහණය කර ඇත)

ගොනුව ෂැන්හුන්ස්
coral-wraith/postinstall.js ce5ff035cfdfed1d0015446424b352c27b66bcb77e9fdb0a51e4245199146824
ecto-corsair-whisper-6f3b9 1.0.18/postinstall.js b58432acba376aa6976f0490d9a1c04257ccdbc856d8390260c50322d63e31c3

ආරෝපණය සහ නිරීක්ෂණය කළ හැසිරීම

පැකේජ නම් පහ npm ගිණුම් හැන්ඩ්ල් දෙකක් යටතේ ප්‍රකාශයට පත් කරන ලදී, නමුත් ඒවා එක් පොකුරක් ලෙස සැලකීමට ප්‍රමාණවත් යටිතල පහසුකම් බෙදා ගනී: එකම එක්ටෝ_මොඩියුලය මැනිෆෙස්ට් සැලැස්ම, එකම ECT-472839 හඳුන්වා දීම ප්‍රාථමික සින්ක් සලකුණ, එකම වෙබ්හුක්.අඩවිය එකතුකරන්නාගේ හැඳුනුම්පත, සහ C2 අන්ත ලක්ෂ්‍ය එකම ස්ථානයක 154.57.164.0/24` බ්ලොක් එක. බීජ පැකේජය (`කොරල්-රයිත්, සරල සහ ගේටඩ් නොවන) සහ ගේටඩ් එක්ටෝ-පවුල මේ අනුව ස්වාධීන උත්සාහයන් ලෙස නොව එක් මෙවලම් කට්ටලයක පුනරාවර්තන ලෙස කියවනු ලැබේ.

පසුකාලීන අනුවාද වල පැකේජ තමන් ගැන විස්තර කරන්නේ මෙසේය "වර්ඩැසියෝ සැපයුම් දාම පරීක්ෂණ සඳහා CTF ගෙවීම." අපි එම ලේබලය නිරීක්ෂණය කළ හැකි කරුණක් ලෙස මතුපිටට ගෙන එන අතර අරමුණ පිළිබඳ සොයා ගැනීමක් ලෙස එය නැවත ප්‍රකාශ නොකරමු. කේතය කරන්නේ එය ලේබල් කර ඇති ආකාරයට වඩා පැහැදිලි සහ ස්වාධීන ය: එය නිදර්ශන මෙටාඩේටා සේවාවෙන් IAM භූමිකාව පිළිබඳ සහතික කියවයි, AWS කලාප තුනක් හරහා කළමනාකරණය කළ රහස් ගණන් කරයි, සහ ප්‍රතිඵල පොදු IP ලිපිනයකට සහ තෙවන පාර්ශවීය වෙබ් හුක් එකතුකරන්නෙකුට සම්ප්‍රේෂණය කරයි. සැබවින්ම ලූප්බැක්-පමණක් පරීක්ෂණ පටි සඳහා පොදු-IP නැවත පැමිණීමේ ලැයිස්තුව, IMDS අක්තපත්‍ර කියවීම් හෝ හරස්-කලාප රහස් කළමනාකරු ඇමතුම් අවශ්‍ය නොවේ. පිටවීම සහ අක්තපත්‍ර ප්‍රවේශය සැබෑ බැවින්, ගේටඩ් අනුවාදයන් අනිෂ්ට ලෙස වර්ගීකරණය කරන ලදී.

බහාලුම්-පමණක් ගේට්ටුව යනු ක්‍රියාකාරීව වඩාත්ම කැපී පෙනෙන ලක්ෂණයයි. එය මගහැරීමේ පියවරක් - ලැප්ටොප් පරිගණකවල සහ විශ්ලේෂණ වැලි පෙට්ටිවල නිහඬව සිටීම - සහ ඉලක්කගත මිනුමක් යන දෙකම වන අතර, සැබෑ IAM භූමිකාවක් සහ සජීවී රහස් බොහෝ දුරට පවතින තැන පමණක් වෙඩි තබයි. සාමාන්‍ය වැලි පෙට්ටියක මෙම පැකේජ ධාවනය කරන විශ්ලේෂකයින් කිසිවක් නිරීක්ෂණය නොකරනු ඇත; හැසිරීම ප්‍රකාශ වන්නේ Docker-style hostname සහ in-container install path යටතේ පමණි.

ආරක්ෂකයින් සඳහා බලපෑම, ප්‍රවණතා සහ මග පෙන්වීම

මෙහි නිරාවරණය යනු ගොඩනැගීමේ සහ ධාවන කාල බහාලුම් තුළ වලාකුළු-අක්තපත්‍ර සහ රහස් හෙළිදරව් කිරීමයි. IMDS වෙතින් ලබා ගන්නා IAM භූමිකාව පිළිබඳ අක්තපත්‍රයක් එම භූමිකාව සතු ඕනෑම අවසරයක් දරයි; රහස් කළමනාකරු:ලැයිස්තු රහස් (සහ ඕනෑම පසු විපරමක් රහස් අගය ලබා ගන්න) ගබඩා කර ඇති යෙදුම් රහස් දක්වා එය පුළුල් කරයි. පරිසර-විචල්‍ය ඩම්ප් බොහෝ විට රෙජිස්ට්‍රි ටෝකන, දත්ත සමුදා URL සහ API යතුරු රැගෙන යයි. CI හෝ බහාලුම් සන්දර්භයක් තුළ - ගේට්ටුව තෝරා ගන්නා දේ හරියටම - මෙම පැකේජවලින් එකක තනි සංක්‍රාන්ති ස්ථාපනයක් එම ද්‍රව්‍ය කාන්දු වීමට ප්‍රමාණවත් වේ.

Ectoplasm යනු අප දිගටම දකින රටාවකට ගැලපේ: වලාකුළු පාර-දත්ත වෙත ළඟා වන සහ දේශීය ගොනු වෙනුවට රහස් කළමනාකරණය කරන ස්ථාපන-කාල ගෙවීම් සහ ඉහළ වටිනාකමක් ඇති පරිසරවල පමණක් වෙඩි තැබීමට දොරටු සපයයි. ආරක්ෂක නිරීක්ෂණ දෙකක් අනුගමනය කරයි.

  • හැඩය හඳුනාගත හැකිය.. cloud secrets API දෙකටම ළඟා වන ඇමතුම් ප්‍රස්ථාරයක් සහිත npm/PyPI ස්ථාපන කොක්කක් (aws රහස් කළමනාකරු, gcloud රහස්, ඇස් කීවෝල්ට්) හෝ IMDS ලිපිනය සහ ජාල පිටවීමේ සින්ක් යනු පටු, ඉහළ සංඥා රටාවකි - එය නීත්‍යානුකූල ජීවන චක්‍ර ස්ක්‍රිප්ට් එකක කිසි විටෙකත් සිදු නොවේ. ස්ථිතික ප්‍රවාහ විශ්ලේෂණය කිසියම් නිශ්චිත වසමක් හෝ IP ලිපිනයක් මත යැපීමෙන් තොරව එය සලකුණු කළ හැක.
  • පරිසරය දැඩි කිරීම එය මොට කරයි. 1 ක හොප් සීමාවක් සහිත IMDSv2 බලාත්මක කිරීම මඟින් බහාලුම් වැඩ බර අවස්ථා පාරදත්ත වෙත ළඟා වීම වළක්වයි; IAM භූමිකාවන් අවම වරප්‍රසාදයකට සීමා කිරීම කාන්දු වන ඕනෑම අක්තපත්‍රයක පිපිරුම් අරය සීමා කරයි; සහ -ස්ක්‍රිප්ට් නොසලකා හරින්න CI හි, අවශ්‍ය නොවන පැකේජ සඳහා ස්ථාපන-කොක්ක දෛශිකය සම්පූර්ණයෙන්ම ඉවත් කරයි.

ආරක්ෂකයින් සඳහා, ප්‍රායෝගික පරීක්ෂාවන් වන්නේ: ගොඩනැගීමේ/CI බහාලුම්වල සිට අවසර ලත් ලැයිස්තුගත නොකළ පොදු IP වෙත පිටතට යන සම්බන්ධතා පිළිබඳ අනතුරු ඇඟවීමයි. npm ස්ථාපනය කරන්න; පැකේජ ජීවන චක්‍ර ස්ක්‍රිප්ට් වලින් ආරම්භ වන IMDS ප්‍රවේශය සඳහා බලා සිටින්න; සහ වෙනත් ආකාරයකින් ඔප්පු වන තුරු cloud CLI වෙත යොමු වන ඕනෑම ස්ථාපන කොක්කක් සැක සහිත ලෙස සලකන්න.

මෙම පොකුරට විශේෂිත තවත් සටහන් දෙකක්. පළමුව, සක්‍රිය කිරීම බහාලුම් පරිසරයන්ට සීමා කර ඇති බැවින්, වැඩපොළක පරීක්ෂා කළ විට නිෂ්ක්‍රීය ලෙස පෙනෙන පැකේජයක් තවමත් නිෂ්පාදනයේ සජීවීව පැවතිය හැකිය - පරීක්ෂා කිරීම සඳහා බහාලුම් සත්කාරක නාමය සහ මාර්ග තත්වයන් ප්‍රතිනිෂ්පාදනය කිරීමට හෝ "මම එය ස්ථාපනය කළ අතර කිසිවක් සිදු නොවීය" මත රඳා නොසිට මූලාශ්‍රය කෙලින්ම කියවීමට අවශ්‍ය වේ. දෙවනුව, බීකන් එකතු කරන්නෙකු ලෙස පොදු ඉල්ලීම්-පරීක්ෂණ සේවාවක් භාවිතා කිරීම යන්නෙන් අදහස් වන්නේ සමහරක් පිට කරන ලද දත්ත සිදුවීම් ප්‍රතිචාරය සඳහා නැවත ලබා ගත හැකි බවයි: මෙම පැකේජවලින් එකක් එහි යැපුම් ගසේ සොයා ගන්නා සංවිධානයකට සාර්ථක බීකන් එකක ගෙවීම් එකතු කිරීමේ තර්කයෙන් අඩංගු වන්නේ කුමක්ද යන්න පිළිබඳව තර්ක කළ හැකි අතර, බලපෑමට ලක් වූ ගොඩනැගීමේ හෝ ධාවන කාල පරිසරයෙන් ළඟා විය හැකි ඕනෑම IAM භූමිකාව අක්තපත්‍ර, රෙජිස්ට්‍රි ටෝකන සහ කළමනාකරණය කළ රහස් භ්‍රමණය කළ යුතුය. අක්තපත්‍ර භ්‍රමණයස්ථාපනයක් ක්‍රියාත්මක වූ පසු ක්‍රියාත්මක වන ප්‍රතිකර්මය වන්නේ පැකේජ ඉවත් කිරීම නොව, ක්‍රියාකාරී ප්‍රතිකර්මයයි.

sca-මෙවලම්-මෘදුකාංග-සංයුතිය-විශ්ලේෂණ-මෙවලම්
ඔබේ මෘදුකාංග අවදානම් ප්‍රමුඛතාවය දෙන්න, නිවැරදි කරන්න සහ සුරක්ෂිත කරන්න
ඔබගේ නොමිලේ ගිණුම ලබා ගන්න.
කිසිදු ක්රෙඩිට් කාඩ්පතක් අවශ්ය නොවේ.

ඔබේ මෘදුකාංග සංවර්ධනය සහ බෙදා හැරීම සුරක්ෂිත කරන්න

Xygeni නිෂ්පාදන කට්ටලය සමඟ