OpenSSL s_client - ຄວາມຜິດພາດຂອງ ssl - ຄວາມປອດໄພຂອງ TLS

OpenSSL s_client ສະແດງໃຫ້ເຫັນວ່າ TLS ຂອງຂ້ອຍເສຍຫາຍ: ການວິນິດໄສຄວາມຜິດພາດ SSL ໃນ CI

ເມື່ອທ່ານຍູ້ commit, ຂອງທ່ານ CI/CD pipeline ການແລ່ນ, ການທົດສອບຜ່ານ, ແລະ ການນຳໃຊ້ແມ່ນພຽງແຕ່ຄລິກດຽວເທົ່ານັ້ນ. ແລ້ວທັນໃດນັ້ນ, ການສ້າງຂອງທ່ານກໍ່ລົ້ມເຫຼວດ້ວຍຂໍ້ຄວາມ TLS ທີ່ລຶກລັບ.
ບໍ່ມີການປ່ຽນແປງລະຫັດທີ່ຈະຕຳໜິ, ແຕ່ pipeline ເປັນສີແດງ. ມີຫຍັງເກີດຂຶ້ນ? ສຳລັບຫຼາຍໆທີມ, ຕົວການມັກຈະເປັນບັນຫາຄວາມປອດໄພຂອງ TLS, ເຊັ່ນ: ໃບຢັ້ງຢືນໝົດອາຍຸ, ລະຫັດລັບທີ່ອ່ອນແອ, ຫຼື ເຊີບເວີທີ່ຖືກຕັ້ງຄ່າບໍ່ຖືກຕ້ອງ. ຂ່າວດີ? ບັນຫາເຫຼົ່ານີ້ແມ່ນງ່າຍທີ່ຈະກວດພົບກ່ອນທີ່ມັນຈະທຳລາຍການສ້າງຂອງທ່ານ ຖ້າທ່ານຮູ້ວິທີການໃຊ້ ລູກຄ້າ OpenSSL.

ບົດຄວາມນີ້ຈະນຳພາທ່ານຜ່ານການວິນິດໄສ ແລະ ການປ້ອງກັນຄວາມຜິດພາດຂອງ SSL ໃນ CI/CD pipelines ການ​ນໍາ​ໃຊ້ openssl s_clientພວກເຮົາຈະກວມເອົາຕົວຢ່າງຕົວຈິງ, ເຕັກນິກການອັດຕະໂນມັດ, ແລະ guardrails ທີ່ເຮັດໃຫ້ການນຳໃຊ້ຂອງທ່ານປອດໄພ.

ເມື່ອທ່ານ Pipeline ສຽງຮ້ອງ: ຄວາມລົ້ມເຫຼວຂອງ TLS ທີ່ແທ້ຈິງ

ນີ້ແມ່ນສິ່ງທີ່ຄຸ້ນເຄີຍສຳລັບວິສະວະກອນ DevOps ຫຼາຍຄົນ:

ທີ່ SSL ຜິດພາດ ໝາຍຄວາມວ່າໃບຢັ້ງຢືນຂອງຈຸດສິ້ນສຸດໝົດອາຍຸແລ້ວ. In CI/CD, ສິ່ງນີ້ຢຸດການນຳໃຊ້, ທຳລາຍການທົດສອບການເຊື່ອມໂຍງ, ແລະ ສາມາດບລັອກການປ່ອຍທັງໝົດຂອງທ່ານໄດ້.

ຮ້າຍແຮງກວ່ານັ້ນ, ຖ້າຖືກລະເລີຍ, ຊ່ອງຫວ່າງຄວາມປອດໄພ TLS ດຽວກັນນີ້ອາດຈະເຮັດໃຫ້ລະບົບການຜະລິດມີຄວາມສ່ຽງຕໍ່ການໂຈມຕີແບບ man-in-the-middle ຫຼື ເຮັດໃຫ້ການບໍລິການຢຸດເຮັດວຽກ.

ເປັນຫຍັງ OpenSSL s_client ຈຶ່ງເປັນ Knife Debug TLS ຂອງນັກພັດທະນາ

