Qual è il modo corretto di agire quando si trovano progetti di software libero i cui eseguibili stanno diffondendo un virus


19
Oggi ho trovato un progetto GPL su SourceForge i cui eseguibili stanno diffondendo un virus. Questo fatto è stato sottolineato più volte nelle recensioni del progetto e l'eseguibile infetto è ancora disponibile per il download. Apparentemente, i file eseguibili meno recenti non sono infetti, quindi il progetto stesso non sembra realizzato con scopi maliziosi. Non esiste un modo preferito per contattare sviluppatori e forum per il progetto sono morti. Cosa dovrei fare?

2
Questa domanda è sull'argomento, ma in futuro, se vuoi chiedere se una domanda è sull'argomento, ti preghiamo di utilizzare il meta sito

1
Perché aspettare prima di contattare direttamente SourceForge? Verifica se si tratta di un virus, quindi contattali subito.
Peter Boughton,

1
Le tue modifiche hanno reso questa domanda fuori tema / troppo localizzata . Programmers.SE è per discussioni soggettive o estese su argomenti riguardanti la maggior parte dei programmatori, non per la diagnosi di scansioni antivirus.

@Mark Trapp Sì, stavo pensando come dividerlo in due parti, una per il caso generale e una per questo caso specifico. La seconda parte può essere considerata fuori tema.
AndrejaKo,

Risposte:


26

Se non riesci a metterti in contatto con gli sviluppatori, contatta SourceForge. Segnala il problema, fornisci loro informazioni dettagliate che possono utilizzare per verificare il problema e (probabilmente) lo elimineranno. Sono un sito affidabile e immagino che non vorrebbero essere associati a malware.


Ehi Mason, cosa ne pensi del fatto che tra quando hai pubblicato questa domanda e oggi, la reputazione di SourceForge è precipitata e la proprietà è cambiata di mano (e questo SourceForge ha potenzialmente avuto la sua reputazione risalire lentamente)? Se questa risposta dovesse riflettere il fatto che quando le persone hanno effettivamente chiesto a SourceForge di fare qualcosa al riguardo, non hanno fatto nulla e, a volte, è stato lo stesso SourceForge a essere responsabile della consegna di questi virus, sia attraverso la pubblicità, sia attraverso il proprio intento ?
quando il

@opa Wow, sì, questa è una risposta che non ha invecchiato bene ...
Mason Wheeler

11

Vorrei iniziare inviando un'e-mail al responsabile del progetto e agli sviluppatori.


0

Lo stato dei progetti

I vecchi progetti popolari, non più mantenuti e dimenticati possono spesso essere usati come vettori per diffondere virus se qualcuno è in grado di compromettere l'account e caricare una nuova versione compilata. Lo stesso è stato spesso fatto con i sistemi di aggiornamento automatico, anche peggio perché si consegnano da soli e spesso installano un aggiornamento sui sistemi degli utenti senza che l'utente finale lo sappia.

Possibili azioni da intraprendere

Manutentori e sviluppatori

Puoi provare a contattare lo sviluppatore / i manutentori, ma se è un vecchio progetto è improbabile che rispondano. Se il loro account è stato compromesso, darai loro un avvertimento o lascerai gridare contro un muro.

Piattaforma / Rete di consegna

Potresti avere maggiori possibilità di rimuovere il codice dannoso contattando la piattaforma che ospita il software. Io stesso non ho provato a contattare direttamente una piattaforma come Sourceforge o NPM. La probabilità che tu riceva una risposta è spesso legata alle dimensioni dell'azienda e se è stata monetizzata - se si tratta di uno spettacolo per una persona, allora buona fortuna!

Maggiore è il numero di informazioni che devi verificare per la tua richiesta di rimozione, tanto più probabile e rapido dovrebbe accadere.

La community e la tua voce

Spesso puoi provare i passaggi precedenti e arrivare impotente, ma se sei in grado di lasciare un commento o una recensione sul software, questa potrebbe essere la cosa migliore che puoi fare. Anche se molti utenti finali scaricheranno comunque il software alla cieca o in precedenza si fidano del software.


