# composer audit: ivverifikaw id-dipendenzi għal vulnerabbiltajiet

> B'composer audit tivverifikaw id-dipendenzi ta' PHP għal vulnerabbiltajiet: kmandi, integrazzjoni f'CI u għaliex PHP innifsu jrid jiġi ppatchjat apparti.

Sors: https://phpsos.de/mt/ratgeber/composer-abhaengigkeiten-pruefen/  
Stat: 25/10/2026  
Fornitur: PHP SOS, Għajnuna ta' emerġenza għal PHP u sigurtà tas-server. Għajnuna immedjata fuq WhatsApp: https://wa.me/491736494914?text=Bongu%20PHP%20SOS%2C%20g%C4%A7andna%20b%C5%BConn%20g%C4%A7ajnuna%20bis-server%20tal-PHP%20tag%C4%A7na.%20Kumpanija%3A%20%E2%80%A6%20Websajt%3A%20%E2%80%A6

**Fil-qosor:** `composer audit` iqabbel il-pakketti tal-proġett tagħkom ta' PHP ma' avviżi tas-sigurtà magħrufa u juri l-verżjonijiet affettwati. Esegwixxu l-kmand f'kull build u regolarment fuq l-istat tal-produzzjoni. Importanti wara PHP2Shell: il-verifika tkopri libreriji, mhux l-interpretatur ta' PHP innifsu.

## Għaliex id-dipendenzi jeħtieġu attenzjoni propju issa

L-applikazzjonijiet moderni ta' PHP jikkonsistu l-aktar minn kodiċi barrani. Ħanut bbażat fuq Symfony jew portal b'Laravel jġib malajr diversi għexieren sa mijiet ta' pakketti, ħafna minnhom indirettament permezz ta' pakketti oħra. Kull waħda minn dawn il-libreriji tista' tinkludi vulnerabbiltà. L-OWASP Top 10 għalhekk jelenkaw komponenti skaduti u vulnerabbli bħala kategorija separata ta' riskju.

F'Ottubru 2026 PHP2Shell wera kemm malajr vulnerabbiltà kritika tinfirex. Iż-żewġ vulnerabbiltajiet CVE-2026-109618 u CVE-2026-109619 jolqtu lil PHP innifsu u mhux pakketti ta' Composer. Ħafna timijiet, madankollu, f'dawn il-jiem ivverifikaw il-ktajjen kollha tagħhom u skoprew li fil-fatt ma jafux eżattament l-istat tad-dipendenzi tagħhom.

Din il-lakuna fil-ħarsa ġenerali tista' tingħalaq b'ftit sforz. Composer jġib l-għodda xierqa diġà fil-verżjonijiet attwali.

## X'jivverifika composer audit u x'ma jivverifikax

Il-kmand jaqra l-pakketti installati jew il-fajl lock u jistaqsi dwar avviżi tas-sigurtà magħrufa għal dawn il-pakketti. Għal kull sejba juri l-pakkett, il-firxa tal-verżjonijiet affettwati, is-severità, l-identifikatur tal-avviż u link għad-deskrizzjoni.

| Livell | Ivverifikat minn composer audit? | Kif tivverifikaw minflok |
|---|---|---|
| Pakketti Composer fil-proġett | iva | composer audit |
| Interpretatur ta' PHP (pereżempju PHP2Shell) | le | stat tal-pakkett, konferma tal-hoster |
| Estensjonijiet ta' PHP mis-sistema | le | amministrazzjoni tal-pakketti tad-distribuzzjoni |
| Pakketti JavaScript fil-frontend | le | għodda tal-maniġer tal-pakketti rispettiv |
| Kodiċi proprju tal-applikazzjoni | le | code review, awdit tas-sigurtà |

Il-kmand iqis ukoll dipendenzi indiretti, jiġifieri pakketti li qatt ma ordnajtu intom stess, imma jiġu ma' pakketti oħra. Propju hemmhekk il-vulnerabbiltajiet spiss jibqgħu mhux innotati, għax ħadd fit-tim ma jaf dawn il-pakketti. Verżjonijiet ġodda ta' Composer jindikaw ukoll pakketti li l-awturi tagħhom immarkaw bħala abbandunati. Pakketti bħal dawn ġeneralment ma jirċevux aktar korrezzjonijiet u għandhom jiġu sostitwiti.