ບໍ່ເຫມືອນກັບຄໍາເຕືອນຂອງໂປຣແກຣມທ່ອງເວັບ, ເຊິ່ງບໍ່ຊັດເຈນ ແລະ ເປັນໄປຕາມຄູ່ມື, s_client ຂອງ OpenSSL ໃຫ້ມຸມມອງດິບ ແລະ ລະອຽດຂອງການຈັບມື TLS.
ມັນເidealາະສົມ ສຳ ລັບ:

  • ກວດສອບວ່າຈຸດສິ້ນສຸດໃຊ້ TLS ເວີຊັນ ແລະ ລະຫັດໃດ
  • ກຳລັງກວດສອບວ່າໃບຢັ້ງຢືນນັ້ນຖືກຕ້ອງ ແລະ ເຊື່ອຖືໄດ້
  • ການແກ້ໄຂບັນຫາການເຊື່ອມຕໍ່ໂດຍກົງໃນ CI/CD ວຽກ​ເຮັດ​ງານ​ທໍາ

ຕົວຢ່າງການກວດສອບການຈັບມື:

ທ່ານຈະໄດ້ຮັບການເບິ່ງເຫັນລາຍລະອຽດໃບຢັ້ງຢືນ, ລະຫັດລັບທີ່ຮອງຮັບ, ແລະ ຂໍ້ຜິດພາດຂອງ SSL ໃນລະຫວ່າງການເຈລະຈາໄດ້ທັນທີ. ນັ້ນແມ່ນເຫດຜົນທີ່ທີມງານ DevSecOps ຫຼາຍຄົນຖືວ່າມັນເປັນເຄື່ອງມືຄວາມປອດໄພ TLS ທີ່ນິຍົມໃຊ້.

ຂໍ້ຜິດພາດ TLS/SSL ທົ່ວໄປທີ່ເຮັດໃຫ້ CI ເສຍຫາຍ Pipelines

ລອງມາແຍກຄວາມລົ້ມເຫຼວທີ່ມັກຈະປາກົດຢູ່ໃນ CI/CD, ພ້ອມດ້ວຍຕົວຢ່າງສັ້ນໆ ແລະ ຜົນກະທົບຕ່າງໆ.

1 ໃບຢັ້ງຢືນທີ່ໝົດອາຍຸ ຫຼື ຍັງບໍ່ທັນໃຊ້ໄດ້

ຜົນກະທົບ: ການທົດສອບອັດຕະໂນມັດຈະລົ້ມເຫຼວເມື່ອການເພິ່ງພາອາໄສໃຊ້ໃບຢັ້ງຢືນທີ່ລ້າສະໄໝ. ໃນສະຖາປັດຕະຍະກຳໄມໂຄຣເຊີບເວີ, ໃບຢັ້ງຢືນທີ່ໝົດອາຍຸໜຶ່ງໃບໃນການບໍລິການພາຍໃນສາມາດຢຸດລະບົບຕ່ອງໂສ້ການນຳໃຊ້ທັງໝົດໄດ້.

2 ລະຫັດລັບທີ່ອ່ອນແອ ຫຼື ໂປໂຕຄອນທີ່ເຊົາໃຊ້ແລ້ວ

ຜົນກະທົບ: ປະຕູຄວາມປອດໄພຈະລົ້ມເຫຼວເມື່ອການບໍລິການຮອງຮັບ TLS 1.0/1.1 ຫຼື ລະຫັດລັບທີ່ອ່ອນແອ. ສິ່ງນີ້ມັກຈະປາກົດໃນລະຫວ່າງການສະແກນການປະຕິບັດຕາມກົດລະບຽບໃນສະພາບແວດລ້ອມທີ່ມີການຄວບຄຸມ.

3 ຊື່ໂຮສບໍ່ກົງກັນ ແລະ ໃບຢັ້ງຢືນທີ່ເຊັນເອງ

ຕົວຢ່າງ: ການບໍລິການຈັດວາງພາຍໃນໃຊ້ໃບຢັ້ງຢືນທີ່ອອກໃຫ້ສຳລັບ ບໍລິການ.ທ້ອງຖິ່ນ, ແຕ່ pipeline ໂທ service.devອີກທາງເລືອກໜຶ່ງ, ໃບຢັ້ງຢືນອາດຈະຖືກເຊັນດ້ວຍຕົນເອງ ແລະ ບໍ່ໄດ້ຮັບຄວາມໄວ້ວາງໃຈຈາກຮ້ານໄວ້ວາງໃຈຂອງຜູ້ແລ່ນ.