Extra: Prevenzione recente e futura

Smetti di leggere qui ™ o continua ¯\_(ツ)_/¯

Esisteva un pacchetto NPM molto usato con cui il manutentore originale aveva fatto - come molti progetti open source raggiungono nel loro ciclo di vita. Qualcuno ha allungato la mano chiedendo di mantenerlo. Sicuramente questo deve sembrare un onere fastidioso sollevato dalle spalle di uno sviluppatore. Sfortunatamente il nuovo manutentore ha rilasciato malware per rubare i portafogli crittografici .

Ironia della sorte, ho sentito parlare di questo attraverso il passaparola e leggendo il problema aperto sul repository github prima di leggere un articolo a riguardo o vederlo apparire nel npm audit. Questo dimostra che la tua voce su una piattaforma pubblica può davvero avere un impatto .

Il nostro gruppo di incontro ha parlato rapidamente di ciò che la comunità potrebbe fare per prevenire una cosa del genere e di chi è responsabile per impedire che ciò accada.

Piattaforma / Rete di consegna

Renderlo responsabilità di npm richiederebbe una situazione monetizzata in atto che farebbe schifo, o forse sarebbe disponibile solo per le imprese - ma poi tutti gli altri trarrebbero beneficio gratuitamente?

Gestore della fonte

Come manutentori dell'open source dobbiamo essere consapevoli delle conseguenze delle nostre azioni. Se sei stato un manutentore dell'open source, può diventare un lavoro ingrato poiché il tuo valore intrinseco che ottieni dal progetto diminuisce. Sarebbe difficile dire di no a qualcuno che apparentemente ha l'energia che una volta avevi dovuto per portare avanti il ​​tuo progetto. Una cosa da notare è che alcune piattaforme consentono un processo di revisione prima della pubblicazione se sono presenti i livelli di autorizzazione corretti. In questo caso la proprietà del progetto è stata completamente consegnata, dovresti cercare di non farlo a meno che non ti fidi completamente della persona / entità - anche se questo sembra ancora che non sia un modo pulito di condurre la continuazione del software che è stato stabilito e attendibile. Le persone potrebbero anche usare le loro forchette di codice, ma ciò può diventare confuso.

Comunità e consumatori

L'infrastruttura attuale potrebbe utilizzare alcune funzionalità per dare una mano.

Ad esempio, le versioni potrebbero essere verificate, approvate o contrassegnate dalla community, proprio come il modo in cui i torrent possono essere valutati in alto o in basso dalla community in modo che altri possano prendere decisioni rapide prima di fare il grande passo. Un punteggio elevato negativo potrebbe contrassegnare un pacchetto e avvertire i consumatori su di esso e installazioni future.

Come consumatore che installa alla cieca software e si aggiorna ad esso, è tua responsabilità guardare ciò che stai consumando. È possibile utilizzare i gestori pacchetti che hanno il blocco della versione in atto per aiutare a negare questo. Sfortunatamente dubito che molte persone trascorrano il tempo necessario per rivedere i 100 di pacchetti che stanno installando quando si lasciano andare npm install. Alcune aziende passano attraverso un processo del fornitore quando il software cambia; Spero che nessun business lo faccia per i pacchetti NPM (potrebbe fermare seriamente lo sviluppo), ma questa è stata un'opzione sollevata.

Denaro $$$

Nessuno vuole pagare per software open source gratuito, ma se coloro che scrivono codice sono stati premiati per i loro contributi, potrebbero essere più motivati ​​a mantenere il loro software e l'immagine della comunità. Il denaro potrebbe provenire direttamente dai consumatori o come un rivolo per la piattaforma su cui viene consegnato. Per quanto odierei vederlo, potevo vedere le biblioteche seguire lo stesso percorso delle piattaforme CI - gratuite per open source ma a costi per privati ​​/ aziende - questo potrebbe essere gestito con le licenze, ma gli sviluppatori non vogliono perdere tempo a diventare professioni di licenza o (forse potrebbero essere semplificate e dirette).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.