Thư viện detectorScript cài đặt package

Script cài đặt package

Cài package. Chạy script của nó.

Xem hook vòng đời có thể thực thi trước khi bỏ qua chúng trong manifest.

Thấy vấn đề. Hiểu kết quả phát hiện.

Giọng kể tiếng Anh có phụ đề.

Tại sao dễ bị bỏ qua

Tác nhân của bạn cài đặt một dependency. Manifest package cũng đặt tên một script chạy trong quá trình cài đặt. Những gì trông như cài đặt có thể bao gồm việc thực thi mã cần được xem xét riêng.

Một dự án có thể dùng hook cài đặt cho các bước build hoàn toàn thông thường. Nó cũng có thể chứa một lệnh không mong đợi. Điểm quan trọng là script nằm trong manifest, nơi nó có thể bị bỏ qua nếu bạn chỉ kiểm tra lệnh cài đặt cấp cao nhất.

ClawMetry phát hiện gì

ClawMetry quét manifest package workspace để tìm hook vòng đời cài đặt được hỗ trợ. Nó tạo ra cảnh báo thực thi manifest package và xác định hook. Trình quét đọc tệp; nó không thực thi lệnh mà nó tìm thấy.

Sự khác biệt thay đổi kết quả phát hiện

Ví dụ kích hoạt

postinstall: node build.js

Phát hiện cảnh báo

So sánh im lặng

test: node build.js

Không có kết quả phát hiện cho detector này.

Ví dụ được kiểm tra có script postinstall đặt tên một chương trình build và tạo ra cảnh báo. Đặt cùng chương trình đó dưới script test thông thường, detector này giữ im lặng. Sự khác biệt là khi nào manifest nói chương trình sẽ chạy.

Kiểm tra kết quả detector
{
  "kind": "package_manifest_exec",
  "severity": "warning",
  "evidence": {
    "hooks": [
      "postinstall"
    ],
    "hits": [
      {
        "hook": "postinstall",
        "command": "node build.js",
        "tool": null,
        "alarm": null
      }
    ],
    "manifest": "package.json",
    "tools": [],
    "observed": "package_manifest"
  }
}
Tải đầu vào và kết quả đầy đủ (JSON)
Cách ví dụ được kiểm tra

Các ví dụ này đánh giá detector đã xuất bản bằng dữ liệu sự kiện được soạn thảo hoặc tệp cấu hình dùng một lần. Video minh họa các hành vi đó. Đây không phải là bản ghi của agent thực hoặc giao diện sản phẩm. Không có lệnh nào trong ví dụ được thực thi.

Kết quả xác lập hành vi cho các đầu vào này. Nó không xác lập việc thu thập runtime, ngăn chặn hay một sự xâm phạm thực sự. Kiểm tra hợp đồng nguồn đã ghim.

Những gì cần kiểm tra tiếp theo

Đọc lệnh hook và chương trình nó tham chiếu. Kiểm tra xem hành vi cài đặt đó có thuộc dự án không và nguồn dependency có đáng tin cậy không. Nếu cài đặt đã xảy ra, hãy xem xét các tác động thực tế riêng biệt trước khi chấp nhận môi trường.

  1. Đọc hook vòng đời
  2. Kiểm tra chương trình được tham chiếu
  3. Xem xét hành vi cài đặt dự kiến

Tín hiệu này xác lập điều gì

Hook cài đặt không tự động là thù địch. Phát hiện này báo cáo mục trong manifest, không phải bằng chứng rằng cài đặt hoặc thực thi đã xảy ra.

Giữ những khoảnh khắc quan trọng luôn hiển thị.

Theo dõi hoạt động agent, kiểm tra kết quả phát hiện và quyết định điều gì cần sự chú ý của bạn.