0Pricing
Cryptology Academy · บทเรียน

โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น

ตรวจสอบการจับแพ็กเก็ตจริงจาก Wireshark ของการรับส่งข้อมูล HTTP, FTP และ Telnet ที่ไม่ได้เข้ารหัส

โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น เป็นบทเรียน Cryptology Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cryptology Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

เอชทีทีพี: ทุกอย่างเปิดเผย

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

Telnet: การเข้าถึงเทอร์มินัลระยะไกลแบบเก่า

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

FTP: ข้อมูลรับรองแบบข้อความล้วน

FTP ยืนยันตัวตนด้วยคำสั่ง USER ตามด้วยคำสั่ง PASS โดยทั้งสองคำสั่งจะถูกส่งเป็นข้อความล้วนผ่านพอร์ต TCP 21 การดักจับแพ็กเก็ตขณะเข้าสู่ระบบ FTP จะแสดงข้อมูลรับรองที่ตรงตามจริง แม้ว่าช่องทางถ่ายโอนไฟล์จะเข้ารหัสด้วย FTPS แต่การแลกเปลี่ยนข้อมูลยืนยันตัวตนในขั้นแรกก็ยังเปิดเผยรหัสผ่านต่อผู้สังเกตการณ์ทุกคน เซิร์ฟเวอร์ FTP รุ่นเก่าพบได้ทั่วไปในสภาพแวดล้อมขององค์กร และเป็นเป้าหมายที่เก็บเกี่ยวข้อมูลรับรองได้ง่าย

POP3 และ IMAP ที่ไม่มี STARTTLS

POP3 (พอร์ต 110) และ IMAP (พอร์ต 143) ที่ไม่มี TLS จะส่งข้อมูลรับรองอีเมลและเนื้อหาข้อความทั้งหมดเป็นข้อความล้วน เมื่อผู้ใช้เปิดโปรแกรมอีเมลผ่าน Wi-Fi ของร้านกาแฟ โดยกำหนดค่าเซิร์ฟเวอร์อีเมลให้ไม่เข้ารหัส อุปกรณ์อื่นใดบนเครือข่ายก็สามารถอ่านข้อความอีเมลทุกฉบับที่ดาวน์โหลดได้ การเปลี่ยนไปใช้ POP3S (พอร์ต 995) และ IMAPS (พอร์ต 993) จะใช้ TLS ตั้งแต่เริ่มการเชื่อมต่อ

การเชื่อมต่อ SQL โดยตรงที่ไม่มี SSL

เซิร์ฟเวอร์ฐานข้อมูลอย่าง MySQL (พอร์ต 3306) และ PostgreSQL (พอร์ต 5432) รองรับการเชื่อมต่อที่ไม่เข้ารหัสเป็นค่าเริ่มต้น เซิร์ฟเวอร์แอปพลิเคชันที่เชื่อมต่อฐานข้อมูลโดยไม่บังคับใช้ SSL จะส่งคำค้นและผลลัพธ์ของคำค้น รวมถึงข้อมูลส่วนบุคคลที่ละเอียดอ่อน เป็นข้อความล้วนผ่านเครือข่าย เครือข่ายภายในมักถูกถือว่าเชื่อถือได้ แต่ผู้โจมตีที่ได้จุดยึดใด ๆ ก็สามารถเริ่มดักจับการรับส่งข้อมูลฐานข้อมูลได้ทันที

การรับส่งข้อมูล LDAP แบบเก่า

LDAP (Lightweight Directory Access Protocol) บนพอร์ต 389 จะส่งคำขอค้นหาไดเรกทอรีและข้อมูลยืนยันตัวตนเป็นข้อความล้วน สภาพแวดล้อมขององค์กรที่ใช้ Active Directory เพื่อยืนยันตัวตนอาจมีการดำเนินการผูกการเชื่อมต่อ LDAP ซึ่งเปิดเผยชื่อผู้ใช้และรหัสผ่านบนเครือข่ายภายใน LDAPS บนพอร์ต 636 ใช้ TLS และ STARTTLS บนพอร์ต 389 สามารถยกระดับการเชื่อมต่อได้ แต่ไม่ได้บังคับใช้เสมอไป

Redis ที่ไม่มี TLS และการยืนยันตัวตน

