Come verificare che i progetti di Ruby on Rails siano agli attuali livelli di patch?

1

Ho alcuni sistemi Ruby on Rails con Ubuntu 14.04LTS. La versione Ubuntu di Ruby supportata è 1.9.1 ma gli sviluppatori usano un Gemfile e Bundler che (AFAIK) installa Ruby (e gems) out-of-band dagli aggiornamenti del SO per consentire a diversi progetti di utilizzare diversi stack di Rails.

Credo che la versione attuale di Ruby in uso sia la 2.3.5, ma non puoi dirlo dalle utility del pacchetto di Ubuntu. È stato così per anni, ma le recenti politiche di sicurezza ci spingono nella direzione di dimostrare che siamo in cima a questi aggiornamenti e non posso semplicemente controllare una casella che dice "che gli sviluppatori web dicono che è OK" .

Ho provato bundle show e per ottenere un elenco di gemme di Ruby in uso nel progetto corrente (directory), ma ogni singolo server può avere diversi rami di progetti, con molte diverse versioine di gemme in uso in ogni ramo . Non potrei dirti con certezza quali sistemi / progetti sono aggiornati con i livelli di patch attuali.

Gli sviluppatori non si preoccupano veramente di essere coinvolti con gli aspetti di sicurezza, ma se prendo alcuni dati concreti per gestire e dico "Questo sistema sta eseguendo la versione vulnerabile XX Questo è il CVE. / em> il mio lavoro è finito.

C'è un modo più semplice per ottenere le attuali versioni di Ruby / Bundler / Gems diverse da alcune brutte find /var/www -name Gemfile -exec ... shell-fu?

    
posta Server Fault 06.04.2018 - 17:56
fonte

1 risposta

-1

Quello che descrivi è un incubo della sicurezza in sé stesso - più ambienti con versioni sconosciute (in modo efficace quindi non documentate), senza alcun registro centrale che cosa aggiornare se necessario.

Quindi, questo è di per sé degno di segnalazione.

Ora, il tuo lavoro diventa una mappa di tutte le installazioni; esegui i tuoi comandi su ciascuno di questi (automaticamente), e fai un rapporto da questo oltre ad integrarlo in qualsiasi infrastruttura per la gestione del server (vagabondo? Ansible? Puppet? ...) Ragazzi. Congrats!

    
risposta data 06.04.2018 - 18:06
fonte

Leggi altre domande sui tag