Βιβλιοθήκη ανιχνευτώνΕκτέλεση ρύθμισης αποθετηρίου

Εκτέλεση ρύθμισης αποθετηρίου

Το checkout αναφέρει ένα πρόγραμμα.

Εντοπίστε εκτελέσιμη ρύθμιση που μια κανονική κλήση εργαλείου μπορεί να αποκρύπτει.

Δείτε το πρόβλημα. Κατανοήστε το εύρημα.

Αγγλική αφήγηση με υπότιτλους.

Πώς παραβλέπεται

Ο agent εκτελεί συνηθισμένη εντολή ανάπτυξης. Όμως η ρύθμιση του αποθετηρίου δείχνει σε κώδικα δικής του. Η επίβλεψη μόνο του ορατού ονόματος εργαλείου μπορεί να παραβλέψει τη ρύθμιση που αλλάζει αυτό που συμβαίνει από κάτω.

Ένα checkout μπορεί να κατευθύνει το Git προς hooks στο working tree, να ρυθμίσει παραμέτρους με τιμές εντολών ή να συμπεριλάβει εργασίες επεξεργαστή που εκτελούνται στο άνοιγμα φακέλου. Αυτά τα αρχεία αξίζουν αναθεώρηση πριν αντιμετωπίσετε τον χώρο εργασίας ως παθητική συλλογή πηγαίου κώδικα.

Τι ανιχνεύει το ClawMetry

Το ClawMetry σαρώνει υποστηριζόμενες ρυθμίσεις χώρου εργασίας για παραμέτρους σχετικές με εκτέλεση. Αναφέρει το σχετικό κλειδί ή πηγή ρύθμισης, χρησιμοποιώντας γνωστά έγκυρα σχήματα εντολών για να μειώσει τον θόρυβο. Αυτός ο ανιχνευτής διαβάζει το ίδιο το checkout, αντί να βασίζεται μόνο στη ροή εργαλείων agent.

Η διαφορά που αλλάζει το εύρημα

Παράδειγμα ενεργοποίησης

hooksPath = .githooks

Κρίσιμο εύρημα

Αθόρυβη σύγκριση

Προεπιλεγμένη διαδρομή .git/hooks

Κανένα εύρημα για αυτόν τον ανιχνευτή.

Το ελεγχόμενο παράδειγμα δείχνει τα Git hooks σε κατάλογο που αποστέλλεται στο working tree και παράγει κρίσιμο εύρημα. Διαδρομή hooks που δείχνει στον προεπιλεγμένο κατάλογο Git hooks παραμένει ήσυχη. Το εύρημα αναγνωρίζει ρύθμιση που αναφέρει κώδικα, όχι καταγεγραμμένη εκτέλεση αυτού του κώδικα.

Εξετάστε το αποτέλεσμα ανιχνευτή
{
  "kind": "repo_config_exec",
  "severity": "critical",
  "evidence": {
    "keys": [
      "core.hookspath"
    ],
    "hits": [
      {
        "key": "core.hookspath",
        "command": ".githooks",
        "line": 2,
        "manager": null
      }
    ],
    "config": ".git/config",
    "observed": "repository_config"
  }
}
Λήψη εισόδων και πλήρων αποτελεσμάτων (JSON)
Πώς ελέγχθηκε το παράδειγμα

Αυτά τα παραδείγματα αξιολογούν τον δημοσιευμένο ανιχνευτή με δεδομένα συμβάντων ή αναλώσιμα αρχεία ρυθμίσεων. Τα βίντεο απεικονίζουν αυτές τις συμπεριφορές. Δεν αποτελούν εγγραφές ζωντανών agents ή της διεπαφής προϊόντος. Καμία εντολή στα παραδείγματα δεν εκτελέστηκε.

Το αποτέλεσμα καθορίζει τη συμπεριφορά για αυτές τις εισόδους. Δεν καθορίζει λήψη δεδομένων runtime, πρόληψη ή πραγματικό συμβιβασμό. Εξετάστε τη σταθερή σύμβαση πηγής.

Τι να ελέγξετε στη συνέχεια

Εξετάστε τη ρύθμιση, τα αναφερόμενα αρχεία και την προέλευση του checkout. Αποφασίστε αν αυτά τα προγράμματα αναμένονται πριν επιτρέψετε συνηθισμένες εργασίες ανάπτυξης. Αν ένα εργαλείο εκτελέστηκε ήδη, διερευνήστε τις επιπτώσεις του ξεχωριστά χρησιμοποιώντας τις διαθέσιμες αποδείξεις στο μηχάνημα.

  1. Εξετάστε το κλειδί ρύθμισης
  2. Εξετάστε τον αναφερόμενο κώδικα
  3. Ελέγξτε την προέλευση του αποθετηρίου

Τι καθορίζει αυτό το σήμα

Ο σαρωτής αναφέρει ρύθμιση, όχι εκτέλεση. Δεν αποδεικνύει ότι εκτελέστηκε ρυθμισμένο πρόγραμμα ή ότι ο δημιουργός είχε κακή πρόθεση.

Κρατήστε τις σημαντικές στιγμές ορατές.

Παρακολουθήστε τη δραστηριότητα agent, εξετάστε τα ευρήματα και αποφασίστε τι χρειάζεται την προσοχή σας.