Tại sao tên miền đã đăng ký là local localtest.me, giải quyết thành 127.0.0.1?


30

Tôi đã đọc một bài viết về giả mạo yêu cầu phía máy chủ . Trong bài báo đó, kẻ tấn công đã tìm thấy nó 127.0.0.1được mở cho internet. Nạn nhân sau đó đã chặn 127.0.0.1, nhưng vì nhiều IP khác và rõ ràng cũng có một số tên miền cũng được giải quyết theo đó, bao gồm cả bí ẩn localtest.me, anh ta có thể bỏ qua bộ lọc dựa trên văn bản yếu.

  1. Có gì đặc biệt localtest.me?

  2. Có những người khác? (Và làm thế nào để tìm thấy chúng?)


CẬP NHẬT

Tôi tìm thấy: http://readme.localtest.me/

Rõ ràng có ai đó đã quyết định đăng ký tên miền đó một cách hài hước, cho mục đích thử nghiệm:

Đây là cách nó hoạt động. Toàn bộ tên miền localtest.me, và tất cả các mục nhập ký tự đại diện Điểm đến 127.0.0.1. Vì vậy, không có bất kỳ thay đổi nào đối với tệp máy chủ của bạn, bạn có thể bắt đầu thử nghiệm ngay lập tức bằng một URL cục bộ.

Tuy nhiên, tôi vẫn không chắc chắn làm thế nào bạn có thể đăng ký một tên miền bên ngoài đến một tên miền địa phương. Điều này là khó hiểu vì tracert localtest.methậm chí không bao giờ rời khỏi máy. Làm thế nào điều này được xử lý ở mức độ thấp?

Sau đó tôi đã tìm thấy nhiều hơn trong những bình luận này và những nơi khác:

lvh.me 
vcap.me
fuf.me - IPv4 and IPv6
ulh.us
127-0-0-1.org.uk
ratchetlocal.com
smackaho.st
42foo.com
beweb.com
yoogle.com
ortkut.com
feacebook.com

Và trong các câu hỏi tương tự trên Stack Overflow.


22
Điều này thực sự đơn giản: Đăng ký một tên miền và gán địa chỉ IP là hai điều khác nhau. Bất cứ ai cũng có thể đăng ký bất kỳ tên miền cho bất kỳ lý do. Người ta chỉ cần trả tiền cho công ty đăng ký tên miền, đi qua máng giấy ảo ảo, và sau đó, giống như phép thuật, bạn có một tên miền. Nhưng sau đó, việc gán một địa chỉ IP cho tên miền đó là một con thú hoàn toàn khác. Bất cứ ai cũng có thể gán bất kỳ địa chỉ IP nào cho một tên miền. Một tên miền chỉ đơn giản là một con trỏ làm cho cuộc sống dễ dàng hơn.
JakeGould

Một tên miền như vậy có liên quan đến sự xáo trộn của lực lượng gần đây làbealocalhost.de
Hagen von Eitzen

Câu trả lời:


69

Tuy nhiên, tôi vẫn không chắc chắn làm thế nào bạn có thể đăng ký một tên miền bên ngoài đến một tên miền địa phương. Điều này gây nhầm lẫn vì một tracert localtest.me thậm chí không bao giờ rời khỏi máy. Làm thế nào điều này được xử lý ở mức độ thấp?

Không có gì "liên kết" tên miền với địa chỉ của nó theo cách bạn tưởng tượng. Giống như một cuốn sách điện thoại, DNS chỉ cho bạn biết địa chỉ là gì - nhưng đó là nơi sự tham gia của nó kết thúc. (Bạn không quay số "Pizza Hut" trên điện thoại; bạn tra cứu số điện thoại của họ và quay số.)

Vì vậy, khi ai đó đăng ký một tên miền, họ sẽ có được khả năng chỉnh sửa các bản ghi danh bạ đó. Nhưng để thực sự "chỉ" một tên miền ở đâu đó - hãy nói 127.0.0.1- họ thêm dòng này vào cơ sở dữ liệu của nó:

localtest.me.   A   127.0.0.1