Redis จะรอรับการเชื่อมต่อที่พอร์ต 6379 โดยไม่มีการยืนยันตัวตนและไม่มี TLS เป็นค่าเริ่มต้น อินสแตนซ์ Redis ที่เปิดเผยต่อเครือข่ายโดยไม่มีรหัสผ่านจะทำให้ไคลเอ็นต์ใด ๆ สามารถอ่านคีย์ที่จัดเก็บไว้ทั้งหมด เรียกใช้คำสั่งใด ๆ และอาจเขียนไฟล์การกำหนดค่าได้ จนกระทั่ง Redis 6.0 (ปี 2020) เพิ่มการรองรับ TLS การรับส่งข้อมูล Redis ทั้งหมด รวมถึงข้อมูลแคชและโทเค็นเซสชัน จึงถูกเปิดเผยบนเครือข่ายอย่างสมบูรณ์

Memcached ที่ไม่มีการยืนยันตัวตน

Memcached ซึ่งเป็นชั้นแคชที่ใช้งานอย่างแพร่หลาย ไม่มีกลไกการยืนยันตัวตนในตัว และส่งข้อมูลทั้งหมดเป็นข้อความ ASCII แบบไม่เข้ารหัสผ่านพอร์ต TCP 11211 โดยทั่วไปนักพัฒนาจะอาศัยไฟร์วอลล์เครือข่ายเพื่อจำกัดการเข้าถึง แต่อินสแตนซ์ Memcached ที่กำหนดค่าผิดพลาดและเปิดเผยต่ออินเทอร์เน็ตเคยถูกใช้ในการโจมตี DDoS แบบขยายปริมาณและการขโมยข้อมูล เนื้อหาที่แคชไว้ทั้งหมด รวมถึงข้อมูลเซสชันและการตอบกลับของ API จะมองเห็นได้สำหรับทุกคนที่เข้าถึงพอร์ตดังกล่าว

Syslog ผ่าน UDP โดยไม่มีการเข้ารหัส

Syslog แบบดั้งเดิมใช้พอร์ต UDP 514 โดยไม่มีการยืนยันตัวตนและไม่มีการเข้ารหัส บันทึกระบบที่ส่งผ่านเครือข่ายสามารถถูกอ่าน แก้ไข หรือปลอมแปลงได้โดยทุกคนที่อยู่บนเส้นทาง ผู้โจมตีที่สามารถสกัดการรับส่งข้อมูล Syslog ได้จะอ่านเหตุการณ์ด้านความปลอดภัยแบบเรียลไทม์ หรือแทรกรายการบันทึกเท็จเพื่อปกปิดร่องรอยของตนได้ RFC 5425 กำหนด Syslog ผ่าน TLS แต่หลายระบบยังคงใช้โปรโตคอลข้อความล้วนแบบเก่า

มุมมองของผู้โจมตีต่อการรับส่งข้อมูลแบบข้อความล้วน

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

เหตุใดองค์กรจึงยังใช้โปรโตคอลแบบข้อความล้วน

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

โปรโตคอลแบบข้อความล้วน

คู่โปรโตคอลและพอร์ตใดต่อไปนี้ส่งข้อมูลรับรองการยืนยันตัวตนเป็นข้อความแบบไม่เข้ารหัสตามค่าเริ่มต้น

โปรโตคอลแบบข้อความล้วน: ประเด็นสำคัญ

HTTP, Telnet, FTP, POP3, IMAP, การเชื่อมต่อฐานข้อมูลโดยตรง, LDAP, Redis, Memcached และ Syslog ล้วนส่งข้อมูลโดยไม่มีการเข้ารหัสเป็นค่าเริ่มต้น ผู้สังเกตการณ์ทุกคนบนเส้นทางเครือข่ายสามารถอ่านข้อมูลรับรอง โทเค็นเซสชัน และข้อมูลละเอียดอ่อนได้ โปรโตคอลเหล่านี้ทั้งหมดมีรุ่นเทียบเท่าที่รักษาความปลอดภัยด้วย TLS ข้อสมมติว่าเครือข่ายภายในเชื่อถือได้นั้นเป็นอันตราย หลักการไม่ไว้วางใจใครถือว่าการรับส่งข้อมูลทั้งหมดอาจถูกสังเกตได้

คำถามที่พบบ่อย

บทเรียน “โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cryptology Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น”

ตรวจสอบการจับแพ็กเก็ตจริงจาก Wireshark ของการรับส่งข้อมูล HTTP, FTP และ Telnet ที่ไม่ได้เข้ารหัส คุณปฏิบัติ Cryptology Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cryptology Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cryptology Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cryptology Academy นี้ได้ไหม

ได้ บทเรียน Cryptology Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. โพรโทคอลข้อความธรรมดา: สิ่งที่ผู้โจมตีมองเห็น
  2. การจับแพ็กเก็ตทำงานอย่างไร
  3. การวิเคราะห์การรับส่งข้อมูลที่เข้ารหัส
  4. ความปลอดภัยของ DNS: DoH และ DoT
← กลับไปที่ Cryptology Academy