หากคุณเป็นโปรแกรมเมอร์ ไม่ว่าคุณจะเขียนโค้ดเพื่องานอดิเรกหรือเพื่ออาชีพ คุณจะรู้ว่าการสร้างเวอร์ชันใหม่ของโครงการของคุณ ซึ่งเป็นเวอร์ชัน "release" อย่างเป็นทางการที่คุณเอง เพื่อน หรือลูกค้าของคุณจะติดตั้ง และการใช้งาน - มักจะใช้ข้อนิ้วขาวเล็กน้อย
ท้ายที่สุดแล้ว เวอร์ชันที่วางจำหน่ายจะขึ้นอยู่กับรหัสทั้งหมดของคุณ อาศัยการตั้งค่าเริ่มต้นทั้งหมดของคุณ เผยแพร่เฉพาะกับเอกสารเผยแพร่ของคุณเท่านั้น (แต่ไม่มีความรู้จากวงใน) และจำเป็นต้องใช้งานได้แม้ในคอมพิวเตอร์ที่คุณไม่เคยเห็นมาก่อน ตั้งค่าใน การกำหนดค่าที่คุณไม่เคยคิดมาก่อน ควบคู่ไปกับซอฟต์แวร์อื่นๆ ที่คุณไม่เคยทดสอบความเข้ากันได้
พูดง่ายๆ ก็คือ ยิ่งโครงการมีความซับซ้อนมากขึ้น และยิ่งมีนักพัฒนาจำนวนมากที่ทำงานกับมัน และส่วนประกอบที่แยกจากกันมากขึ้นที่ต้องทำงานร่วมกับผู้อื่นได้อย่างราบรื่น...
…ยิ่งเป็นไปได้มากที่สิ่งทั้งหมดจะน่าประทับใจน้อยกว่าผลรวมของส่วนต่างๆ
จากการเปรียบเทียบคร่าวๆ ให้พิจารณาว่าทีมลู่วิ่งที่มีนักวิ่ง 100 ม. แต่ละคนเร็วที่สุดไม่ได้ชนะการวิ่งผลัด 4x100 ม. เสมอไป
CI เพื่อช่วยชีวิต
ความพยายามอย่างหนึ่งที่จะหลีกเลี่ยงวิกฤตแบบนี้ “แต่ก็ใช้ได้ดีกับคอมพิวเตอร์ของฉัน” เป็นเทคนิคที่เรียกกันในศัพท์แสงว่า การบูรณาการอย่างต่อเนื่อง,หรือ CI สั้น ๆ.
แนวคิดนั้นเรียบง่าย: ทุกครั้งที่ใครก็ตามทำการเปลี่ยนแปลงในส่วนของโครงการ ให้คว้าโค้ดใหม่ของบุคคลนั้น และพาพวกเขาและโค้ดใหม่ผ่านวงจรการสร้างและทดสอบอย่างเต็มรูปแบบ เช่นเดียวกับที่คุณทำก่อนที่จะสร้างรุ่นสุดท้าย รุ่น.
สร้างเร็ว สร้างบ่อย สร้างทุกอย่าง สร้างตลอดเวลา!
เห็นได้ชัดว่านี่เป็นความหรูหราที่โครงการในโลกจริงไม่สามารถทำได้: หากคุณกำลังสร้าง เช่น สะพานซิดนีย์ฮาร์เบอร์ คุณจะไม่สามารถสร้างช่วงทดสอบใหม่ทั้งหมดด้วยวัตถุดิบใหม่ได้ทุกครั้งที่คุณ ตัดสินใจปรับแต่งกระบวนการโลดโผนหรือดูว่าคุณสามารถติดตั้งเสาธงที่ใหญ่ขึ้นบนยอดเขาได้หรือไม่
แม้ว่าคุณจะ "สร้าง" โปรเจ็กต์ซอฟต์แวร์คอมพิวเตอร์จากไฟล์ต้นทางกลุ่มเดียวเป็นชุดของไฟล์เอาต์พุต คุณก็ยังใช้ทรัพยากรอันมีค่า เช่น ไฟฟ้า และคุณต้องการพลังการประมวลผลที่เพิ่มขึ้นอย่างกะทันหันเพื่อทำงานควบคู่ไปกับคอมพิวเตอร์ทุกเครื่องที่ผู้พัฒนา ตัวเองใช้อยู่
ท้ายที่สุดแล้ว ในกระบวนการทางวิศวกรรมซอฟต์แวร์ที่ใช้ CI นั้น แนวคิดคือไม่ต้องรอจนกว่าทุกคนจะพร้อม จากนั้นจึงให้ทุกคนถอยห่างจากการเขียนโปรแกรมและรอให้การสร้างขั้นสุดท้ายเสร็จสมบูรณ์
งานสร้างเกิดขึ้นทุกวัน ทุกวัน เพื่อให้ผู้เขียนโค้ดสามารถบอกล่วงหน้าได้หากพวกเขาได้ทำการ “ปรับปรุง” โดยไม่ได้ตั้งใจซึ่งส่งผลเสียต่อทุกคน – ทำลายการสร้างเป็นศัพท์แสงอาจกล่าว.
แนวคิดคือ: ล้มเหลวตั้งแต่เนิ่นๆ แก้ไขอย่างรวดเร็ว เพิ่มคุณภาพ สร้างความก้าวหน้าที่คาดการณ์ได้ และส่งตรงเวลา
แน่นอน แม้หลังจากสร้างการทดสอบสำเร็จแล้ว โค้ดใหม่ของคุณอาจยังมีจุดบกพร่องอยู่ แต่อย่างน้อยคุณก็จะไม่ถึงจุดสิ้นสุดของวงจรการพัฒนา แล้วพบว่าทุกคนต้องกลับไปที่กระดานวาดภาพเพื่อให้ได้ ซอฟต์แวร์ในการสร้างและทำงานได้ทั้งหมด เนื่องจากส่วนประกอบต่างๆ
วิธีการพัฒนาซอฟต์แวร์ในยุคแรกมักถูกอ้างถึงดังนี้ แบบจำลองน้ำตกซึ่งทุกคนทำงานอย่างกลมกลืนแต่เป็นอิสระในขณะที่โปรเจกต์ค่อยๆ ไหลไปตามกระแสน้ำระหว่างกำหนดของเวอร์ชัน จนกระทั่งทุกอย่างมารวมกันที่จุดสิ้นสุดของวงจรเพื่อสร้างเวอร์ชันใหม่ พร้อมที่จะกระโดดข้ามน้ำตกที่วุ่นวายของการอัปเกรดเวอร์ชัน เพียงเพื่อที่จะโผล่ออกมาอีกเวอร์ชันหนึ่ง ปลายน้ำใสสะอาด นำมาออกแบบ พัฒนาต่อไป อย่างไรก็ตาม ปัญหาอย่างหนึ่งของ "น้ำตก" เหล่านั้นคือคุณมักจะติดอยู่ในกระแสน้ำวนที่ดูเหมือนจะไม่มีที่สิ้นสุดตรงขอบน้ำตก แม้จะมีแรงโน้มถ่วงก็ตาม ไม่สามารถข้ามขอบหน้าผาไปได้จนกว่าจะมีการเจาะที่ยาวและ การปรับเปลี่ยน (และการบุกรุกร่วมกัน) ทำให้การเดินทางต่อไปเป็นไปได้
แค่งานสำหรับคลาวด์
อย่างที่คุณจินตนาการได้ การนำ CI มาใช้หมายถึงการมีเซิร์ฟเวอร์ที่มีประสิทธิภาพและพร้อมใช้งานจำนวนมากตามที่คุณต้องการ เมื่อใดก็ตามที่นักพัฒนาซอฟต์แวร์ของคุณเรียกใช้ขั้นตอนการสร้างและทดสอบ เพื่อหลีกเลี่ยงการย้อนกลับไปที่ “การติดขัดที่ สถานการณ์ที่ปากน้ำตกมาก”
ฟังดูเหมือนงานสำหรับคลาวด์!
และแน่นอนว่ามีบริการคลาวด์ CI/CD มากมาย (this CD ไม่ใช่แผ่นเพลงที่เล่นได้ แต่เป็นชวเลขสำหรับ การจัดส่งอย่างต่อเนื่อง) ให้ความยืดหยุ่นแก่คุณในการมีสาขาต่างๆ ของผลิตภัณฑ์ที่แตกต่างกัน ซึ่งผ่านการสร้างที่มีการกำหนดค่าต่างกัน หรือแม้แต่ในฮาร์ดแวร์ที่แตกต่างกันในเวลาเดียวกัน
วงกลมCI เป็นหนึ่งในบริการบนคลาวด์…
…แต่น่าเสียดายสำหรับลูกค้าของพวกเขา ถูกละเมิด.
ในทางเทคนิคแล้ว และดูเหมือนว่าจะเป็นเรื่องธรรมดาในทุกวันนี้ บริษัทไม่ได้ใช้คำว่า "การละเมิด" "การบุกรุก" หรือ "การโจมตี" ที่ใดก็ตามในการแจ้งเตือนอย่างเป็นทางการ จนถึงตอนนี้เป็นเพียง เหตุการณ์ด้านความปลอดภัย.
ต้นฉบับ แจ้งให้ทราบ [2023-01-04] ระบุเพียงว่า:
เราต้องการแจ้งให้คุณทราบว่าขณะนี้เรากำลังตรวจสอบเหตุการณ์ด้านความปลอดภัย และการตรวจสอบของเรายังดำเนินอยู่ เราจะให้ข้อมูลอัปเดตเกี่ยวกับเหตุการณ์นี้และการตอบกลับของเราเมื่อมีข้อมูลอัปเดต ณ จุดนี้ เรามั่นใจว่าไม่มีผู้กระทำการที่ไม่ได้รับอนุญาตในระบบของเรา อย่างไรก็ตาม ด้วยความระมัดระวังอย่างมาก เราต้องการให้แน่ใจว่าลูกค้าทุกคนใช้มาตรการป้องกันบางอย่างเพื่อปกป้องข้อมูลของคุณเช่นกัน
จะทำอย่างไร?
ตั้งแต่นั้นมา CircleCI ได้ให้ข้อมูลอัปเดตและคำแนะนำเพิ่มเติมเป็นประจำ ซึ่งส่วนใหญ่จะสรุปเป็นดังนี้: “โปรดหมุนความลับใด ๆ และทั้งหมดที่เก็บไว้ใน CircleCI”
อย่างที่เราเคยอธิบายไปแล้วว่าศัพท์แสง หมุน ได้รับเลือกไม่ดีที่นี่ เนื่องจากเป็นมรดกของอดีตที่อันตรายซึ่งผู้คนได้ "หมุนเวียน" รหัสผ่านและความลับผ่านตัวเลือกที่คาดเดาได้จำนวนน้อย ไม่เพียงเพราะการติดตามสิ่งใหม่ ๆ นั้นยากกว่าในตอนนั้น แต่ยังเป็นเพราะความปลอดภัยทางไซเบอร์ไม่ได้ สำคัญเท่าทุกวันนี้
CircleCI หมายถึงคุณต้องเปลี่ยนรหัสผ่าน ความลับ โทเค็นการเข้าถึง ตัวแปรสภาพแวดล้อม คีย์แพร์สาธารณะ-ส่วนตัว และอื่นๆ อาจเป็นเพราะผู้โจมตีที่เจาะเครือข่ายอาจขโมยของคุณ หรือพิสูจน์ไม่ได้ ที่จะขโมยพวกเขา
บริษัท มี ได้จัดรายการ ข้อมูลความปลอดภัยส่วนตัวประเภทต่างๆ ที่ได้รับผลกระทบจากการละเมิด และได้สร้างสคริปต์ที่มีประโยชน์ที่เรียกว่า CircleCI-Env-Inspector ที่คุณสามารถใช้เพื่อส่งออกรายการรูปแบบ JSON ของความลับ CI ทั้งหมดที่คุณต้องเปลี่ยนในสภาพแวดล้อมของคุณ
นอกจากนี้ อาชญากรไซเบอร์ในขณะนี้อาจมีโทเค็นการเข้าถึงและคีย์การเข้ารหัสที่สามารถให้ทางกลับเข้าสู่เครือข่ายของคุณเอง โดยเฉพาะอย่างยิ่งเนื่องจากบางครั้งกระบวนการสร้าง CI จำเป็นต้อง "โทรหาที่บ้าน" เพื่อขอรหัสหรือข้อมูลที่คุณไม่สามารถหรือไม่ต้องการ เพื่ออัปโหลดไปยังคลาวด์ (สคริปต์ที่ทำเช่นนี้เป็นที่รู้จักในศัพท์แสงว่า นักวิ่ง).
ดังนั้น CircleCI จึงแนะนำ:
นอกจากนี้ เรายังแนะนำให้ลูกค้าตรวจสอบบันทึกภายในสำหรับระบบของตนสำหรับการเข้าถึงโดยไม่ได้รับอนุญาตซึ่งเริ่มตั้งแต่วันที่ 2022-12-21 [จนถึงและรวมถึง 2023-01-04] หรือเมื่อ [เปลี่ยนความลับของคุณ] เสร็จสิ้น
หากเข้าใจได้อย่างน่าประหลาดใจ ลูกค้าบางรายสังเกตว่าวันที่ที่ CircleCI ระบุเป็นนัยว่าการละเมิดนี้เริ่มขึ้นเมื่อวันที่ [2022-12-21] บังเอิญตรงกับบล็อกโพสต์ บริษัทเผยแพร่ เกี่ยวกับการอัปเดตความน่าเชื่อถือล่าสุด
ลูกค้าต้องการทราบว่า “การละเมิดเกี่ยวข้องกับข้อบกพร่องที่เกิดขึ้นในการอัปเดตนี้หรือไม่”
เนื่องจากบทความอัปเดตความน่าเชื่อถือของบริษัทดูเหมือนจะเป็นการสรุปข่าวแบบเลื่อนลอย แทนที่จะเป็นการประกาศการเปลี่ยนแปลงแต่ละรายการในวันที่ระบุ คำตอบที่ชัดเจนคือ "ไม่"...
…และ CircleCI ระบุว่าวันที่บังเอิญของ 2022-12-21 สำหรับโพสต์บล็อกความน่าเชื่อถือนั้นเป็นเรื่องบังเอิญ
แฮปปี้คีย์รีเจนนิ่ง!
- เนื้อหาที่ขับเคลื่อนด้วย SEO และการเผยแพร่ประชาสัมพันธ์ รับการขยายวันนี้
- เพลโตบล็อคเชน Web3 Metaverse ข่าวกรอง ขยายความรู้. เข้าถึงได้ที่นี่.
- ที่มา: https://nakedsecurity.sophos.com/2023/01/09/circleci-code-building-service-suffers-total-credential-compromise/
- 1
- 100M
- a
- เกี่ยวกับเรา
- แน่นอน
- ความอุดมสมบูรณ์
- เข้า
- คล่องแคล่ว
- จริง
- การนำ
- ความก้าวหน้า
- คำแนะนำ
- มีผลต่อ
- หลังจาก
- ทั้งหมด
- คู่ขนาน
- เสมอ
- และ
- ประกาศ
- อื่น
- คำตอบ
- ทุกคน
- ทุกแห่ง
- บทความ
- ผู้เขียน
- รถยนต์
- ใช้ได้
- กลับ
- background-image
- ไม่ดี
- เพราะ
- กลายเป็น
- จะกลายเป็น
- ก่อน
- เริ่ม
- ระหว่าง
- ที่ใหญ่กว่า
- บิต
- บล็อก
- คณะกรรมการ
- ชายแดน
- ด้านล่าง
- สาขา
- ช่องโหว่
- สะพาน
- เป็นโรคจิต
- สร้าง
- สร้าง
- พวง
- ที่เรียกว่า
- ศูนย์
- บาง
- เปลี่ยนแปลง
- การเปลี่ยนแปลง
- เปลี่ยนแปลง
- ทางเลือก
- เลือก
- ชัดเจน
- เมฆ
- บริการคลาวด์
- รหัส
- ความซ้ำซ้อน
- ชุด
- สี
- ร่วมกัน
- บริษัท
- บริษัท
- ความเข้ากันได้
- เสร็จ
- เสร็จสิ้น
- ซับซ้อน
- ส่วนประกอบ
- การประนีประนอม
- คอมพิวเตอร์
- คอมพิวเตอร์
- การคำนวณ
- พลังคอมพิวเตอร์
- มั่นใจ
- พิจารณา
- ก่อสร้าง
- บริโภค
- ได้
- หน้าปก
- สร้าง
- ที่สร้างขึ้น
- การสร้าง
- หนังสือรับรอง
- วิกฤติ
- หยาบ
- การเข้ารหัสลับ
- ขณะนี้
- ลูกค้า
- อาชญากรไซเบอร์
- cybersecurity
- Dangerous
- ข้อมูล
- วันที่
- วันที่
- วัน
- วัน
- ค่าเริ่มต้น
- ขึ้นอยู่กับ
- ออกแบบ
- นักพัฒนา
- พัฒนาการ
- DID
- ต่าง
- แสดง
- เอกสาร
- ไม่
- Dont
- ลง
- การวาดภาพ
- ก่อน
- ขอบ
- ทั้ง
- กระแสไฟฟ้า
- ไม่มีที่สิ้นสุด
- ชั้นเยี่ยม
- ทำให้มั่นใจ
- ทั้งหมด
- สิ่งแวดล้อม
- โดยเฉพาะอย่างยิ่ง
- แม้
- ทุกวัน
- ทุกคน
- ทุกอย่าง
- อธิบาย
- ส่งออก
- ล้มเหลว
- ที่เร็วที่สุด
- ไฟล์
- สุดท้าย
- หา
- ปลาย
- พอดี
- แก้ไขปัญหา
- ความยืดหยุ่น
- ดังต่อไปนี้
- เพื่อน
- ราคาเริ่มต้นที่
- เต็ม
- ต่อไป
- อ่อนโยน
- ได้รับ
- ให้
- Go
- ไป
- ไป
- คว้า
- แรงดึงดูด
- แฮ็ก
- มีประโยชน์
- เกิดขึ้น
- ที่เกิดขึ้น
- ฮาร์ดแวร์
- มี
- ความสูง
- โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม
- โฉบ
- อย่างไรก็ตาม
- HTTPS
- ความคิด
- โดยนัย
- สำคัญ
- ประทับใจ
- in
- อุบัติการณ์
- รวมทั้ง
- เพิ่ม
- อิสระ
- เป็นรายบุคคล
- คนวงใน
- ติดตั้ง
- ภายใน
- แนะนำ
- การสอบสวน
- IT
- ศัพท์แสง
- การสัมภาษณ์
- การเดินทาง
- การเก็บรักษา
- กุญแจ
- ทราบ
- ความรู้
- ที่รู้จักกัน
- มรดก
- น่าจะ
- รายการ
- นาน
- หรูหรา
- ทำ
- ทำ
- ทำให้
- ขอบ
- วัสดุ
- ความกว้างสูงสุด
- วิธี
- มาตรการ
- วิธีการ
- อาจ
- การปรับเปลี่ยน
- ข้อมูลเพิ่มเติม
- ดนตรี
- จำเป็นต้อง
- ความต้องการ
- ในเชิงลบ
- เครือข่าย
- ใหม่
- ข่าว
- ปกติ
- เด่น
- การประกาศ
- จำนวน
- มากมาย
- ชัดเจน
- การเสนอ
- เป็นทางการ
- ONE
- ต่อเนื่อง
- ใบสั่ง
- เป็นต้นฉบับ
- อื่นๆ
- ของตนเอง
- ส่วนหนึ่ง
- ส่วน
- รหัสผ่าน
- อดีต
- พอล
- คน
- บางที
- ระยะเวลา
- กายภาพ
- เพลโต
- เพลโตดาต้าอินเทลลิเจนซ์
- เพลโตดาต้า
- ผลัก
- จุด
- ตำแหน่ง
- เป็นไปได้
- โพสต์
- โพสต์
- อำนาจ
- ที่มีประสิทธิภาพ
- ล้ำค่า
- ทายได้
- ส่วนตัว
- ปัญหา
- กระบวนการ
- กระบวนการ
- ผลิตภัณฑ์
- เป็นอาชีพ
- โปรแกรมเมอร์
- การเขียนโปรแกรม
- ความคืบหน้า
- โครงการ
- โครงการ
- ป้องกัน
- พิสูจน์แล้วว่า
- ให้
- ให้
- การตีพิมพ์
- ใส่
- คุณภาพ
- อย่างรวดเร็ว
- ดิบ
- พร้อม
- เมื่อเร็ว ๆ นี้
- แนะนำ
- เรียกว่า
- ปกติ
- ที่เกี่ยวข้อง
- ปล่อย
- ความเชื่อถือได้
- ขอ
- แหล่งข้อมูล
- คำตอบ
- ทบทวน
- ขี่
- กลิ้ง
- วิ่ง
- เดียวกัน
- สคริปต์
- ความปลอดภัย
- ดูเหมือนว่า
- เซิร์ฟเวอร์
- บริการ
- บริการ
- ชุด
- การตั้งค่า
- เรือ
- สั้น
- ชวเลข
- ง่าย
- ง่ายดาย
- สถานการณ์
- เล็ก
- อย่างราบรื่น
- So
- จนถึงตอนนี้
- ซอฟต์แวร์
- การพัฒนาซอฟต์แวร์
- วิศวกรรมซอฟต์แวร์
- ของแข็ง
- บาง
- แหล่ง
- โดยเฉพาะ
- ที่เริ่มต้น
- ระบุ
- ขั้นตอน
- ยังคง
- ที่ถูกขโมย
- เก็บไว้
- ที่ประสบความสำเร็จ
- อย่างเช่น
- ฉับพลัน
- ทนทุกข์ทรมาน
- ประชุมสุดยอด
- พรั่ง
- SVG
- ซิดนีย์
- ระบบ
- เอา
- ทีม
- ทดสอบ
- พื้นที่
- ของพวกเขา
- ตัวเอง
- สิ่ง
- ตลอด
- เวลา
- ไปยัง
- ในวันนี้
- ร่วมกัน
- ราชสกุล
- ด้านบน
- รวม
- ลู่
- การเปลี่ยนแปลง
- โปร่งใส
- เข้าใจได้
- บันทึก
- การปรับปรุง
- อัพเกรด
- URL
- ใช้
- ต่างๆ
- รุ่น
- รอ
- อยาก
- น้ำดื่ม
- ว่า
- ที่
- WHO
- จะ
- ชนะ
- คำ
- คำ
- งาน
- ทำงาน
- ทำงานได้ดี
- การทำงาน
- โลก
- จะ
- คุณ
- ของคุณ
- ด้วยตัวคุณเอง
- ลมทะเล