Riżultat nadif għalhekk ifisser biss li għall-verżjonijiet installati tal-pakketti ma jeżisti l-ebda avviż magħruf. Vulnerabbiltajiet mhux magħrufa u żbalji fil-kodiċi proprju l-għodda ma ssibhomx. Kif tivverifikaw intom stess l-istat ta' PHP tiddeskrivi l-gwida [Kif tivverifikaw sewwa l-verżjoni ta' PHP u l-istat tal-patches](https://phpsos.de/mt/php2shell/php-version-pruefen/).

## Esegwixxu composer audit u aqraw ir-riżultati

Fid-direttorju tal-proġett kmand wieħed huwa biżżejjed. Il-varjanti jvarjaw f'dak li jiġi vverifikat u kif jinħareġ ir-riżultat.

```bash
# Ivverifikaw il-pakketti installati
composer audit

# Ivverifikaw biss il-fajl lock, pereżempju fil-build mingħajr pakketti installati
composer audit --locked

# Aqbżu d-dipendenzi tal-iżvilupp (stat bħal fuq is-server)
composer audit --no-dev

# Output li jinqara mill-magna għall-evalwazzjoni jew għas-sistema tat-tickets
composer audit --format=json > audit-$(date +%F).json
```

Jekk il-kmand isib vulnerabbiltajiet, jispiċċa b'kodiċi ta' żball. Dan huwa intenzjonat, għax hekk build awtomatizzat jieqaf. Evalwaw kull sejba: il-pakkett jintuża fuq is-server, il-funzjoni affettwata tintuża, teżisti verżjoni rranġata?

```bash
# Liema dipendenzi diretti huma skaduti?
composer outdated --direct
# Għaliex huwa installat pakkett speċifiku?
composer why vendor/paket
# Aġġornaw b'mod immirat, bid-dipendenzi
composer update vendor/paket --with-dependencies
```

Ittestjaw kull aġġornament f'ambjent staging. Aġġornamenti tas-sigurtà fi ħdan l-istess verżjoni ewlenija ġeneralment ma jikkawżaw problemi; verżjoni ewlenija ġdida, min-naħa l-oħra, tista' teħtieġ adattamenti fil-kodiċi.

## Awtomatizzaw il-verifika

Sejħa waħda tgħin ftit, għax vulnerabbiltajiet ġodda jsiru magħrufa kontinwament. Għalhekk inkludu `composer audit` f'żewġ postijiet: fil-pipeline tal-build f'kull bidla u f'verifika regolari tal-istat tal-produzzjoni, anke jekk il-kodiċi ma jinbidilx.

Skript sempliċi għal tħaddim ta' kuljum fuq is-server tal-build jew tal-verifika jista' jidher hekk:

```bash
#!/bin/sh
# Awdit ta' kuljum tal-istat mogħti (adattaw il-mogħdija)
cd /srv/build/meine-anwendung || exit 1
if ! composer audit --locked --no-dev --format=plain > /var/log/composer-audit.log 2>&1; then
  logger -t composer-audit "Lücken in meine-anwendung gefunden, siehe /var/log/composer-audit.log"
fi
```

Għaddu l-messaġġ mil-log tas-sistema lis-sistema ta' sorveljanza tagħkom, lill-kaxxa postali interna jew lis-sistema tat-tickets. Importanti li xi ħadd ikun responsabbli milli jevalwa l-messaġġi. Awdit li t-twissijiet tiegħu ħadd ma jaqra ma jipproteġi xejn.

> **Suġġeriment:**
> Iffissaw fi `composer.json` taħt `config.platform.php` il-verżjoni ta' PHP li taħdem fuq is-server. Imbagħad Composer jirrisolvi biss pakketti li jaqblu ma' dan l-istat, u `composer check-platform-reqs` juri d-devjazzjonijiet.

## Ikkunsinjaw b'mod nadif: deployment mingħajr effetti sekondarji

Anke t-triq lejn is-server taffettwa s-sigurtà. Xi regoli bażiċi ppruvaw ruħhom:

- Inkludu `composer.lock` fir-repository u fuq is-server esegwixxu biss `composer install`, qatt `composer update`.
- Installaw b'`--no-dev`, biex għodod tat-test u tad-debug ma jispiċċawx fuq is-server tal-produzzjoni.
- Żommu l-folder `vendor/` barra mid-direttorju għeruq tal-web, biex ma jintlaħaqx direttament permezz ta' URL.
- Esegwixxu `composer validate` fil-build biex tagħrfu kmieni dikjarazzjonijiet żbaljati jew kontradittorji.

```bash
composer validate --strict
composer install --no-dev --prefer-dist --classmap-authoritative --no-interaction
```

Oqogħdu attenti wkoll għall-appoġġ tal-verżjoni ta' PHP nnifisha. Il-libreriji jippreżupponu dejjem iktar fergħat attwali ta' PHP. Min għadu jibqa' ma' PHP 8.1 jew eqdem ma jirċevix aktar aġġornamenti uffiċjali għal PHP innifsu u ħafna drabi ma jistax aktar jinstalla verżjonijiet ġodda tal-pakketti b'korrezzjonijiet tas-sigurtà. L-ippjanar dwar dan jiddeskrivih il-gwida [PHP End of Life: ir-riskji ta' verżjonijiet skaduti](https://phpsos.de/mt/ratgeber/php-end-of-life-risiken/). Tagħrif speċifiku għall-framework issibu taħt [Kif tassiguraw applikazzjonijiet Laravel](https://phpsos.de/mt/plattformen/laravel/).

## Kif tgħin PHP SOS b'mod konkret?

- Nirreġistraw l-istat tad-dipendenzi kollha u nevalwaw is-sejbiet skont l-użu attwali.
- Nistabbilixxu verifiki awtomatizzati fil-build u fit-tħaddim, b'responsabbiltà ċara għas-sejbiet.
- Nippjanaw u nittestjaw l-aġġornamenti, anke meta verżjonijiet ewlenin ġodda jeħtieġu adattamenti.
- Fuq talba nivverifikaw ukoll il-kodiċi u l-konfigurazzjoni proprji, fejn l-ebda għodda awtomatika ma tħares.

Verifika minn partijiet terzi tiddeskrivi s-servizz [Awdit tas-sigurtà u test ta' penetrazzjoni](https://phpsos.de/mt/leistungen/sicherheitsaudit-penetrationstest/).


## Mistoqsijiet frekwenti

**composer audit isib ukoll PHP2Shell?**  
Le. composer audit jivverifika l-pakketti fil-proġett tagħkom, mhux l-interpretatur ta' PHP fuq is-server. PHP2Shell jinsab f'PHP innifsu u jiġi rranġat biss b'aġġornament ta' PHP u restart tal-proċessi kollha ta' PHP.

**composer.lock jeħtieġ jidħol fir-repository?**  
Għal applikazzjonijiet, iva. Il-fajl lock jiffissa liema verżjonijiet eżatti huma installati. Biss hekk composer audit jivverifika l-istat li verament jaħdem fuq is-server, u kull deployment jinstalla l-istess verżjonijiet.

**X'nagħmlu jekk għal pakkett affettwat ma jeżisti l-ebda aġġornament?**  
Ivverifikaw jekk il-proġett tagħkom jużax il-funzjoni affettwata fil-fatt, u iddokumentaw il-valutazzjoni. Jekk ma jeżisti l-ebda fix, jistgħu jiġu kkunsidrati pakkett alternattiv, patch proprju jew protezzjoni temporanja fil-livell tas-server.

**Kemm-il darba għandi nesegwixxi composer audit?**  
F'kull build u addizzjonalment regolarment, pereżempju kuljum, anke mingħajr bidliet fil-kodiċi. Vulnerabbiltajiet ġodda jiġu rrapportati kontinwament, u stat li lbieraħ kien nadif jista' llum ikun affettwat.

## Sorsi

- [OWASP Top 10](https://owasp.org/www-project-top-ten/)
- [OWASP Cheat Sheet Series](https://cheatsheetseries.owasp.org/)
- [php.net: Avviżi tas-sigurtà](https://www.php.net/)
- [php.net: Verżjonijiet appoġġati](https://www.php.net/supported-versions.php)
