Facebook and Minds

เห็นคนแห่ไปใช้ Minds กัน มีความเห็นประมาณนี้ ไว้รวมๆ เขียนบทความอีกที

  • การบอกว่าอะไรปลอดภัยหรือไม่ ใช้เวลาพอสมควร โลกเรามีบริการที่อ้างว่าปลอดภัยเป็นพิเศษโน้นนี้จำนวนมาก แต่เอาเข้าจริงมั่วก็เยอะ
  • Minds เพิ่งมาตอนหลัง น่าสงสัยว่ากระบวนการรักษาความปลอดภัยที่ว่านั้นจริงแค่ไหน
  • ที่จริงแล้ว Minds เปิดซอร์สให้ดูบน Github แต่บริการที่ยังไม่ได้รับความนิยมในวงกว้างก็ยังไม่มีผู้เชี่ยวชาญไปส่องเยอะนัก
  • ถ้าต้องการแค่แชต เอาจริงๆ มีบริการแชตที่เข้ารหัส end-to-end มากมายแล้วในตอนนี้ และดูจะผ่านการทดสอบมาเยอะกว่า
  • ผมไม่คิดว่าการเข้ารหัสแบบ end-to-end ลดความน่ากลัวแบบ “ไทยๆ” ได้นัก ผมไม่คิดว่ามีใครในไทยมีศักยภาพในการถอดรหัส HTTPS/TLS ได้อย่างมีประสิทธิภาพ
  • การ “แฮก” โดยทั่วไปก็น่าจะเป็นการเข้าถึงตัวเครื่องของฝั่งใดฝั่งหนึ่ง อย่างมากที่สุดคือหาทางลงมัลแวร์ในเครื่องเหยื่อ ซึ่งไม่ว่าแอปอะไร เข้ารหัสแค่ไหนก็ไม่รอด ตราบใดที่ยังเลินเล่อ ไม่สนใจเข้ารหัสเครื่อง ล็อกจอ และบอกว่าจะไม่เรียนรู้อะไรนอกจากภาวนาให้โลกปลอดภัย แอปจะเข้ารหัสประเสริฐแค่ไหน คนนึงไม่ล็อกเครื่องเอาไปเปิดก็อ่านแชตได้ เพราะมันใช้งานแบบนั้น
  • ในแง่ความไม่ใส่ใจของผู้ใช้ถ้าคนจะไม่ใส่ใจยังไงเสียก็ไม่ใส่ใจ ความปลอดภัยคงทำได้ยาก
  • จะช่วยได้บ้าง เช่นหาทางสื่อสารที่บันทึกได้ยากขึ้น เช่น ถ้าคุยเรื่องที่ต้องการไม่ให้มีบันทึกก็อย่าแชต เปลี่ยนเป็นโทรศัพท์ ออนไลน์ก็ได้ ก็ลดความเสี่ยงได้ เพราะตัวเนื้อหาไม่มีการเก็บบนเครื่องเป็นปกติ
  • แอปแชตบางตัวพยายามเลียนแบบการโทร เช่น telegram มีการแจ้งเตือนเมื่อ capture หน้าจอ (ซึ่งก็ใช้กล้องอีกตัวมาถ่ายได้อยู่ดี อย่างที่บอก มันแค่ลดความเสี่ยง เหมือนโทรศัพท์ก็ใช้เครื่องอัดเสียงได้)
  • อีกประเด็นคือรู้ตัวเสนอว่าข้อมูลมันผูกกับข้อมูลส่วนตัวของเราจำนวนมาก กรณีแอปแชตตัวทั่วไปคือเบอร์โทรศัพท์ที่บังคับผูกเบอร์ (ซึ่งมันห่วยนะ ทำไมมันชอบทำกันเป็นแฟชั่น) อย่าง Facebook นี่ก็อย่างน้อยคืออีเมล และข้อมูลที่ให้ๆ ไปบางทีมันรู้จักเราดีกว่าตัวเราเอง
  • เท่าที่ลองใช้งาน ในแง่ความเป็นส่วนตัวจากมุมมองว่ามันไม่ร้องขอข้อมูลเรา ดีที่สุดคือ BitTorrent Bleep ไม่ขออะไรทั้งสิ้น สร้าง key แล้วใช้งานได้เลย
  • ในแง่ความปลอดภัยยังน่าสงสัยอยู่ (เช่นเดียวกับ Minds คนมันยังใช้น้อย ยังถูกทดสอบน้อยอยู่) แถมตัวโปรโตคอลเองก็ไม่เปิดเผยนัก ที่แน่ๆ คือฝั่งตรงข้ามจะรู้ไอพีเรา แต่คนดักฟังจะเห็น ID ของเราไหมนี่ยังไม่แน่ใจ
  • แต่ในแง่การใช้งานจริง Bleep นี่ไม่เวิร์ครุนแรง ต่อติดยาก ข้อความช้า
  • อีกตัวที่แนวคิดเดียวกันแต่หยุดพัฒนาไปนานแล้วคือ TorChat
 

