Computer >> คอมพิวเตอร์ >  >> ระบบเครือข่าย >> อินเทอร์เน็ต

Heartbleed ฟังฉันแทบละลาย โอ้โอ้

ปกติแล้วฉันค่อนข้างสงสัยเกี่ยวกับความปลอดภัยของซอฟต์แวร์ ฉันคิดว่าหนึ่งในจุดประสงค์หลักของอุตสาหกรรมซอฟต์แวร์ที่เกี่ยวข้องคือการหลอกล่อผู้คนให้ซื้อผลิตภัณฑ์รักษาความปลอดภัย เพื่อให้พวกเขารู้สึกปลอดภัยตามที่คาดคะเน ตัวอย่างที่ดีที่สุดคือมุมมองที่ขัดแย้งกันเกี่ยวกับสถานการณ์มัลแวร์ Windows ก่อนการล่มสลายของ Windows XP โดยมีรายงานฉบับหนึ่งจาก Microsoft แสดงให้เห็นว่าระบบปฏิบัติการเวอร์ชันใหม่นั้นปลอดภัยกว่าอย่างไร และรายงานฉบับหนึ่งโดยบริษัทป้องกันมัลแวร์ที่อ้างสิทธิ์ที่แน่นอน ตรงข้าม. สิ่งนี้นำสายตาของฉันไปสู่หัวข้อของปัญหา openSSL ล่าสุด

ผู้ใช้หลายคน เช่น มีมากกว่าหนึ่งรายขอให้ฉันอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้ เนื่องจากวิธีการที่ค่อนข้างเจ๋งของฉัน แท้จริงแล้วนี่ไม่ใช่ Windows นี่คือ Linux นี่คือเว็บ นี่เป็นอย่างอื่นโดยสิ้นเชิง สิ่งนี้น่าจะน่าสนใจ

เลือดออกโดยสังเขป

โดยพื้นฐานแล้ว Heartbleed เป็นข้อผิดพลาดในส่วนขยาย OpenSSL Heartbeat ซึ่งทำให้ผู้ร้องขอ Heartbeat สามารถรับเพย์โหลดโดยพลการจากหน่วยความจำไลบรารี OpenSSL บนระบบเป้าหมาย กล่าวอีกนัยหนึ่ง แทนที่จะส่งคืนเฉพาะข้อมูลที่จำเป็นสำหรับการสื่อสารโปรโตคอล TLS โฮสต์ที่สำรวจจะส่งคืนมากกว่านั้น ซึ่งหมายถึงการเข้าถึงหน้าหน่วยความจำที่ไม่ได้หมายถึงการส่งไปยังผู้ร้องขออย่างมีประสิทธิภาพ

และนั่นแหล่ะ ตอนนี้ปัญหาคือสิ่งนี้ส่งผลกระทบต่อบริการโฮสต์เว็บและไซต์จำนวนมากซึ่งมีฐานลูกค้าจำนวนมาก นี่คือจุดที่ปัญหา Heartbleed กลายเป็นมากกว่าบั๊กอื่น

ทำไมถึงไม่ดี

ใช่ คุณได้ยินถูกต้องแล้ว ฉันคิดว่านี่เป็นปัญหาร้ายแรง แต่ไม่ใช่เพราะข้อมูลประเภทใดที่สามารถรวบรวมได้จากไซต์เป้าหมาย นั่นคือและจะยังคงเป็นจุดประสงค์ทั้งหมดของการขโมยข้อมูลที่เป็นความลับ ที่นอกประเด็น

สิ่งที่สำคัญคือวิธีที่ปัญหาเกิดขึ้น ข้อผิดพลาด Heartbeat เกิดจากปัญหาหลักสองประการ หนึ่ง การตรวจสอบความถูกต้องของอินพุตที่ไม่ดี ซึ่งเป็นสิ่งเลวร้ายของการเขียนโปรแกรม เมื่อนักพัฒนาโค้ดลืมที่จะเริ่มต้นตัวแปร ตรวจสอบขอบเขตหรือส่งคืนค่า สาเหตุหลักที่ทำให้คนในกุฏิไว้ใจไม่ได้ อนิจจามันเกิดขึ้นได้ดีที่สุด มีเพียงเล็กน้อยที่คุณสามารถทำได้เมื่อคุณทำเกินขอบเขตของ Hello World!

