Library ng mga detectorPagpapatakbo ng repository config

Pagpapatakbo ng repository config

Pinangalanan ng checkout ang isang programa.

Hanapin ang executable na configuration na maaaring itago ng karaniwang tawag ng tool.

Tingnan ang problema. Unawain ang natuklasan.

Ingles na pagsasalaysay na may mga subtitle.

Paano ito nababalewalaan

Nagpapatakbo ang ahente ng karaniwang command sa pagbuo. Ngunit ang repository configuration ay nagtuturo sa sariling code nito. Ang pagsusuri lamang sa nakikitang pangalan ng tool ay maaaring mapalampas ang configuration na nagbabago ng nangyayari sa ilalim.

Ang isang checkout ay maaaring idirekta ang Git sa mga hook sa working tree, mag-configure ng mga setting na may command, o magsama ng mga gawain ng editor na tumatakbo kapag binuksan ang folder. Ang mga file na iyon ay karapat-dapat suriin bago mo tratuhin ang workspace bilang passive na koleksyon ng source code.

Ano ang natutukoy ng ClawMetry

Sinusuri ng ClawMetry ang suportadong workspace configuration para sa mga setting na may kaugnayan sa pagpapatakbo. Iniuulat nito ang kaugnay na key o pinagmulan ng configuration, gamit ang mga kilalang maayos na anyo ng command upang mabawasan ang ingay. Binabasa ng detector na ito ang checkout mismo, sa halip na umasa lamang sa stream ng tool ng ahente.

Ang pagkakaibang nagbabago ng natuklasan

Halimbawa ng pag-trigger

hooksPath = .githooks

Kritikal na natuklasan

Tahimik na paghahambing

Default na .git/hooks path

Walang natuklasan para sa detector na ito.

Ang sinusuring halimbawa ay nagtuturo ng Git hooks sa isang direktoryo na naka-ship sa working tree at gumagawa ng kritikal na natuklasan. Ang hooks path na nagtuturo sa default na Git hooks directory ay nananatiling tahimik. Tinutukoy ng natuklasan ang configuration na nagngangalan ng code, hindi isang naitalaang pagpapatakbo ng code na iyon.

Suriin ang resulta ng detector
{
  "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"
  }
}
I-download ang mga input at kumpletong resulta (JSON)
Paano sinuri ang halimbawa

Sinusuri ng mga halimbawang ito ang inilathala na detector gamit ang isinulat na data ng kaganapan o mga configuration file na maaaring itapon. Isinasalarawan ng mga video ang mga gawi na iyon. Hindi ito mga recording ng mga live na ahente o ng interface ng produkto. Walang utos sa mga halimbawa ang naisakatuparan.

Itinatag ng resulta ang gawi para sa mga input na ito. Hindi nito itinatag ang runtime ingestion, pag-iwas o tunay na kompromiso. Suriin ang nakalagay na source contract.

Ano ang susunod na titingnan

Suriin ang setting, ang mga sinangguniyang file at ang pinagmulan ng checkout. Magpasya kung inaasahan ang mga programa na iyon bago payagan ang karaniwang mga operasyon sa pagbuo. Kung natakbo na ang isang tool, imbestigahan ang mga epekto nito nang hiwalay gamit ang mga patunay na makukuha sa makina.

  1. Suriin ang config key
  2. Suriin ang sinangguniyang code
  3. Suriin ang pinagmulan ng repository

Ano ang itinatag ng signal na ito

Iniuulat ng scanner ang configuration, hindi pagpapatakbo. Hindi nito pinapatunayan na natakbo ang isang na-configure na programa o na nais ng may-akda ng pinsala.

Panatilihing nakikita ang mahahalagang sandali.

Subaybayan ang aktibidad ng ahente, suriin ang mga natuklasan at magpasya kung ano ang nangangailangan ng iyong atensyon.