ΠΠΎ-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡ, endoint Π½Π° https://registry.npmjs.org/-/npm/v1/security/advisories ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ Π±Π΅Π· ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ.
Π Π°Π½ΡΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΠΊΠ»ΡΡΠ°Π»ΠΈ Β«ZΒ» Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° ΡΠ°ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅ΠΏΠ΅ΡΡ Π±ΡΠ» ΡΠ΄Π°Π»Π΅Π½ Π±Π΅Π· ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, Π½Π°ΡΡΡΠ°Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ DependencyTrack.
Π―Π²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΡΠΈΡ Β«Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉΒ» ΠΈΠ»ΠΈ ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΡΠ½ΠΎΠ²Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°?
ΠΡΡΠ³ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² NPM Advisory API Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎΠ»Π΅ΠΉ Β«ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉΒ» ΠΈ Β«ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉΒ», ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°ΡΡ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ API Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Π±Π΅Π· ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±Ρ ΠΎΠ΄Π½ΡΡ ΠΏΡΡΠ΅ΠΉ.
cc @evilpacket
@ljharb ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΏΠΈΠ½Π³. Π‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡΠΎΡ API Π½Π΅ Π±ΡΠ» Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ°Π½Π°Π», ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ npm cli (Π΄Π»Ρ Π°ΡΠ΄ΠΈΡΠ° npm) ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡ. Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡΠΎ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΈ ΠΌΠ½Π΅ ΡΠΎΠΎΠ±ΡΠΈΠ»ΠΈ, ΡΡΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, Π±ΡΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π΅Π³ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ. ΠΠΆΠΈΠ΄Π°Π΅ΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°.
Π― ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²Π·Π³Π»ΡΠ½ΡΠ» Π½Π° Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΉ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΠΈ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π΄Π°ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌΠΈ, ΠΊΠ°ΠΊ Π²Ρ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΠ΅?
{
"total": 1348,
"objects": [
{
"id": 1518,
"created": "2020-04-30T18:19:09.542Z",
"updated": "2020-04-30T18:19:09.542Z",
"deleted": null,
ΠΡΠ΅ ΡΠ°Π· Ρ ΠΎΡΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΡΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ ΡΠΎΡΠΊΠΈ Π½Π΅Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ»ΡΡΠ°ΡΠΈΠ²Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ GitHub Advisory, Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΏΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Creative Commons Attribution 4.0.
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
@ljharb ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΏΠΈΠ½Π³. Π‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡΠΎΡ API Π½Π΅ Π±ΡΠ» Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ°Π½Π°Π», ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ npm cli (Π΄Π»Ρ Π°ΡΠ΄ΠΈΡΠ° npm) ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡ. Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡΠΎ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΈ ΠΌΠ½Π΅ ΡΠΎΠΎΠ±ΡΠΈΠ»ΠΈ, ΡΡΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, Π±ΡΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π΅Π³ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ. ΠΠΆΠΈΠ΄Π°Π΅ΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°.