Blognone Upgrade

original_release_schedule

ผมพยายามอัพเกรด Blognone มาหลายครั้งก่อนหน้านี้ ด้วยข้อจำกัดหลายอย่างก็มาอัพเกรดเอาในนาทีสุดท้าย

  • แพตช์สุดท้ายออกเมื่อสิ้นเดือนกพ. ที่ผ่านมา สถานะ D6 ตอนนี้คือไม่ซัพพอร์ตอย่างสมบูรณ์
  • การอัพเกรดก่อนหน้านี้ล้มเหลวไปแล้วหลายรอบ ติดบั๊กเยอะมาก
  • การอัพเกรดนาทีสุดท้าย “ลื่น” กว่าที่เคยทำมาก่อนหน้านี้มาก เข้าใจว่าบั๊กตัวอัพเกรดหลายตัวถูกแก้ไปหมดแล้ว
  • อันนี้เผื่อใครสนใจเลือก CMS ใช้งานต้องเข้าใจว่า Drupal กับ WordPress มีแนวทางต่างกันสิ้นเชิง Drupal จะมาแนวคิด Enterprise กว่ามาก เช่น ต้องซัพพอร์ต PHP รุ่นที่ระบุไว้ตั้งแต่แรกแม้ผ่านมานานหลายปี ตามกำหนดการถ้าไม่เลื่อน Drupal 7 จะใช้งานได้อีกประมาณสี่ปี
  • ข้อเสียสำคัญของ Drupal คือ API แต่ละรอบ break หนักมาก โมดูลมักขาดไปหลายปี Drupal 7 ออกมาตั้งแต่ปี 2011 กว่าจะใช้งานได้จริงๆ โมดูลครบถ้วนก็ประมาณ 2013
  • ถ้ามีเงินหน่อย ทางออกสำคัญคือไปจ้างคนทำโมดูลไปรอไว้ซะ โครงการใน Drupal จะเห็นบริษัทสปอนเซอร์กันมากมาย ขาดอันไหนก็ไปสปอนเซอร์คนทำเดิมให้มาอัพเวอร์ชั่น
  • คนรอใช้ฟรีชีวิตก็จะลำบากหน่อย กว่าจะรอโมดูลครบ หลายครั้งโมดูลเดิมคนทำหายตัวต้องเปลี่ยนแนวทางเพื่อทำฟังก์ชั่นเดิม ข้อเสียคือกว่าจะไปเวอร์ชั่นใหม่ได้ก็ รุ่นปัจจุบันก็จะหมดอายุในไม่กี่ปีแล้ว
  • แต่ถ้าไม่ลำบากมาก ภายใน 1-2 ปีควรไป Drupal 8x (ช่วงก่อนเข้า LTS) โมดูลจะเริ่มครบ และได้ใช้ระบบนิ่งๆ ยาวพอสมควร
  • การอัพเกรดมีเหตุผลหลักคือ security patch เพราะรอบของ Drupal จะเป็น ฟีเจอร์สลับกับ security ตอนนี้ถ้าใครยังใช้อยู่ รอบแพตช์ security รอบต่อไปจะมาปลายเมษา (ถ้าไม่มีออกนอกรอบซึ่งเดาไม่ได้)
  • ถ้าใครกังวลเรื่องแพตช์ก็จะมีเวลาอีกเดือนกว่าๆ ถ้าใครไม่เคยอัพเลยก็ไม่ต้องกังวล รูโหว่น่าจะเพิ่มอีกไม่มากแล้ว (ถ้าไม่นับว่ารูเดิมน่าจะเยอะแล้ว)
  • เตรียมการมานาน แต่จริงจังเมื่อเดือนที่แล้ว
  • วางแผนสุดท้ายคือ ฟังก์ชั่นทุกอย่างเท่าเดิม ย้าย Engine อย่างเดียวก่อน
  • ต้องตัด taxonomy_image ออกหลังพยายามพอร์ตมาแล้วไม่สำเร็จ เดี๋ยวจะทำใหม่
  • สัปดาห์ที่ผ่านมาเป็นสัปดาห์นรก กลับบ้านมาต้องมาซ้อมย้ายทุกวันว่าจะติดอะไรไหม (และก็ติดได้ทุกวัน) นับเฉพาะติดใหญ่ๆ เช่นเว็บไม่ขึ้น กระบวนการ upgrade db ไม่ผ่านเลย
  • ซ้อมอัพรอบสุดท้ายเมื่อวันเสาร์กลางวัน ตกลงใจว่าจะเริ่มตอนตีหนึ่ง พอตีหนึ่งก็ปรับเว็บเข้า read only mode
  • แผนการคือมี migrate environment ไว้ในโน้ตบุ๊ก ย้ายข้อมูลลงมาแล้ว migrate ซ่อม แล้วอัพกลับขึ้นเซิร์ฟเวอร์ (ระหว่างสัปดาห์พยายาม migrate บนเซิร์ฟเวอร์สองวันแล้วติดปัญหา)
  • migrate เสร็จประมาณตีสี่กว่า อัพกลับขึ้นไปเทส
  • เบลอและเมา อัพไฟล์ SQL ผิดไฟล์ เป็นไฟล์ snapshot ระหว่างกระบวนการ ต้องอัพใหม่
  • ตีห้ากว่า
  • ซ่อมโน่นนี่ ติดคอนฟิกเซิร์ฟเวอร์บางอย่าถึง 7 โมง
  • 7 โมงถึง 9 โมง สลับ reverse proxy ให้ไปเครื่องใหม่ แล้วทิ้งให้ D6 เข้าถึงไม่ได้ไว้อย่างนั้น
  • นอน
  • นอนไม่หลับ เที่ยงนิดๆ ตื่น
 

