Shodan là công cụ tìm kiếm và lưu trữ thông tin của tất cả những thiết bị có kết nối Internet mà nó quét được. Sâu hơn một chút thì Shodan là một hệ thống máy quét khổng lồ, khi nó quét qua một thiết bị thì thiết bị đó sẽ trả về một dữ liệu gọi là banner, thông tin trong banner thông thường sẽ là tên thiết bị, phiên bản firmware, và chỉ cần quét qua như vậy thiết bị của bạn đã có tên trong database của Shodan.
Những kẻ tấn công có thể sử dụng công cụ này để thu thập thông tin như địa chỉ IP, tên máy chủ, ISP, vị trí thiết bị và biểu ngữ của thiết bị mục tiêu. Nếu như một lỗ hổng mới được công bố kèm với thông tin thiết bị, phiên bản firmware…v.v thì chỉ với một thao tác tìm kiếm, hacker đã nắm trong tay một danh sách các thiết bị thực tế đang bị ảnh hưởng bởi lỗ hổng.
Với hỗ trợ của Shodan, các tìm kiếm dễ dàng với các filter theo quốc gia, port, nhà sản xuất… hacker dễ dàng thực hiện một cuộc tấn công diện rộng hoặc có chủ đích trên các thiết bị này. Tuy nhiên, bạn cần trả một khoản phí để sử dụng công cụ tìm kiếm. Cũng giống như các công cụ tìm kiếm quen thuộc như Google hay Bing, Shodan cũng có những cú pháp tìm kiếm nâng cao cho phép lọc kết quả như mong muốn. Trong bài viết này mình sẽ hướng dẫn các bạn cách sử dụng Shodan.
Theo mặc định, truy vấn tìm kiếm sẽ chỉ tìm thông tin banner mà không tìm kiếm thông tin về siêu dữ liệu (meta-data). Ví dụ, khi nhập từ khóa Microsoft, kết quả trả về sẽ chỉ bao gồm từ khóa được hiển thị trong banner.
Nếu bạn muốn tìm kiếm meta-data, bạn cần sử dụng các bộ lọc tìm kiếm.
Bộ lọc là những từ khóa đặc biệt mà Shodan sử dụng để cho phép bạn thu hẹp kết quả tìm kiếm dựa trên siêu dữ liệu của một dịch vụ hoặc thiết bị. Định dạng của một bộ lọc như sau:
Sẽ không có khoảng trắng giữa dấu : và giá trị. Nếu bạn sử dụng giá trị có khoảng trắng, bạn cần sử dụng với dấu ngoặc kép. Ví dụ:
Một vài bộ lọc cho phép bạn xác định các nhiều giá trị khác nhau được phân tách bởi dấu phẩy. Ví dụ, để tìm kiếm hai cổng 21 và 22.
Bộ lọc cũng có thể được sử dụng để loại trừ kết quả bằng cách thêm dấu trừ “-“ vào bộ lọc. Ví dụ, bộ lọc dưới đây sẽ trả về tất cả các thiết bị không được đặt ở san francisco:
Dưới đây là tất cả các bộ lọc mà Shodan hỗ trợ:
Theo mặc định, truy vấn tìm kiếm sẽ xem xét dữ liệu được thu thập trong vòng 30. Bạn cũng có thể tải về hoặc đưa ra báo cáo về các truy vấn.
Ngoài chức năng tìm kiếm, shodan còn có một chức năng gọi là Shodan Maps cho phép hiển thị kết quả một cách trực quan thay vì chỉ là kết quả bằng văn bản. Nó hiển thị tối đa 1.000 kết quả cùng một lúc và khi bạn phóng to/thu nhỏ Maps sẽ điều chỉnh truy vấn tìm kiếm để chỉ hiển thị kết quả cho khu vực bạn đang quan tâm.
Thêm nữa, Shodan Exploits (https://exploits.shodan.io/) thu thập các lỗ hổng và khai thác từ CVE, Exploit DB và Metasploit. Theo mặc định, Exploits sẽ tìm kiếm toàn bộ thông tin khai thác có sẵn bao gồm cả siêu dữ liệu.
Các bộ lọc khả dụng cho Shodan Exploits bao gồm:
Chức năng cuối cùng mình muốn giới thiệu trong Shodan đó là Shodan Images (https://images.shodan.io/). Shodan thu thập ảnh chụp màn hình cho nhiều dịch vụ khác nhau.
Các bộ lọc mà Images hỗ trợ tương tự như các bộ lọc trong Shodan. Các dịch vụ Images hỗ trợ bao gồm:
- VNC
- Remote Desktop (RDP)
- RTSP
- Webcams
- X Windows