TL; DR
ຜູ້ປະກອບການ npm ດ່ຽວໄດ້ໃຊ້ເວລາຫົກອາທິດເຜີຍແຜ່ແພັກເກດ "utility" TypeScript ປອມເຊັ່ນ: ts-form-utils, ts-project-lint, ແລະ ts-enum-helper.
ໃນຂະນະທີ່ແພັກເກດເປີດເຜີຍຕົວຊ່ວຍການກວດສອບຄວາມຖືກຕ້ອງຂະໜາດນ້ອຍທີ່ເບິ່ງຄືວ່າຖືກຕ້ອງຕາມກົດໝາຍ, payload ທີ່ແທ້ຈິງຈະປະຕິບັດໃນການຕິດຕັ້ງ ຫຼື ຕ້ອງການກ່ອນ ແລະ ປະຕິບັດການສະແກນລາຍນິ້ວມືຂອງໂຮດ, ການຄົ້ນພົບອົງກອນ GitHub, ການໂຄນບ່ອນເກັບຂໍ້ມູນ, ແລະ ການກັ່ນຕອງລະຫັດແຫຼ່ງ.
ມັນແວຣ໌ດັ່ງກ່າວແນໃສ່ອົງກອນ GitHub ທີ່ມີມູນຄ່າສູງໂດຍສະເພາະ, ລວມທັງຫຼາຍອົງກອນ Shopify ບ່ອນເກັບມ້ຽນຂໍ້ມູນ, ຈາກນັ້ນເກັບມ້ຽນ ແລະ ກັ່ນຕອງຕົ້ນໄມ້ແຫຼ່ງຂໍ້ມູນທີ່ສາມາດເຂົ້າເຖິງໄດ້ໄປຍັງຈຸດສຸດທ້າຍຂອງການເກັບກຳຂໍ້ມູນສູນກາງ.
ໃນຖານະເປັນສ່ວນໜຶ່ງຂອງຂະບວນການເຮັດວຽກປະນີປະນອມ, payload commitsa ກັບຄືນສູ່ບ່ອນເກັບມ້ຽນຂອງເຫຍື່ອ ໃນຂະນະທີ່ປອມແປງເປັນຕົວຕົນການຂຽນໂປຣແກຣມແບບອັດຕະໂນມັດຂອງ Google google-labs-jules[bot].
ພວກເຮົາໄດ້ຕິດຕາມແຄມເປນ — ຊື່ວ່າ ຈູລສ໌ ແຈັກເກີ — ໃນຫຼາຍຂອບເຂດຂອງຜູ້ເຜີຍແຜ່ ແລະ ຢ່າງໜ້ອຍຫ້າລຸ້ນ payload, ລວມທັງລຸ້ນທີ່ຖືກເຂົ້າລະຫັດ ແລະ ລຸ້ນທີ່ຮັບຮູ້ sandbox.
ໂປຣແກຣມລຸ້ນໃໝ່ລ່າສຸດແນໃສ່ໂຄງສ້າງພື້ນຖານການວິເຄາະມັລແວຣ໌ໂດຍສະເພາະ: ມັນເປີດໃຊ້ງານພາຍໃນສະພາບແວດລ້ອມການວິເຄາະເທົ່ານັ້ນ, ລັກເອົາໂທເຄັນບັນຊີບໍລິການເມຕາດາຕາຂອງຄລາວ, ແລະກວດສອບເຄື່ອງບິນຄວບຄຸມ Kubernetes ແລະຖັງເກັບຂໍ້ມູນຄລາວ.
IOC ຫຼັກທີ່ແບ່ງປັນໃນທົ່ວທຸກລຸ້ນ payload ແມ່ນຈຸດສິ້ນສຸດຂອງການເກັບກຳ aaronstack[.]com/jules-collect.
ຄວາມຮຸນແຮງ: ວິກິດ.
ການໂຈມຕີ: ມັນເຮັດວຽກແນວໃດ
ທຸກໆແພັກເກດ JulesJacker ປະຕິບັດຕາມແມ່ແບບດຽວກັນ. ຊຸດ .json ໂຄສະນາຜູ້ຊ່ວຍ TypeScript ທີ່ບໍ່ເປັນອັນຕະລາຍທີ່ມີໃບອະນຸຍາດ MIT ແລະບໍ່ມີບ່ອນເກັບມ້ຽນແຫຼ່ງຂໍ້ມູນທີ່ເຊື່ອມໂຍງ. index.js ສົ່ງອອກໜ້າທີ່ທີ່ໃຊ້ງານໄດ້ຈິງຈຳນວນໜຶ່ງ — regexes ອີເມວ, ແຜນທີ່ enum, ຕາຕະລາງກົດລະບຽບ lint — ດັ່ງນັ້ນນັກພັດທະນາທີ່ນຳເຂົ້າແພັກເກດຕົວຈິງຈຶ່ງເຫັນພຶດຕິກຳທີ່ເປັນໄປໄດ້. ຄວາມຊົ່ວຮ້າຍອາໄສຢູ່ບ່ອນອື່ນ: ໃນ ຕິດຕັ້ງຫຼັງ ຂໍ, ຫຼື ໃນບລັອກຢູ່ທາງລຸ່ມຂອງ index.js ທີ່ປະຕິບັດໃນເວລາທີ່ຕ້ອງການໂມດູນ.
payloads ໄດ້ພັດທະນາຜ່ານຂັ້ນຕອນພາຍໃນທີ່ມີຕົວເລກຢ່າງຊັດເຈນ (ຜູ້ປະຕິບັດງານຕິດປ້າຍເຫດການ telemetry ຂອງຕົນເອງ sc1-, sc3-, sc4-, ແລະອື່ນໆ), ແລະ ການສັງເກດເບິ່ງວິວັດທະນາການນັ້ນແມ່ນວິທີທີ່ຊັດເຈນທີ່ສຸດທີ່ຈະເຂົ້າໃຈການໂຄສະນາຫາສຽງ.
ລຸ້ນທີ 1–2: ການສອດແນມ ແລະ ການລັກຂະໂມຍ git-config
ແພັກເກດທຳອິດແມ່ນ infostealers ງ່າຍໆ. ເມື່ອຕິດຕັ້ງ, ພວກເຂົາໄດ້ເກັບກ່ຽວຕົວແປສະພາບແວດລ້ອມ, ໄຟລ໌ໂຮດ GitHub CLI, ແລະການຕັ້ງຄ່າ git ທົ່ວໂລກ (git config –global –list, git ໄລຍະໄກ -v), ຈາກນັ້ນ POSTed bundle ໄປຫາຈຸດສິ້ນສຸດການເກັບກຳ. ສິ່ງນີ້ໄດ້ສ້າງລາຍເຊັນຂອງຜູ້ປະຕິບັດການ: ເລື່ອງປົກຫຸ້ມ "TypeScript form validation utilities", beacon ສົ່ງອອກໄປຫາໂດເມນດຽວ, ແລະ ລົດຊາດສຳລັບຂໍ້ມູນປະຈຳຕົວນັກພັດທະນາແທນທີ່ຈະເປັນຂໍ້ມູນຜູ້ບໍລິໂພກ.
ລຸ້ນທີ 3: hypervisor ແລະ kernel escape probes
ເວີຊັນກາງແຄມເປນໜຶ່ງໄດ້ຫັນໄປສູ່ການໂຈມຕີພື້ນຖານໂຄງລ່າງຢ່າງໜັກ. ແທນທີ່ຈະລັກເອົາການຕັ້ງຄ່າ, ມັນໄດ້ດຳເນີນການກວດສອບສາຍຮັດສຳຫຼວດ. AF_VSOCK ຊັອກເກັດ, ພາກພື້ນ virtio MMIO, / dev / mem, ແລະ ທຸງການເຮັດໃຫ້ເຄີເນລແຂງຂຶ້ນ, ແລະ ແມ່ນແຕ່ຄວາມພະຍາຍາມຂັດຂ້ອງຂອງເຄີເນລທີ່ກະຕຸ້ນໂດຍ sysrq — ພຶດຕິກຳທີ່ກ່ຽວຂ້ອງກັບຄວາມພະຍາຍາມທີ່ຈະແຍກອອກຈາກເຄື່ອງ virtual ຫຼື container. ແທັກ telemetry (s0-vmm-recon, s1-vmm-vsock-fuzz, s2-vmm-mmio, ການກວດສອບເຄີເນລ s3) ເຮັດໃຫ້ເຈດຕະນາຊັດເຈນ. ຕົວແປນີ້ແມ່ນແນໃສ່ຢ່າງຈະແຈ້ງ ສະພາບແວດລ້ອມ cloud-sandbox ແລະ serverless-runner - ປະເພດ VM ຊົ່ວຄາວທີ່ສ້າງ ແລະ ທົດສອບລະຫັດທີ່ບໍ່ໜ້າເຊື່ອຖື.
ລຸ້ນທີ 3 (SC3): ໜອນຂຽນແບບ cross-repo
ຈຸດສູນກາງແຮງໂນ້ມຖ່ວງຂອງແຄມເປນໄດ້ກາຍເປັນໂຈນ repo ທີ່ແຜ່ຂະຫຍາຍດ້ວຍຕົນເອງ. ເມື່ອຕິດຕັ້ງ, payload ຈະແລ່ນລຳດັບເວລາຫ້າຂັ້ນຕອນຄື:
- ຂັ້ນຕອນ 0 (~100 ms): ລາຍນິ້ວມືຂອງໂຮສ — ຊື່ໂຮສ, ຂໍ້ມູນຜູ້ໃຊ້, ຕົວຕົນ git.
- ຂັ້ນຕອນ 1 (~3 ວິ): ກຳນົດວ່າຜູ້ເຄາະຮ້າຍເປັນສະມາຊິກຂອງອົງການໃດໂດຍການກວດສອບ git ໄລຍະໄກ -v, ຈາກນັ້ນຊອກຫາຮາດໂຄດ ORG_CONFIG ການເຂົ້າເຖິງຕາຕະລາງ ແລະ ການທົດສອບ repo ດ້ວຍ git ls-remote — ສົ່ງຜ່ານ proxy SSRF ທີ່ຄວບຄຸມໂດຍຜູ້ໂຈມຕີທີ່ http://git@192.168.0.1:8080.
- ຂັ້ນຕອນ 2 (~10 ວິນາທີ): ໂຄນ git ທຸກໆບ່ອນເກັບມ້ຽນທີ່ສາມາດເຂົ້າເຖິງໄດ້ໃນລາຍຊື່ເປົ້າໝາຍ, tarball ແລະ gzip ຕົ້ນໄມ້, base64-encode ມັນ, ແລະ chunk-exfiltrate ມັນ.
- ຂັ້ນຕອນ 3 (~45 ວິນາທີ): “ຫຼັກຖານການເຂົ້າເຖິງ” — ໂຄນ repo ທີ່ສາມາດຂຽນໄດ້, ວາງໄຟລ໌ທີ່ມີຊື່ວ່າ SECURITY-POC.md, ແລະ commit ມັນໂດຍຕັ້ງຄ່າຜູ້ຂຽນເປັນ google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> ແລະ ວຽກງານຂອງຂໍ້ຄວາມຄື: ອັບເດດແຄຊ໌ການເພິ່ງພາອາໄສ, ຈາກນັ້ນສົ່ງໄປຫາສາຂາຫຼັກຂອງຜູ້ຖືກເຄາະຮ້າຍ.
ບັນຊີລາຍຊື່ເປົ້າໝາຍທີ່ຖືກລະຫັດໄວ້ບໍ່ແມ່ນແບບທົ່ວໄປ. ມັນລະບຸຫຼາຍກວ່າສາມສິບ Shopify ບ່ອນເກັບມ້ຽນຂໍ້ມູນຕາມຊື່ — Shopify/ຮ້ານຄ້າ, Shopify/ຕົວຕົນ, Shopify/ການຮຽກເກັບເງິນ, Shopify/ຫ້ອງໂຖງ, Shopify/ຄວາມລັບ, Shopify/ໂຄງສ້າງພື້ນຖານ, Shopify/.github, ແລະອື່ນໆອີກຫຼາຍຢ່າງ — ຄຽງຄູ່ກັບອົງການທົດສອບ, ອາຣອນສະແຕັກບານສ໌, ທີ່ຜູ້ປະຕິບັດການເບິ່ງຄືວ່າຄວບຄຸມ ແລະ ນຳໃຊ້ເປັນເປົ້າໝາຍການຂຽນ.
ລຸ້ນທີ 4 (SC4): ຖືກເຂົ້າລະຫັດ ແລະ ຖືກປິດລ້ອມ
ຮຸ່ນໃໝ່ລ່າສຸດທີ່ນັກພັດທະນາປະເຊີນໄດ້ເພີ່ມສອງຊັ້ນຂອງການຫຼີກລ່ຽງຢູ່ເທິງສຸດຂອງໜອນ SC3.
ທຳອິດ, payload ບໍ່ໄດ້ສົ່ງເປັນ plaintext ອີກຕໍ່ໄປ. ເຫດຜົນທີ່ແທ້ຈິງແມ່ນຢູ່ໃນ blob ທີ່ເຂົ້າລະຫັດ AES-256-CBC, lib/.perf.dat, ໂດຍມີ IV ຢູ່ໃນສິບຫົກໄບຕ໌ທຳອິດຂອງມັນ. ຕົວໂຫຼດໃນ index.js ສ້າງລະຫັດຖອດລະຫັດຄືນໃໝ່ຈາກຊິ້ນສ່ວນສະຕຣິງທີ່ຕໍ່ກັນ, ຖອດລະຫັດ blob, ແລະແລ່ນມັນດ້ວຍ ຟັງຊັນໃໝ່()ແມ່ນແຕ່ຊື່ໂມດູນກໍ່ຖືກແຍກອອກເພື່ອຫຼີກລ່ຽງເຄື່ອງສະແກນທີ່ຄົງທີ່ — ຕ້ອງການ ('crypt' + 'o'), ຕ້ອງການ ('f' + 's').
ອັນທີສອງ, ມັນຖືກປິດກັ້ນໂດຍໂຮດ. ຮຸ່ນໜຶ່ງຖອດລະຫັດ ແລະ ເຮັດວຽກເມື່ອ ຊື່ໂຮສຕ໌ os.() ເທົ່າກັນ ກ່ອງພັດທະນາ or ubuntu-fc-uvm (ຄ່າເລີ່ມຕົ້ນຂອງ Firecracker microVM) ຫຼື ມີ substring ກ່ອງພັດທະນາປະຕູອີກອັນໜຶ່ງເມື່ອມີໜ້າຢູ່ .jules/ ໄດເລກະທໍລີເຮັດວຽກ:
ເວົ້າອີກຢ່າງໜຶ່ງ, payload ຂອງ SC4 ຖືກອອກແບບມາໃຫ້ຢູ່ໃນແລັບທັອບຂອງນັກພັດທະນາທຳມະດາ ແລະ ຕື່ນຂຶ້ນມາພາຍໃນຕົວແທນ AI ອັດຕະໂນມັດເທົ່ານັ້ນ ແລະ ສະພາບແວດລ້ອມ sandbox ຜູ້ປະກອບການຕ້ອງການທີ່ຈະປະນີປະນອມ.
ການເປີດໃຊ້ຫ້ອງທົດລອງ: ຕົວແປການວິເຄາະ-ໂຄງສ້າງພື້ນຖານ
ຊຸດໃໝ່ທີ່ສຸດໃນແຄມເປນ, ts-enum-helper, ບໍ່ໄດ້ໂຈມຕີນັກພັດທະນາ ຫຼື Shopify ເລີຍ. ມັນ postinstall.sh ເປີດດ້ວຍປະຕູທີ່ໃຫ້ເກມໄປ:
ສະຄຣິບຈະບໍ່ເຮັດຫຍັງເລີຍ ເວັ້ນເສຍແຕ່ວ່າຕົວແປສະພາບແວດລ້ອມສະເພາະສຳລັບແພລດຟອມການວິເຄາະມັລແວຣ໌ຖືກຕັ້ງຄ່າໄວ້. ເມື່ອມັນເປັນແນວນັ້ນ, payload ຈະຮູ້ວ່າມັນກຳລັງເຮັດວຽກຢູ່ພາຍໃນ sandbox ທີ່ມີຢູ່ເພື່ອລະເບີດ ແລະ ສຶກສາແພັກເກດຄືກັນກັບອັນນີ້ - ແລະ ມັນຈະຕອບໂຕ້ການໂຈມຕີ.
ກ່ອນອື່ນໝົດມັນດຶງໂທເຄັນ OAuth ຂອງບັນຊີບໍລິການ GCP ອອກຈາກເຊີບເວີ metadata ຂອງອິນສະແຕນສ໌ ແລະ ກັ່ນຕອງມັນອອກ. ຫຼັງຈາກນັ້ນ, ໂດຍໃຊ້ໂທເຄັນນັ້ນ, ມັນຈະກວາດ Kubernetes ຄວບຄຸມຍົນ ສາມາດເຂົ້າເຖິງໄດ້ທີ່ kubernetes.default.svc:
- ລາຍຊື່ ClusterRoleBindings, ClusterRoles, ແລະ Nodes;
- ກວດສອບ pods, secrets, ແລະ configmaps ໃນທົ່ວ ລະບົບ kube, Default, kube-public, ເຊົ່າ Kube-node, ແລະ namespace ການວິເຄາະ;
- ບັນຫາການໂທຫາ SelfSubjectAccessReview ເພື່ອສະແດງແຜນທີ່ຢ່າງແນ່ນອນວ່າຕົວຕົນທີ່ຖືກລັກໄດ້ຮັບອະນຸຍາດໃຫ້ເຮັດຫຍັງ.
ສຸດທ້າຍມັນໃຊ້ຊື່ຖັງ Google Cloud Storage brute-forces ທີ່ສ້າງຂຶ້ນຈາກ ID ໂຄງການ GCP ທີ່ຖືກລະຫັດໄວ້ (ຜູ້ລົງນາມທີ່ຫາຍາກ-437603-p9) ແລະ ໝາຍເລກໂຄງການ, ການລວມກັນຂອງການຄາດເດົາເຊັ່ນ: *-ການສ້າງ, *-ສິ່ງປະດິດ, ແລະຫລາຍໆຢ່າງ ພະຍາດມະເລັງ ຄຳນຳໜ້າ (ຜົນການກວດ malysis, ຊຸດ malysis, ການສະແກນ malysis). ທຸກໆລະຫັດການຕອບສະໜອງ ແລະ ເນື້ອຫາຈະຖືກບັນທຶກໄວ້ ແລະ ໂພສກັບຄືນໄປທີ່ດຽວກັນ. ຈູລສ໌-ຄໍເລັກຊັນ ຈຸດຈົບ.
ນີ້ແມ່ນກໍລະນີທີ່ຫາຍາກຂອງ payload ລະບົບຕ່ອງໂສ້ການສະໜອງທີ່ສ້າງຂຶ້ນໂດຍສະເພາະເພື່ອໂຈມຕີໂຄງສ້າງພື້ນຖານຂອງຜູ້ປ້ອງກັນເອງ. ເລື່ອງປົກຫຸ້ມໃນທົ່ວແຄມເປນ - ເຊິ່ງຊິ້ນສ່ວນຂອງມັນປາກົດຢູ່ພາຍໃນ payloads ເປັນຄຳເຫັນທີ່ກຳນົດພຶດຕິກຳເປັນ "PoC ການຄົ້ນຄວ້າຄວາມປອດໄພ ... ຂຽນຂ້າມ repo ຜ່ານໂທເຄັນ proxy git ທີ່ຖືກ overscoped" - ແມ່ນການໃຫ້ເຫດຜົນດຽວກັນ, ບໍ່ວ່າເປົ້າໝາຍໃນເວລາແລ່ນຈະເປັນ Shopify monorepo ຫຼືເຊີບເວີ metadata ຂອງກຸ່ມການວິເຄາະ.
ເສັ້ນເວລາ ແລະ ການເຄື່ອນຍ້າຍຂອບເຂດ
JulesJacker ບໍ່ແມ່ນການລົ້ມເຫຼວພຽງຄັ້ງດຽວ. ມັນເປັນການດໍາເນີນງານທີ່ຍືນຍົງທີ່ລອດຊີວິດຈາກການລຶບລ້າງການລົງທະບຽນໂດຍພຽງແຕ່ປ່ຽນຊື່ຂອງມັນ.
| ເມື່ອໃດ | ກໍລະນີ |
|---|---|
| ກາງເດືອນເມສາປີ 2026 | ແພັກເກດທຳອິດປາກົດຢູ່ພາຍໃຕ້ຂອບເຂດຂອງຜູ້ເຜີຍແຜ່ເດີມ: TS-utility façade, environment ແລະ git-config exfiltration. |
| ໃນຕົ້ນເດືອນພຶດສະພາ 2026 | ເຜີຍແຜ່ Hypervisor ແລະຮູບແບບການສຳຫຼວດ kernel-escape ແລ້ວ. |
| ກາງຫາທ້າຍເດືອນພຶດສະພາ 2026 | ໜອນຂຽນ SC3 cross-repo ປະກົດຕົວຄຽງຄູ່ກັບ payloads ເປົ້າໝາຍ Shopify ແລະ google-labs-jules[bot] ການປອມຕົວເປັນຄົນອື່ນ. SC4 ແນະນຳຕົວໂຫຼດທີ່ເຂົ້າລະຫັດ AES ແລະ host-gated. |
| ທ້າຍເດືອນພຶດສະພາ 2026 | npm ລຶບຂອບເຂດຂອງຜູ້ເຜີຍແຜ່ຕົ້ນສະບັບ; ຊື່ແພັກເກດແກ້ໄຂເປັນຕົວຍຶດຕຳແໜ່ງ security-holding ທີ່ຫວ່າງເປົ່າ. |
| ອາທິດດຽວກັນ | ຜູ້ປະຕິບັດການຍ້າຍໄປຫາຂອບເຂດທີ່ມີລັກສະນະຄ້າຍຄືກັນ ແລະ ເຜີຍແຜ່ໜອນຄືນໃໝ່, ລວມທັງຕົວແປໂຄງສ້າງພື້ນຖານການວິເຄາະ. |
ການເຄື່ອນຍ້າຍແມ່ນສ່ວນທີ່ຜູ້ປົກປ້ອງຄວນພິຈາລະນາ. ການລຶບ scope ທຳອິດບໍ່ໄດ້ຢຸດຕິການໂຄສະນາ ຫຼື ແມ່ນແຕ່ເຮັດໃຫ້ມັນຊ້າລົງ. ຜູ້ປະຕິບັດການໄດ້ຈັດ scope ຂະໜານທີ່ມີຊື່ແຕກຕ່າງຈາກຕົ້ນສະບັບໂດຍຕົວອັກສອນດຽວແລ້ວ, ແລະສືບຕໍ່ເຜີຍແຜ່ພາຍໃນອາທິດດຽວກັນ. ມາຮອດປະຈຸບັນ, scope ໃໝ່ ts-form-utils (ລຸ້ນ 1.0.0 ຫາ 1.1.0), ຂອງມັນ ts-project-lint (1.0.0 ແລະ 1.1.0), ແລະ ແບບສະແຕນອລ ts-enum-helper (1.0.0) ຍັງຄົງສາມາດຕິດຕັ້ງໄດ້.
ຕົວຊີ້ວັດຂອງການປະນີປະນອມ
ຕົວຊີ້ວັດທັງໝົດຂ້າງລຸ່ມນີ້ໄດ້ຮັບການຢືນຢັນຕໍ່ກັບແຫຼ່ງທີ່ມາຂອງຊຸດ.
| ປະເພດ | ຕົວຊີ້ວັດ | ອ່ືນ |
|---|---|---|
| ເຄືອຂ່າຍ (C2) | aaronstack[.]com/jules-collect | ຈຸດສິ້ນສຸດການເກັບກຳດຽວໃນທຸກລຸ້ນ; ຮັບຂໍ້ມູນທາງໄກ JSON ແລະ ຊິ້ນສ່ວນ tarball ຂອງ repository base64-gzip. |
| ເຄືອຂ່າຍ (ພຣັອກຊີ SSRF) | http://git@192.168.0.1:8080 | ດ້ານໜ້າສຳລັບໂທເຄັນ proxy git ທີ່ຖືກ overscoped ໃຊ້ເພື່ອເຂົ້າເຖິງບ່ອນເກັບມ້ຽນຂອງອົງກອນເປົ້າໝາຍ. |
| ເຄືອຂ່າຍ (ຄລາວ) | metadata.google.internal/computeMetadata/v1kubernetes.default.svcstorage.googleapis.com/storage/v1/b | ໃຊ້ໂດຍຕົວແປໂຄງສ້າງພື້ນຖານການວິເຄາະສຳລັບການລັກໂທເຄັນ ແລະ ການສອດແນມແບບຄວບຄຸມຂອງ Kubernetes ເທົ່ານັ້ນ. |
| Identity | google-labs-jules[bot]161369871+google-labs-jules[bot]@users.noreply.github.com | Forged commit ຕົວຕົນຂອງຜູ້ຂຽນຖືກຍູ້ເຂົ້າໄປໃນສາຂາຫຼັກຂອງຜູ້ຖືກເຄາະຮ້າຍ. |
| ເອກະສານ | lib/.perf.dat | payload blob ທີ່ເຂົ້າລະຫັດ AES-256-CBC; IV ເກັບໄວ້ໃນ 16 ໄບຕ໌ທຳອິດ ແລະ ລະຫັດຖືກສ້າງຂຶ້ນໃໝ່ແບບໄດນາມິກໃນ index.js. |
| ເອກະສານ | SECURITY-POC.md | ຫຼຸດລົງແລະ commitຖືກສົ່ງກັບຄືນໄປທີ່ບ່ອນເກັບມ້ຽນຂອງຜູ້ຖືກເຄາະຮ້າຍພ້ອມກັບຂໍ້ຄວາມ chore: update dependency cache. |
| ເອກະສານ | scripts/postinstall.sh | ປະຕູຮົ້ວເປີດແລ້ວ $MALYSIS_ANALYSIS_ID; ລະບຸຕົວແປການກຳນົດເປົ້າໝາຍການວິເຄາະພື້ນຖານໂຄງລ່າງ. |
| ພຶດຕິກໍາ | os.hostname() ກວດສອບ devbox / ubuntu-fc-uvm | ການເຊື່ອມຕໍ່ສະພາບແວດລ້ອມ Sandbox ແລະ AI-agent ກ່ອນການຖອດລະຫັດ ແລະ ການປະຕິບັດ payload. |
| ພຶດຕິກໍາ | .jules/ ແລະ /app/.jules ການອ່ານໄດເລກະທໍລີ | ການກຳນົດເປົ້າໝາຍຢ່າງຊັດເຈນຂອງສະພາບແວດລ້ອມພື້ນທີ່ເຮັດວຽກຂອງຕົວແທນ AI. |
| ພຶດຕິກໍາ | sc1-, sc3-, sc4-, s0-vmm-recon | ປ້າຍຊື່ຂັ້ນຕອນການສົ່ງຂໍ້ມູນທາງໄກທີ່ກຳນົດໂດຍຜູ້ປະຕິບັດການທີ່ເປັນປະໂຫຍດສຳລັບການກວດຈັບ ແລະ ການລ່າສັດ. |
| ເປົ້າໝາຍຄລາວ | rare-signer-437603-p9malysis-* ການຄາດເດົາແບບ bucket | ຕົວລະບຸໂຄງການ GCP ທີ່ຖືກເຂົ້າລະຫັດແບບຮາດດິດ ແລະ ຮູບແບບການລະບຸຖັງເກັບຂໍ້ມູນທີ່ຖືກຝັງຢູ່ໃນຕົວແປໂຄງສ້າງພື້ນຖານການວິເຄາະ. |
| ຮູບຮ່າງຂອງແພັກເກດ | ໜ້າຕ່າງແພັກເກດ TS-utility ທີ່ບໍ່ມີພາກສະໜາມ repository | ແມ່ແບບແຄມເປນທີ່ສອດຄ່ອງກັນ: ຊຸດໂປຣແກຣມ TypeScript ປອມທີ່ມີ payload ທີ່ເປັນອັນຕະລາຍຝັງຢູ່ໃນ postinstall hooks ຫຼື ຕິດຢູ່ກັບ index.js. |