Đó là nó. Bất cứ ai hỏi về localtest.mebây giờ đều nhận được câu trả lời "Ồ, đó là 127.0.0.1."

Vì vậy, khi bạn nhập tracert localtest.me., đầu tiên nó sẽ hỏi DNS về địa chỉ được liên kết; nhận được câu trả lời 127.0.0.1; và sau đó cư xử chính xác như thể bạn đã chạy tracert 127.0.0.1thay thế. Không có phép thuật nào cả.

Có những người khác? (Và làm thế nào để tìm thấy chúng?)

Tại thời điểm này, rõ ràng rằng bất kỳ chủ sở hữu tên miền nào cũng có thể thực hiện việc này mà không cần bất kỳ nỗ lực nào, do đó, luôn có xác suất rằng các tên miền như vậy tồn tại tại bất kỳ thời điểm nào. Do dữ liệu DNS được phân phối trên nhiều hệ thống (đôi khi thậm chí được tạo động), bạn thực sự không thể tìm thấy tất cả hoặc thậm chí mong đợi kết quả của mình vẫn chính xác chỉ sau vài giây.

Nhưng vì mục đích bảo mật, bạn không cần phải tìm tất cả. Một số bộ phân giải DNS thực sự đã có một loại bộ lọc cho các mục như vậy (được gọi là "bảo vệ phản hồi DNS") và chúng không tìm kiếm các câu hỏi cụ thể - chúng chỉ nhìn vào câu trả lời . Tính năng bảo vệ chỉ chặn các câu trả lời trỏ đến bất kỳ địa chỉ địa phương nào.

Tuy nhiên, trước khi bạn hỏi, điều này không thể bị cấm trên toàn cầu - việc chỉ tên miền vào địa chỉ riêng vẫn là một cách sử dụng DNS hoàn toàn hợp pháp và được sử dụng trong thực tế trong nhiều mạng.


4
Cảm ơn các bạn đã làm rõ. Đây chắc chắn là một phát hiện thú vị, vì tôi không biết rằng người ta cũng có thể đăng ký các khối IP dành riêng .
not2qubit

11
Vâng. Đây không phải là việc của DNS để thực thi cách sử dụng địa chỉ.
grawity

2
@ not2qubit phiên bản Tôi không biết rằng ai cũng có thể đăng ký các khối IP dành riêng. Bạn đang trộn lẫn các thuật ngữ. Bạn cần đăng ký một tên miền với một công ty đăng ký; đó là một quá trình được kiểm soát. Bạn chỉ định một địa chỉ IP cho một tên miền; đó là một quá trình không được kiểm soát. Bất kỳ đống số nào cũng có thể được gán cho bất kỳ tên miền đã đăng ký nào miễn là bạn kiểm soát tên miền.
JakeGould

"Bạn không quay số" Pizza Hut "trên điện thoại, bạn tìm số điện thoại của họ và quay số." Tương tự tốt đẹp!
Joshua Pinter

1
Phải thừa nhận rằng một thứ có lẽ sẽ không tồn tại được lâu, thay vào đó, Siri / Alexa / Google đặt mua pizza cho bạn ...
grawity

16

Có những câu trả lời khác đi sâu vào chi tiết, nhưng cốt lõi của câu hỏi này thực sự đơn giản để trả lời:

Tuy nhiên, tôi vẫn không chắc chắn làm thế nào bạn có thể đăng ký một tên miền bên ngoài với một tên miền địa phương.

Đăng ký một tên miền và gán địa chỉ IP là hai điều hoàn toàn khác nhau và độc lập.

Bất cứ ai cũng có thể đăng ký bất kỳ tên miền nào vì bất kỳ lý do gì; bạn thậm chí có thể đăng ký một tên miền mà không cần có địa chỉ IP đích. Người ta chỉ cần trả tiền cho công ty đăng ký tên miền, đi qua máng giấy ảo ảo, và sau đó, giống như phép thuật, bạn có một tên miền. Tất cả những gì bạn đang trả tiền khi bạn đăng ký một tên miền là chính tên miền cũng như khả năng mà bạn đã đọc bên dưới, để gán địa chỉ IP cho một tên miền.