ຜົນກະທົບ: ການຢັ້ງຢືນການຈັບມືລົ້ມເຫຼວ ເວັ້ນເສຍແຕ່ວ່າມັນຖືກຂ້າມຢ່າງຊັດເຈນ, ເຊິ່ງເປັນອັນຕະລາຍໃນການຜະລິດ. ນີ້ແມ່ນເລື່ອງທຳມະດາໃນການເອີ້ນ API ພາຍໃນ, ການຕັ້ງຄ່າການທົດສອບໃນທ້ອງຖິ່ນ, ຫຼືສະພາບແວດລ້ອມການພັດທະນາທີ່ຖືກຕັ້ງຄ່າບໍ່ຖືກຕ້ອງ.

4 ລະບົບຕ່ອງໂສ້ໃບຢັ້ງຢືນທີ່ບໍ່ຄົບຖ້ວນ

ຕົວຢ່າງ: ໃບຢັ້ງຢືນການຈັດວາງບໍ່ມີ CA ລະດັບກາງ.
ຜົນກະທົບ: ຜູ້ແລ່ນທີ່ມີບ່ອນເກັບຄວາມໄວ້ວາງໃຈທີ່ເຂັ້ມງວດກວ່າຈະລົ້ມເຫຼວໃນການເຊື່ອມຕໍ່, ເຊິ່ງເຮັດໃຫ້ເກີດຄວາມລົ້ມເຫຼວຂອງການສ້າງທີ່ບໍ່ເປັນໄລຍະ.

ຢາກເຂົ້າໄປເລິກກວ່ານີ້ CI/CD ໄພຂົ່ມຂູ່?

CI/CD pipelineມີບົດບາດສຳຄັນໃນການອຳນວຍຄວາມສະດວກໃຫ້ແກ່ການພັດທະນາຊອບແວທີ່ທັນສະໄໝ. ເຖິງຢ່າງໃດກໍ່ຕາມ, ຍ້ອນວ່າສິ່ງເຫຼົ່ານີ້ pipelines ກາຍເປັນສິ່ງສຳຄັນເພີ່ມຂຶ້ນເລື້ອຍໆ, ຄວາມຈຳເປັນໃນການປົກປ້ອງພວກມັນຈາກຄວາມສ່ຽງກໍ່ກາຍເປັນສິ່ງທີ່ເຫັນໄດ້ຊັດເຈນຂຶ້ນ. ເຂົ້າໄປສຳຫຼວດຢ່າງເລິກເຊິ່ງເຊິ່ງສຸມໃສ່ການແກ້ໄຂຄວາມສ່ຽງທີ່ໂດດເດັ່ນທີ່ລະບຸໄວ້ໃນ OWASP Top-10 CI/CD ຄວາມສ່ຽງດ້ານຄວາມປອດໄພ!

ອ່ານທີ່ກ່ຽວຂ້ອງ:

ການວິນິດໄສຄວາມລົ້ມເຫຼວຂອງ TLS ໃນ CI/CD ດ້ວຍ OpenSSL s_client

ຂັ້ນຕອນທຳອິດ: ເຮັດໃຫ້ເກີດຄວາມລົ້ມເຫຼວຄືນໃໝ່ໃນ CI/CD ສິ່ງແວດລ້ອມ.

ອັນນີ້ຈະເຮັດໃຫ້ທ່ານມີຂໍ້ມູນການຖອດລະຫັດ TLS handshake ເຕັມຮູບແບບ, ໂປໂຕຄອນ, ລະຫັດລັບ, ລະບົບຕ່ອງໂສ້ໃບຢັ້ງຢືນ ແລະ ຂໍ້ຜິດພາດໃນການກວດສອບຄວາມຖືກຕ້ອງຕ່າງໆ.

