ปลอดภัยที่จะใช้หมายเลขพอร์ตสูงหรือไม่ (ใหม่: การปิดบังบริการเว็บ)


9

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

การประนีประนอมจะดีกว่าไหมถ้าใช้หมายเลขพอร์ตที่มีขนาดใหญ่มาก (เช่น. ห้าหลักสูงสุด 65531)

ฉันได้อ่านแล้วว่าเครื่องสแกนพอร์ตมักสแกน 10,000 พอร์ตแรกเท่านั้นดังนั้นการใช้หมายเลขพอร์ตที่สูงมาก ๆ นั้นค่อนข้างปลอดภัย

มันเป็นเรื่องจริงเหรอ?

มีวิธีที่ดีกว่าในการปกป้องเว็บเซิร์ฟเวอร์หรือไม่? (เช่น web guis สำหรับแอปพลิเคชัน)


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

คำตอบ:


9

ฉันได้อ่านแล้วว่าเครื่องสแกนพอร์ตมักสแกน 10,000 พอร์ตแรกเท่านั้นดังนั้นการใช้หมายเลขพอร์ตที่สูงมาก ๆ นั้นค่อนข้างปลอดภัย

หลายคนเชื่อเรื่องนี้ ฉันไม่.

อาจจะปลอดภัยกว่านี้นิดหน่อย แต่ก็ไม่มากนัก พอร์ตที่มีหมายเลขต่ำนั้นมีอยู่ทั่วไปดังนั้นสแกนเนอร์บางตัวจะดูที่นั่นก่อน

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

สแกนเนอร์บางคนใช้ประโยชน์จากความเชื่อนี้และเริ่มต้นที่ด้านบนและดำเนินการตามรายการ การสแกนอื่น ๆ จะเลือกพอร์ตแบบสุ่มตลอดทั้งช่วงดังนั้นพอร์ตทั้งหมดจึงมีโอกาสเท่ากันในการสแกน

ไปข้างหน้าและทดสอบด้วยตัวเองโดยใช้ NMAP . รันการสแกน nmap กับพอร์ต 1-10,000 และค้นหาเซิร์ฟเวอร์ HTTP และเปรียบเทียบกับการสแกนที่สแกนกับพอร์ต 1-65, xxx ทั้งหมด คุณจะเห็นว่าความแตกต่างโดยทั่วไปคือ 3-10 นาที ถ้าฉันทำการสแกนแบบละเอียดโดยใช้ Nessus บางครั้งความแตกต่างก็คือ 20-60 นาที

แครกเกอร์ที่ดีคือแคร็กเกอร์สำหรับผู้ป่วย พวกเขาจะรอ


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

2
+1 "แครกเกอร์ที่ดีคือแคร็กเกอร์ผู้ป่วยพวกเขาจะรอ"
msanford

@ wag2639 คุณไม่ได้ทำอะไรเลยด้วยการเปลี่ยนหมายเลขพอร์ตของบริการ แต่การทำให้ script-kiddie ค้นหาสคริปต์ที่ดีขึ้นเล็กน้อย การหมุนหมายเลขการทำสงครามบล็อกของ IP และการสแกนพอร์ต ALSO ทุกพอร์ตเดียวนั้นไม่สำคัญ
msanford

3

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

สิ่งเหล่านี้ถือได้ว่าเป็นความปลอดภัยโดยความสับสน


มีทางเลือกอื่นในการใช้ VPN แบบเต็มหรือไม่? บางทีเว็บพร็อกซีย้อนกลับบางประเภทที่มีการป้องกันการล็อกอิน / รหัสผ่านพิเศษ (ปลาหมึกไม่ทำสิ่งนี้)
SofaKng

@sofakng: คุณอาจสนใจ SSL wrapper อย่าง Stunnel: stunnel.org
Maxwell

3

คุณยังสามารถใช้ ssh tunnel ได้หากคุณใช้ Linux ทั้งสองด้าน

ssh -f -N -L 9090:localhost:9090 user@remote-host

ตัวอย่างเช่นนั่นคือสิ่งที่ฉันใช้เพื่อส่งต่อพอร์ต 9090 บนรีโมตโฮสต์ไปยังพอร์ตท้องถิ่น 9090 cherokee-adminและฉันใช้การตั้งค่าที่คล้ายกันสำหรับเว็บ GUI อื่น ๆ คุณสามารถปกป้องแอปพลิเคชันด้วยวิธีนี้ได้โดยระบุในการกำหนดค่าแอพที่พวกเขาทำงานบน localhost เท่านั้นเช่น 127.0.0.1. ด้วยวิธีนี้พวกเขาไม่สามารถเข้าถึงได้จากภายนอก แต่คุณสามารถส่งต่อพวกเขาด้วย ssh. ตรวจสอบ man ssh สำหรับตัวเลือกเพิ่มเติมโดยใช้การส่งต่อพอร์ต (รวมถึง X ซึ่งอาจช่วยแก้ปัญหาของคุณในอีกทางหนึ่งโดยสิ้นเชิง)

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


1

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

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


ฉันใช้ pfsense และบริการบนเว็บบางตัวของฉันมีการรองรับ SSL (HTTPS) ในตัว จะดีกว่าไหมถ้าใช้ stunnel? กำลังใช้ stunnel ในระดับ "การรับรองความถูกต้องที่ไฟร์วอลล์" หรือไม่
SofaKng

1
คุณจะ "ตรวจสอบที่ไฟร์วอลล์" ได้อย่างไร
wag2639

ฉันไม่รู้ว่า pfsense มี functionnality นั้นหรือไม่บนเราเตอร์ Junipers คุณสามารถใช้ผู้ใช้ภายใน (แม้แต่ RADIUS) เพื่อให้สิทธิ์การเข้าถึงทราฟฟิก HTTP ที่แปล เกี่ยวกับ Stunnel คุณสามารถใช้การรับรองความถูกต้องร่วมกันกับ Stunnel จะทำให้การรับส่งข้อมูล HTTP ด้วย SSL และจัดการการรับรองความถูกต้อง
Maxwell
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.