Nhưng sau đó, việc gán một địa chỉ IP cho tên miền đó là một quá trình hoàn toàn khác. Bất cứ ai cũng có thể gán bất kỳ địa chỉ IP nào cho một tên miền nếu họ có quyền kiểm soát tên miền đó. Nhà đăng ký tên miền không quan tâm hay lo lắng về đống địa chỉ thô mà bạn gán cho một tên miền.

Tất cả một tên miền chỉ đơn giản là một con trỏ làm cho cuộc sống dễ dàng hơn. Hãy nghĩ về nó như một bí danh để mọi người không phải ghi nhớ các đống số (IPv4) hoặc số và chữ cái (IPv6).

Đó là nó!

Nhưng những gì đã xảy ra, như được giải thích bởi trang đó mà bạn đã truy cập, đó không phải là một bản hack hack của mọi hệ thống trong địa chỉ trên mạng 127 127.0.0.1 cục bộ của thế giới, mà là một lỗ hổng trên chính hệ thống cụ thể đó.

Nhưng để làm rõ hơn về điều này và điều này đã làm tôi vấp ngã theo cách mà bạn đã diễn đạt nó cũng như khi bạn nói:

Tôi đã đọc một bài viết về giả mạo yêu cầu phía máy chủ . Trong bài viết đó, kẻ tấn công thấy rằng 127.0.0.1 đã được mở cho internet.

Tôi cũng đọc bài viết đó và đây là điều đã xảy ra: Ai đó đang sử dụng một công cụ trực tuyến cho phép bạn trỏ công cụ đó đến bất kỳ địa chỉ IP / tên máy chủ nào. Khi họ chỉ ra rằng công cụ 127.0.0.1đó không phải là địa chỉ IP 127.0.0.1được tiếp xúc với Internet. Thay vào đó, bản thân công cụ có một lỗ hổng cho phép bất cứ ai thăm dò máy chủ nội bộ mà công cụ đó đang chạy bằng cách sử dụng 127.0.0.1. Và vì công cụ này rõ ràng là một công cụ hack được sử dụng để phát hiện các cổng mở và do đó, bằng cách sử 127.0.0.1dụng ứng dụng cụ thể đó có thể thăm dò mạng localhost của chính nó và khóa Key ở đây, truyền tải thông tin đó cho ai đó truy cập công cụ thông qua trình duyệt web .

Rủi ro được đưa ra không phải là mọi thứ đều 127.0.0.1được phơi bày trên Internet, mà là việc mã hóa cẩu thả trên một công cụ trên một trang web đã cho phép điều này xảy ra.


8

Có gì đặc biệt về localtest.me ?

Nó trỏ đến 127.0.0.1 (localhost). Địa chỉ này luôn được dành riêng cho máy tính cục bộ.

Có những người khác? (Và làm thế nào để tìm thấy chúng?)

Vâng. Google và Super User là bạn bè của bạn (như bạn đã tìm ra).

Tôi vẫn không chắc chắn làm thế nào bạn có thể đăng ký một tên miền bên ngoài vào [IP] cục bộ. Điều này là khó hiểu vì tracert localtest.methậm chí không bao giờ rời khỏi máy. Làm thế nào điều này được xử lý ở mức độ thấp?

Bạn đang thiếu yêu cầu DNS ban đầu (bên ngoài) . tracerthiển thị đường dẫn mà gói tin đi nhưng trước khi gói có thể đi bất cứ đâu, máy tính phải biết IP để gửi. Với sự cẩn thận, nếu bạn chưa bao giờ truy cập locatest.me trước đó, một yêu cầu DNS được thực hiện cho các trình phân giải bên ngoài để khám phá rằng nó ánh xạ tới 127.0.0.1. Dữ liệu được trả về sau đó được sử dụng cục bộ (ví dụ: tracerthoặc hiển thị nội dung web). Và hãy nhớ rằng DNS có thể ánh xạ bất kỳ tên máy chủ nào tới bất kỳ IP nào - nó không "biết" nếu một IP có cục bộ hay không.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.