Chương trình an toàn cho internet công cộng

Bảo vệ internet.

NullSquare phát hiện những cấu hình bảo mật sai hiển nhiên và nhìn thấy được công khai, rồi thông báo riêng cho tổ chức chịu trách nhiệm. Cũng chương trình đó nghiên cứu mã nguồn mở công khai, tìm những vấn đề chúng tôi có thể tái hiện, vá và chứng minh.

Trên toàn bộ các đợt làm việc của NullSquare
11,179
Rủi ro đã phát hiện
6,742
Đã kiểm chứng
449
Nghiêm trọng và cao
152
CVE riêng biệt

Vì sao bạn nhận được tin nhắn

Một agent của chúng tôi đã tìm thấy thứ đang phơi ra internet công cộng trên một tên miền thuộc tổ chức của bạn. Chúng tôi viết riêng cho bạn để đội của bạn xem xét và đóng lại. Chúng tôi không nói với ai khác và không công bố điều đó.

Chương trình kiểm tra những gì

Chương trình chỉ nhìn vào những gì vốn đã thấy được từ internet công cộng:

  • Một dịch vụ với tới được từ internet trong khi lẽ ra không nên.
  • Một giao diện quản trị mở cho bất kỳ ai tìm ra nó.
  • Một công cụ phát triển hay gỡ lỗi bị bỏ chạy công khai.
  • Một danh sách thư mục đang phục vụ những tệp lẽ ra không bao giờ được phục vụ.
  • Một trang triển khai mặc định vẫn còn nằm trên host đang chạy.
  • Một cấu hình sai tương tự mà ai cũng có thể tìm ra theo đúng cách chúng tôi đã tìm.

Agent chỉ lấy vừa đủ để gọi tên tên miền hoặc dịch vụ bị ảnh hưởng và nói đó là loại vấn đề gì. Nó không đi sâu hơn.

Nghiên cứu mã nguồn mở

Một thông báo làm nhỏ lại bề mặt tấn công đang phơi ra. Nó không sửa phần mã bên dưới. Vì vậy chương trình cũng làm việc tại gốc: chúng tôi chọn từng repository mã nguồn mở công khai một, rồi nghiên cứu nó trong một sandbox dùng một lần, tìm một vấn đề bảo mật mà chúng tôi chứng minh được.

Một agent khẳng định điều gì đó có lỗ hổng thì chưa phải là rủi ro đã xác nhận, và kết quả của máy quét cũng vậy. Không gì được tính cho tới khi nó tái hiện được, bản vá đứng vững, và cả hai được ghi lại đủ rõ để người khác chạy lại.

  1. 01GhimRepository được clone tại đúng một commit vào một sandbox dùng một lần, không chứa thông tin đăng nhập production.
  2. 02Lấy mốcBản build và các bài test của chính dự án được chạy trước mọi nghiên cứu, để biết cái gì vốn đã đạt.
  3. 03Nghiên cứuAgent đọc và chạy thử mã bên trong sandbox, trên đúng bản revision đã ghim đó.
  4. 04Tái hiệnMột ứng viên chỉ được tính khi nó tái hiện được từ một bản checkout sạch, không sót trạng thái nào từ lúc dò tìm.
  5. 05Vá lỗiBản sửa hợp lý nhỏ nhất, kèm một bài test hồi quy ở nơi dự án cho phép làm điều đó.
  6. 06Kiểm chứngQuy trình tái hiện được chạy lại trước và sau bản vá, và các kiểm tra của chính dự án cũng chạy lại.
  7. 07Duyệt lạiMột con người chấp nhận hoặc bác bỏ kết quả. Không gì rời khỏi phòng thí nghiệm một cách tự động.

Không bao giờ xoá, bỏ qua hay làm yếu các bài test để tuyên bố là đạt. Khi công việc chưa vượt được ngưỡng, câu trả lời là: không có rủi ro nào được xác nhận — ghi lại cùng với những gì đã thử và những gì không kiểm tra được. Dù thế nào, lần chạy vẫn cho ra cùng một gói:

Gói bằng chứng

Nội bộ, do một con người duyệt, và không bao giờ được chính phòng thí nghiệm công bố.

summary.md
Đã thử những gì, tìm thấy những gì, và những gì không kiểm tra được.
risk.md
Nguyên nhân gốc, đường mã bị ảnh hưởng, và một đánh giá trung thực về độ tin cậy.
reproduction/
Câu lệnh và bằng chứng quan sát được trên bản revision chưa vá.
patch.diff
Bản sửa tối thiểu, gắn với commit đã ghim.
tests/
Một bài test hồi quy trượt trước khi vá và đạt sau khi vá.
verification.md
Kết quả trước và sau, cùng với đầu ra của build, test và lint.
run-metadata.json
Repository, commit chính xác, mô hình, thời lượng và chi phí.

Chương trình không làm những gì

  • Không đoán mật khẩu, không thử thông tin đăng nhập, không vượt qua xác thực.
  • Không khai thác, không kiểm thử phá huỷ, không leo thang đặc quyền, không xâu chuỗi lỗ hổng.
  • Không thu thập tệp riêng tư, hồ sơ khách hàng, mã nguồn hay nội dung phía sau đăng nhập.
  • Không công bố, không bán, không lập chỉ mục công khai những vấn đề đã tìm thấy.
  • Không kiểm thử môi trường đang chạy hay được host trong quá trình nghiên cứu. Công việc chỉ diễn ra trên bản clone cục bộ.
  • Không fork, không nhánh, không commit, không push, không pull request, không issue. Phòng thí nghiệm không có quyền ghi vào repository.
  • Phòng thí nghiệm không tự liên hệ maintainer, không phát hành advisory, không xin CVE, không nộp bounty.
  • Không quét hàng loạt các nơi lưu mã công khai. Repository được chọn từng cái một, có chủ đích.

Quyền riêng tư và xử lý dữ liệu

Thông báo được gửi thẳng tới một đầu mối liên hệ công khai phù hợp của tên miền. Phiên phát hiện bị huỷ sau khi tin nhắn được gửi đi, và NullSquare không duy trì một cơ sở dữ liệu tra cứu được về các rủi ro từ chương trình này.

Các lần chạy nghiên cứu chỉ làm việc trên mã nguồn công khai. Sandbox bị huỷ sau khi chạy, và gói bằng chứng ở lại nội bộ. Nếu một kết quả có bao giờ được mang tới maintainer, đó là một quyết định riêng biệt và có chủ đích do một con người đưa ra.

Các bản ghi tối thiểu về gửi e-mail, chống lạm dụng và từ chối nhận tin có thể được lưu riêng. Những bản ghi này không chứa dữ liệu mục tiêu đã sao chép hay đầu ra khai thác.

Xác minh hoặc trả lời một thông báo

Một tin nhắn «Secure the internet» hợp lệ sẽ không bao giờ hỏi thông tin đăng nhập, thanh toán, khoá API hay quyền truy cập vào hệ thống của bạn. Bạn có thể trả lời tin nhắn, xin ngừng nhận, sửa đầu mối liên hệ, hoặc xác minh nguồn gốc trực tiếp với NullSquare.

null@nullsquare.net
NullSquareThông báo riêng. Không công bố công khai.