X220

ซื้อ notebook ใหม่ใช้มาแล้วหลายเดือน บันทึกไว้สักหน่อย

  • เครื่องเดิมที่ผมใช้คือ ThinkPad T400 ใช้ตั้งแต่เริ่มทำงานหลังจบปริญญาโท สภาพตอนนี้น่าจะไม่ไหวแล้ว (อัพแรม 8GB ไปแล้ว)
  • เจอเครื่องมือสองยังเหลือประกันชุดใหญ่หลุดมาใน ThaiThinkPad เลยตัดสินใจจัด X220 เพราะเบาลงมาก ซีพียูดีขึ้นสองรุ่น และยังคงความเป็น ThinkPad Classic อยู่รุ่นท้ายๆ
  • รับไม่ได้กับเครื่องรุ่นใหม่ๆ โดยเฉพาะตระกูล x40 ที่ตัดปุ่ม physical สำหรับ trackpoint ออก ผมปิด trackpad ทิ้งเสมอ ตัว X220 ยังพอไหว ปุ่มสำหรับ trackpoint ยังครบ
  • อัพสูงสุดทุกอย่าง ใส่ SSD 128GB, แรม 16GB และเพิ่ม USB 3.0 อีกสองพอร์ต จนตัวเครื่องน่าจะเป็นเครื่องทันสมัยสำหรับ dev ไปได้อีกหลายปี ถ้าไม่มีอะไรพังไปเสียก่อน
  • เปลี่ยนแบตเป็น 44+ หลังยื่นๆ หน่อย แต่แบตอยู่ได้ 6 ชั่วโมง ทำงานได้ทั้งวัน โอเคแล้ว
  • งบรวมๆ โมเครื่องทั้งหมด 21,000 บาทได้ ตัวเครื่อง + dock ประมาณ 15000 แบต 2000
  • หวังว่าก่อนเครื่องนี้จะพัง ThinkPad จะกลับมาน่าใช้งาน (อย่างน้อยก็บางรุ่น) อีกครั้ง
 

ดักฟังอินเทอร์เน็ต