ຊອກ​ຫາ:

  • ກວດສອບຄວາມຜິດພາດ ຂໍ້ຄວາມ
  • ໂປຣໂຕຄອນ TLS ລຸ້ນເກົ່າ
  • ຂາດສານກາງໃນລະບົບຕ່ອງໂສ້

ການຫັນປ່ຽນໄປສູ່ລະບົບອັດຕະໂນມັດ:

ເມື່ອທ່ານສາມາດແຍກສາເຫດຕົ້ນຕໍອອກໄດ້ແລ້ວ, ຂັ້ນຕອນຕໍ່ໄປແມ່ນເຮັດໃຫ້ການກວດສອບເຫຼົ່ານີ້ເປັນອັດຕະໂນມັດ. ການວິນິດໄສດ້ວຍຕົນເອງແມ່ນດີພຽງແຕ່ຄັ້ງດຽວ, ແຕ່ຖ້າບໍ່ມີການອັດຕະໂນມັດ, ທ່ານຈະເຫັນຄືກັນ SSL ຜິດພາດ ໃນອີກ pipeline ອາທິດຕໍ່ມາ.

ການກວດສອບ TLS ແບບອັດຕະໂນມັດເປັນຄວາມປອດໄພ Guardrails

ທ່ານສາມາດຝັງການກວດສອບ TLS ເຂົ້າໃນຂອງທ່ານໄດ້ CI/CD ດັ່ງນັ້ນການຕັ້ງຄ່າທີ່ບໍ່ດີຈຶ່ງລົ້ມເຫຼວໄວ:

  • ແຈ້ງເຕືອນຖ້າໃບຢັ້ງຢືນໝົດອາຍຸພາຍໃນເວລາໜ້ອຍກວ່າ 30 ມື້
  • ບລັອກລະຫັດລັບທີ່ອ່ອນແອ ແລະ TLS ເວີຊັນທີ່ເຊົາໃຊ້ແລ້ວ
  • ຕ້ອງການລະບົບຕ່ອງໂສ້ໃບຢັ້ງຢືນທີ່ສົມບູນ

ຕົວຢ່າງຮົ້ວກັ້ນ:

ຄຳແນະນຳ: ໃຫ້ເຮັດວຽກນີ້ໃນໄລຍະກ່ອນການນຳໃຊ້ ເພື່ອທີ່ທ່ານຈະກວດພົບບັນຫາກ່ອນທີ່ຈະລວມລະຫັດ.

ການປ້ອງກັນຄວາມແປກໃຈຂອງ TLS ໃນການຜະລິດ

ບັນຫາ TLS ບໍ່ພຽງແຕ່ເກີດຂຶ້ນໃນລະຫວ່າງການນຳໃຊ້ເທົ່ານັ້ນ. ໃບຢັ້ງຢືນຈະໝົດອາຍຸໄດ້ທຸກເວລາ. ນັ້ນແມ່ນເຫດຜົນທີ່ວ່າການຕິດຕາມກວດກາຢ່າງຕໍ່ເນື່ອງແມ່ນ ສິ່ງທີ່ສຳຄັນໃນ DevSecOps.

ຕົວຢ່າງການກວດສອບຕາມກຳນົດເວລາດ້ວຍ GitHub Actions:

ທ່ານສາມາດດັດແປງສິ່ງນີ້ໃຫ້ເຂົ້າກັບວຽກ cron, Jenkins, ຫຼື Kubernetes CronJobs ເພື່ອສະແກນຈຸດສຸດທ້າຍຢ່າງຕໍ່ເນື່ອງສຳລັບບັນຫາຄວາມປອດໄພ TLS.

ຄວາມສ່ຽງທີ່ແທ້ຈິງຂອງ AppSec ຈາກ TLS ທີ່ແຕກຫັກ

ການຕັ້ງຄ່າ TLS ທີ່ເສຍຫາຍບໍ່ພຽງແຕ່ເປັນບັນຫາໃນການສ້າງເທົ່ານັ້ນ; ພວກມັນແມ່ນຄວາມຮັບຜິດຊອບດ້ານຄວາມປອດໄພ:

  • ການໂຈມຕີ MITM ຖ້າການເຂົ້າລະຫັດອ່ອນແອ ຫຼື ຫາຍໄປ
  • ຫຼຸດລະດັບການໂຈມຕີລົງ ຖ້າໂປໂຕຄອນເກົ່າໄດ້ຮັບອະນຸຍາດ
  • ຄວາມສ່ຽງຕ່ອງໂສ້ການສະຫນອງ ຖ້າການດາວໂຫຼດແພັກເກດເກີດຂຶ້ນຜ່ານການເຊື່ອມຕໍ່ທີ່ບໍ່ປອດໄພ