ปัญหาที่สองคือผู้พัฒนา openSSL ใช้การใช้งานฟรีและ malloc ของตนเอง ซึ่งเป็นรูทีนสองแบบที่ใช้ในการดึงและปล่อยหน่วยความจำแบบไดนามิก ซึ่งหมายความว่าพวกเขาคิดว่าพวกเขารู้ดีกว่าคนอื่นๆ

ใช่ เมื่อคุณแยกปัญหาออกไปแบบนั้น มันก็น่ารำคาญ เกือบจะเหมือนกับอุบัติเหตุที่เชอร์โนบิล ปัญหาเล็ก ๆ น้อย ๆ ที่รวมกันเป็น c.l.u.s.t.e.r. ช่อการมีเพศสัมพันธ์แบบดิจิทัล

สิ่งที่คุณทำได้ - มุมมองที่ถูกต้อง

มีน้อยมากสำหรับคุณที่จะทำ อย่างจริงใจ. ปัญหาส่วนใหญ่อยู่ที่ฝั่งเซิร์ฟเวอร์ จริงอยู่ มันยังส่งผลกระทบต่อทุกเครื่องที่ใช้ไลบรารี openSSL ที่มีช่องโหว่ แต่ลองถามตัวเองดูว่าอุปกรณ์ของคุณสื่อสารโดยตรงกับโฮสต์อื่นโดยใช้ TLS บ่อยเพียงใด นอกเหนือจากการดึงข้อมูลจากเว็บ อาจเชื่อมต่อกับเซิร์ฟเวอร์เกม และอื่นๆ ที่คล้ายกัน

อย่างไรก็ตาม สำหรับไซต์ขนาดใหญ่ โดยส่วนตัวฉันคิดว่าแม้ว่าไซต์เหล่านั้นอาจมีการตกหล่น แต่ปริมาณการรับส่งข้อมูลนั้นมีขนาดใหญ่มากจนต้องใช้พลังการประมวลผลจำนวนมากในการประมวลผลข้อมูลทั้งหมด และเนื้อหาในหน่วยความจำอาจเบาบางเกินกว่าที่จะสร้างได้ มุมมองที่สอดคล้องกัน

นี่คือลางสังหรณ์ของฉัน ไม่ใช่วิทยานิพนธ์ทางคณิตศาสตร์ ดังนั้นจงหลีกเลี่ยงกรดกำมะถันและอะไรก็ตาม ลองคิดดูสิ ยกตัวอย่างเช่น Google มีฟาร์มประมวลผลขนาดใหญ่ที่มีเซิร์ฟเวอร์หลายหมื่นเครื่องที่ให้บริการเกี่ยวกับเว็บ โดยแต่ละแห่งให้บริการคำขอหลายร้อยรายการทุกวินาที ดังนั้นแม้ว่าคุณจะทุ่มเทให้กับทรัพยากรเหล่านี้ แต่ก็ต้องใช้เซิร์ฟเวอร์จำนวนมากของคุณเองเพื่อรับข้อมูลทั้งหมด นอกจากนี้ หากมีคนทำงานอย่างหนักเพื่อให้ได้ SSL ที่น่ารักทั้งหมด พวกเขาก็คงไม่ต้องการ DoS ทรัพยากรเหล่านี้ ประการที่สาม แม้ว่าข้อมูลรับรองทั้งหมดอาจถูกขโมยไป แต่การดมกลิ่นทราฟฟิกบนเครือข่ายสวิตช์ในลักษณะที่มีความหมายนั้นไม่ใช่เรื่องง่าย