ช่วงนี้มีข่าวดักฟังอินเทอร์เน็ตมาเรื่อยๆ โดยเฉพาะในต่างประเทศ (ที่ใช้กฎหมายยุคสงครามเย็นกันมานาน หรือไม่ก็ใช้กฎหมายตั้งแต่ 9/11) พอเจอ Snowden เลยต้องอัพเดตกฎหมายกันชุดใหญ่

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

คำถามคือแล้วทำยังไงเราจะยอมรับได้ โดยส่วนตัวคิดว่า หลักการคือ

  • ตรวจสอบย้อนกลับได้ อันนี้สำคัญ กรณี Snowden บอกเราว่าการบอกว่ามีหมายศาลไม่ได้เป็นเครื่องป้องกันที่เพียงพอ (มีดีกว่าไม่มีแต่ว่ามีแล้วระบบแย่ก็ดีกว่านิดเดียวมากๆ FISA แทบจะเป็นตรายาง) คำสั่งควรเปิดเผยข้อมูลโดยรวม (aggregated data – จำนวนผู้ได้รับผลกระทบ, จำนวนคำสั่ง, จำนวนข้อความ) อย่างรวดเร็ว มีกรรมการตรวจสอบเข้าถึงรายละเอียดได้ทั้งหมด (อาจจะต้องมีระดับเข้าถึงความลับระดับความมั่นคงได้) และรายงานความผิดพลาดอย่างรวดเร็ว ในระยะยาว คำสั่งที่ไร้ผลแล้ว เช่น ปิดคดี หรือหมดอายุความ ต้องเปิดเผยรายละเอียดสู่สาธารณะ คนสั่งต้องไม่ทำตามสบายใจว่าไม่มีใครรู้ แต่ต้องคาดว่าหลังเรื่องจบจะมีคนรู้เสมอ ใครเป็นคนขอ ใครเป็นคนตรวจทาน ใครเป็นคนอนุญาต เป็นกรรม (ไม่ว่าดีหรือร้าย) ที่จะติดตัวไปจนตาย หลังเปิดเผยอาจจะมีฮีโร่หรือมีซาตานก็ต้องพร้อมรับสิ่งที่ตามมา
  • มีขอบเขตจำกัด อำนาจการดักฟังอาจจะไม่สามารถกำหนดเป็นบุคคลได้เสมอไป อาจจะกระทบคนจำนวนมากๆ เช่น ทั้งบ้าน, ทั้งโรงเรียน ฯลฯ แต่ต้องมีขอบเขตว่า ต่อให้ได้รับอนุญาตเป็นชุด (bulk) ก็ไม่ใช่เอาไปตีความใช้งานได้ตามใจชอบประเภทว่าถือหมายเดียวซัดทั้งประเทศ คำสั่งต้องระบุจำนวนผู้ได้รับผลกระทบและรายงานสู่กระบวนการตรวจสอบย้อนกลับ อาจจะต้องมีเพดานว่าคำสั่งจะอนุมัติได้ไม่เกินขอบเขตแค่ไหน เช่น ขนาดพื้นที่ หรือจำนวนอุปกรณ์ที่ได้รับผลกระทบ จำนวนไอพี ฯลฯ
  • ไม่ทำให้คนปลอดภัยน้อยลง กระบวนการดักฟัง เจาะระบบ ฯลฯ ต้องอยู่บนหลักว่าผู้ใช้โดยทั่วไปสามารถจัดหาระบบรักษาความปลอดภัยได้ดีแค่ไหนก็ให้เขาทำไป ต้องไม่มีการบังคับให้เปิดช่องพิเศษซึ่งลดความปลอดภัยโดยรวมลง รัฐเองมีความสามารถในการจัดหาช่องโหว่ที่ยังไม่เป็นที่รู้กันโดยทั่วไป อันนั้นก็ใช้งานได้ แต่ต้องไม่บังคับให้ผู้ผลิตใส่ช่องโหว่ลงไปอย่างตั้งใจ เพราะสุดท้ายแล้วช่องโหว่พวกนั้นจะกลายเป็นช่องโหว่ทำให้คนทั่วไปถูกโจมตีเสียเอง กรณีแบบนี้ที่เป็นบทเรียนคือกุญแจของ TSA และ RSA_EXPORT

หลักการอื่นๆ ประเภทว่าต้องเป็นคดีร้ายแรง มีเหตุผลพอสมควร ฯลฯ คงอยู่ในกฎหมายส่วนใหญ่อยู่แล้ว