หลังจากที่เมื่อเช้านี้ Apple ได้ปล่อยอัพเดต iOS 7.0.6 ออกมาเพื่อแก้ไขปัญหาช่องโหว่การตรวจสอบ SSL แต่ไม่ได้ลงรายละเอียดอะไรมากกว่านั้น นักวิจัยด้านความมั่นคงปลอดภัยหลายรายก็เลยพยายามที่จะวิเคราะห์ว่าปัญหาของช่องโหว่นี้เกิดจากอะไร และมีผลกระทบมากน้อยแค่ไหน
จนในที่สุดก็มีคนไปไล่ดูซอร์สโค้ดของฟังก์ชันที่ใช้แลกเปลี่ยนกุญแจ SSL เลยพบว่า สาเหตุของปัญหานี้เกิดจากการที่ Apple ใส่คำสั่ง goto fail; เกินมา 1 บรรทัด เลยทำให้ระบบไม่ตรวจสอบค่า hostname ที่ผิดพลาดในใบรับรอง SSL
อย่างไรก็ตาม ถึงแม้ว่าทาง Apple จะแก้ไขปัญหาช่องโหว่นี้ไปแล้วใน iOS 7.0.6 แต่ก็มีคนไปพบว่า Safari และฟังก์ชัน cURL ใน OS X 10.9.1 ก็มีช่องโหว่แบบเดียวกัน แต่ปัจจุบันยังไม่มีแพตช์ออกมาแก้ไข
ที่มา - ImperialViolet, Hacker News, Neowin
on
แพทช์ -> แพตช์
nuntawat Sat, 22/02/2014 - 22:32
แพทช์ -> แพตช์
แก้แล้วครับ ขอบคุณครับ
Bigta Sat, 22/02/2014 - 22:51
In reply to แพทช์ -> แพตช์ by nuntawat
แก้แล้วครับ ขอบคุณครับ
เรื่องแบบนี้คงไม่มีใครที่ไม่เ
tontan Sat, 22/02/2014 - 22:50
เรื่องแบบนี้คงไม่มีใครที่ไม่เคยพลาด -_-
จาก diff ที่มีคนใน Hacker
luckyman Sat, 22/02/2014 - 23:00
จาก diff ที่มีคนใน Hacker News มาแปะไว้
บรรทัดที่ 631 สงสัยพลาดตอน merge
โปรแกรม merge พลาดต้องชะตาขาด
hisoft Sat, 22/02/2014 - 23:13
In reply to จาก diff ที่มีคนใน Hacker by luckyman
โปรแกรม merge พลาดต้องชะตาขาด ณ บัดนี้
นึกว่า Ctrl + v
animateex Sun, 23/02/2014 - 00:49
In reply to จาก diff ที่มีคนใน Hacker by luckyman
นึกว่า Ctrl + v รัวเกินไปหนึ่งครั้ง
If you fail, you fail twice.
inkirby Sat, 22/02/2014 - 23:16
If you fail, you fail twice. - คนเขียนโค้ดไม่ได้กล่าวไว้
ใช้ goto นี่มันฆ่าตัวตายชัดๆ
giogio Sat, 22/02/2014 - 23:44
ใช้ goto นี่มันฆ่าตัวตายชัดๆ effective c++ ถึงกับสั่งห้ามใช้เลยทีเดียว
แต่ Objective-C ไม่ได้ห้ามไว้
kitarotao Sat, 22/02/2014 - 23:56
In reply to ใช้ goto นี่มันฆ่าตัวตายชัดๆ by giogio
แต่ Objective-C ไม่ได้ห้ามไว้
ขอความรู้นิดครับ
puka56k Sun, 23/02/2014 - 00:38
In reply to ใช้ goto นี่มันฆ่าตัวตายชัดๆ by giogio
ขอความรู้นิดครับ พอดีไม่ได้เขัยน C ไม่ทราบว่าทำไมคำสั่งนี้ถึงน่ากลัวครับ
เกี่ยวกับการ JUMP
Aorjor Sun, 23/02/2014 - 01:21
In reply to ขอความรู้นิดครับ by puka56k
เกี่ยวกับการ JUMP ไปตำแหน่งของ Address ของ ROM, RAM หรือ Storage อื่นๆ หรือเปล่าครับ ถ้า Source code ถูก compile จะได้ภาษาในระดับต่ำกว่าลงไป ถ้าเป็น Assembly มาแกะกลับ สามารถทำให้มันกระโดดข้ามขั้นตอนเช่นยืนยันตัวตนก่อนเปิดโปรแกรมที่ถูก compile แล้วได้เลย อันนี้ข้อสันนิษฐานของผม
ถ้าเป็นแนวทางการเขียนโปรแกรมโ
lew Sun, 23/02/2014 - 01:40
In reply to ขอความรู้นิดครับ by puka56k
ถ้าเป็นแนวทางการเขียนโปรแกรมโดยทั่วไป การใช้ GOTO ทำให้เสีย "โครงสร้าง" โปรแกรมครับ กระบวนการวิเคราะห์ว่าโปรแกรมอยู่ในสถานะใดจะยากขึ้นอีกมาก ขณะที่การใช้ if-else-loop ไปเรื่อยๆ เราดูได้เสมอว่าโปรแกรมจะรันโค้ดบรรทัดไหนได้สถานะแบบไหน
+1 หลายครั้งก็พลาดกันง่ายๆ
nuntawat Sun, 23/02/2014 - 02:05
In reply to ถ้าเป็นแนวทางการเขียนโปรแกรมโ by lew
+1
หลายครั้งก็พลาดกันง่ายๆ แบบนี้
+1
bitworld Sun, 23/02/2014 - 04:33
In reply to ถ้าเป็นแนวทางการเขียนโปรแกรมโ by lew
+1
ขอบคุณมากครับ :)
puka56k Sun, 23/02/2014 - 13:35
In reply to ถ้าเป็นแนวทางการเขียนโปรแกรมโ by lew
ขอบคุณมากครับ :)
xkcd: goto
sid Sun, 23/02/2014 - 17:37
In reply to ขอความรู้นิดครับ by puka56k
xkcd: goto
เหมือนเคยอ่านเจอว่า
BLiNDiNG Sun, 23/02/2014 - 04:07
In reply to ใช้ goto นี่มันฆ่าตัวตายชัดๆ by giogio
เหมือนเคยอ่านเจอว่า ท้ายที่สุดแล้ว ลูป หรือ goto จะถูก compile ไปเป็น jump
ดังนั้นในกรณีที่อยาก optimize มากๆ และ ไม่อยากให้ compiler มานั่ง optimize อีกต่อ เพราะมี nested หลายๆชั้น จนมึน
ในระดับ OS เลยมีใช้ goto อยู่บ้าง แต่ก็มักกระโดดกันแค่ในฟังก์ชันเดียวกัน
เท่าที่เคยอ่าน code พวก
neizod Sun, 23/02/2014 - 15:57
In reply to ใช้ goto นี่มันฆ่าตัวตายชัดๆ by giogio
เท่าที่เคยอ่าน code พวก compiler ที่เขียนด้วย C ก็เห็นใช้ goto กันบ่อยๆ คือ goto error แล้วให้โปรแกรมตายฮะ ก็ถือว่ายอมรับได้นะเพราะ C มันไม่มี throw exception
ว่าแต่เมื่อไหร่ไอ้สไตล์การเขียน code แบบ if / for กับ statement เดียวแล้วยอมไม่มีวงเล็บปีกกามันจะหมดไปซักที ไม่ได้เขียน python นะยอมเปลืองหน่อยก็ได้ :/
+1 ย่อหน้าสุดท้าย orz
hisoft Sun, 23/02/2014 - 17:47
In reply to เท่าที่เคยอ่าน code พวก by neizod
+1 ย่อหน้าสุดท้าย orz
บางทีมีย่อเหลือ condition ?
ComSci-MFU Sun, 23/02/2014 - 18:18
In reply to เท่าที่เคยอ่าน code พวก by neizod
บางทีมีย่อเหลือ condition ? true: false; อีก
cond ? on_true : on_false;
neizod Sun, 23/02/2014 - 19:04
In reply to บางทีมีย่อเหลือ condition ? by ComSci-MFU
cond ? on_true : on_false;ผมสนับสนุนนะ เพราะมันบังคับอยู่แล้วว่าon_trueกับon_falseต้องเป็น expression เดี่ยวๆ (ยังไม่เป็น statement ด้วยซ้ำ) ลองดูอย่างเทียบกับ