ฉันไม่ได้หมายถึงสิ่งนี้เพื่อให้คุณสงบลง นั่นไม่ใช่ประเด็น. คุณเพียงแค่ต้องตรวจสอบปัญหาอย่างมีเหตุผล ใช่ ในทางทฤษฎีและในทางปฏิบัติ ข้อมูล SSL บางอย่างอาจรั่วไหล เพื่อเป็นการป้องกันไว้ล่วงหน้า บางเว็บไซต์แนะนำให้คุณเปลี่ยนรหัสผ่าน พิจารณาสิ่งนี้. มันไม่ใช่การปฏิบัติที่ไม่ดี นอกจากนี้ การตรวจสอบสิทธิ์แบบสองปัจจัยและการใช้รหัสผ่านที่แตกต่างกันในเว็บไซต์ต่างๆ ก็เป็นความคิดที่ดีเช่นกัน

สิ่งหนึ่งที่อาจทำให้ความกลัวของคุณลดลงเล็กน้อยคือฐานการติดตั้งทั่วโลกส่วนใหญ่ในโลกธุรกิจกำลังใช้งานเวอร์ชันเก่าขององค์กร ซึ่งส่วนใหญ่ไม่ได้รับผลกระทบ คุณอาจเลิกใช้ CentOS ตัวเก่าได้ เพราะมันไม่ทันสมัยและเจ๋ง แต่ในกรณีนี้ มันก็มีประโยชน์อยู่บ้าง

ในฐานะผู้ใช้ปลายทาง

ตอนนี้ ถ้าคุณต้องการเป็นทหารม้าที่ดี มีบางสิ่งที่คุณสามารถทำได้ ตรวจสอบว่าเว็บไซต์ยอดนิยมของคุณยังใช้เวอร์ชันที่ไม่ดีอยู่หรือไม่ ถ้าใช่ ให้รายงาน ส่งต่อ ขอวิธีแก้ไข เกี่ยวกับเรื่องนี้จากฝั่งผู้ใช้

รหัสผ่าน ใช่ เราได้กล่าวถึงก่อนหน้านี้ โปรดทราบว่าข้อบกพร่องที่ดีนี้มีมาตั้งแต่ต้นปี 2012 ซึ่งมากกว่าสองปีที่แล้ว คุณไม่ได้ตระหนักถึงปัญหานี้ตลอดเวลา ซึ่งอาจหมายความว่าปัญหาไม่ได้แสดงอย่างลับๆ ในวงกว้าง และถ้าเป็นเช่นนั้น ทุกๆ สองปีย้อนหลังจนถึงตอนนี้ ข้อมูลอาจรั่วไหลออกไป So you should put things into the right perspective.

If you are running your own site, you can responsibly update the system, stop and start the affected services in order to load new libraries into the memory, and most importantly, make sure you do not have any crappy applications developed by mediocre consultant companies that use their own, statically-compiled openSSL, which effectively means that they will not be seeing or using your updates.

Conspiracy

Naturally, there is a fresh new NSA surveillance conspiracy, which claims that the three-letter agency knew about this bug for years. If you ask me, this is doubtful because two different companies, including Google's engineers and a Finnish (i.e. not American) company Codenomicon, reported the bug almost simultaneously. This means that something new came about.

So, if you are worried about NSA, then here's a remedy. Are you familiar with Michael Mann? He's the dude who directed Miami Vice, check, Heat, check, and many other great movies, including Manhunter, a much, much better version of the Hannibal Lecter thingie than Red Dragon. And the theme song is Heartbeat, also featured in one of Miami Vice's many stellar episodes. Now, if you listen to the song, you will understand it perfectly clearly.

Heartbeat, heartbeat, listen to my hearbeat, oh-oh

สรุป

This is probably the first time you will hear Dedoimedo say that there is a real security issue that people should treat seriously, rather than the usual scaremongering. Yes, the memory leak caused by Heartbleed is not just your everyday malware nonsense. On the same note, it is also an issue that will primarily have to be addressed by companies and service providers. Your role in this game is small. The important thing is to stay calm and rational.

Just remember, when the Internet backbones aches, lean back and watch. It does not happen every day, and it is a refreshing change from the usual your PC might be at risk bullcrap. In this case, it's bigger than you. So relax.

ไชโย