ການລວມມັນທັງໝົດເຂົ້າກັນກັບ Guardrails

ຄິດວ່າຂະບວນການນີ້ຄື: ວິນິດໄສ → ອັດຕະໂນມັດ → ບັງຄັບໃຊ້.

ເປັນຫຍັງ Guardrails ເລື່ອງ: In CI/CD, guardrails ຢຸດການຕັ້ງຄ່າ TLS ທີ່ບໍ່ປອດໄພກ່ອນທີ່ພວກມັນຈະເປີດໃຊ້ງານ. ພວກມັນສາມາດບລັອກການນຳໃຊ້ໄດ້ຖ້າ:

  • ໃບຢັ້ງຢືນກຳລັງຈະໝົດອາຍຸ
  • ລະຫັດລັບທີ່ອ່ອນແອຖືກເປີດໃຊ້ງານແລ້ວ
  • ມີການໃຊ້ໂປໂຕຄອນທີ່ລ້າສະໄໝ

ຕົວຢ່າງ: ໃນ GitLab CI, ວຽກຈະລົ້ມເຫຼວທັນທີຖ້າຈຸດສິ້ນສຸດຕອບສະໜອງດ້ວຍ TLS 1.0, ເຊິ່ງບັງຄັບໃຫ້ແກ້ໄຂກ່ອນທີ່ຈະລວມເຂົ້າກັນ.

ເຄື່ອງມືເຊັ່ນ ຊີເກນີ ສາມາດຂະຫຍາຍສິ່ງເຫຼົ່ານີ້ໄດ້ guardrails ເພື່ອສະແກນລະບົບຕ່ອງໂສ້ການສະໜອງຊອບແວທັງໝົດຂອງທ່ານເພື່ອຊອກຫາຊ່ອງຫວ່າງດ້ານຄວາມປອດໄພ TLS.

ໂປຣແກຣມ OpenSSL s_client One-Liner ທີ່ມີປະໂຫຍດສຳລັບ CI

ກວດສອບວັນໝົດອາຍຸ:

ລາຍຊື່ລະຫັດລັບ:

ເອົາໄປສຸດທ້າຍ

OpenSSL s_clientt ເປັນຫຼາຍກວ່າຄຳສັ່ງແກ້ໄຂບັນຫາ; ມັນເປັນເຄື່ອງມື DevSecOps ສຳລັບຄວາມປອດໄພ TLS ແບບມີປະສິດທິພາບ. ໃຊ້ມັນເພື່ອກວດຈັບຂໍ້ຜິດພາດ SSL ກ່ອນທີ່ມັນຈະທຳລາຍການສ້າງຂອງທ່ານ, ແລະເຮັດໃຫ້ມັນເປັນອັດຕະໂນມັດ ດັ່ງນັ້ນທ່ານຈະບໍ່ແປກໃຈກັບການໝົດອາຍຸຂອງໃບຢັ້ງຢືນ ຫຼື ລະຫັດລັບທີ່ອ່ອນແອອີກຕໍ່ໄປ.

ເຄື່ອງມືວິເຄາະອົງປະກອບຊອບແວ SCA
ຈັດລຳດັບຄວາມສຳຄັນ, ແກ້ໄຂ ແລະ ຮັກສາຄວາມສ່ຽງດ້ານຊອບແວຂອງທ່ານໃຫ້ປອດໄພ
ຮັບບັນຊີຟຣີຂອງທ່ານ.
ບໍ່ຕ້ອງມີບັດເຄດິດ.

ຮັບປະກັນການພັດທະນາຊອບແວ ແລະ ການຈັດສົ່ງຂອງທ່ານ

ດ້ວຍຊຸດຜະລິດຕະພັນ Xygeni