Ich betrachte speziell Emacs Helm , der die folgenden Eigenschaften hat:
- Es hat Tausende von Commits
- Es wird größtenteils von einem Benutzer verwaltet
- Der Betreuer hat keine anderen Profile (soziale Medien usw.), die ich bei einigen Suchanfragen finden konnte
- es wird aktiv gepflegt (heute)
Da ich im Begriff bin, beliebigen Code auf meinem Computer zu installieren, um ihn in meinem Texteditor zu verwenden, wollte ich überprüfen, ob dies einem Überprüfungsprozess unterzogen wurde. Ich würde gerne sagen "Nun, es ist Open Source", aber ich bin wirklich weit davon entfernt, den gesamten Code selbst zu prüfen. Ich würde gerne annehmen, dass andere in der Community es überprüft haben, aber eines ist wahrscheinlich falsch, und zwei gibt es aktuelle Commits. Gibt es andere Strategien, die mir fehlen?
Für die Aufzeichnung ist der Vektor einfach: "Open Source" spielt keine große Rolle, wenn der Mitwirkende unter einem Wegwerfkonto arbeitet oder wenn es keinen Überprüfungsprozess gibt.
mapatoms
könnte zusammen mit und in die "gefährliche" Gruppe eingeordnetstart-process
werden . Natürlich würde es einige Fehlalarme geben, aber wenn das Paket keine dieser Funktionen verwendet, kann es mit großer Sicherheit als harmlos markiert werden.eval
funcall
make-process
, sowiecall-process
,dbus-<foo>
,make-network-stream
, und dannvc-do-command
,vc-git-command
.... Und wenn Sie setzeneval
undfuncall
die „gefährliche“ Kategorie in, dann die meisten / alle Pakete gefährlich sind.Antworten:
Die kurze Antwort lautet: Wenn Sie den Code nicht selbst durchlesen, vertrauen Sie sehr. Allerdings ist das Vertrauen in ein Projekt, das von einem vorgelagerten SCM stammt, etwas sicherer als eines, das beispielsweise direkt aus dem Emacs-Wiki abgerufen wurde. Grundsätzlich vertrauen Sie jedoch darauf, dass der Autor des Pakets nicht böse wird und die Fähigkeit missbraucht, beliebigen Code unter Ihrer Emacs-Sitzung auszuführen.
Es gibt einige Dinge, die dazu führen können, dass Sie sich sicherer fühlen:
Während beliebte Pakete nicht automatisch mehr überprüft werden, steigt die Wahrscheinlichkeit, dass böswilliges Verhalten erkannt wird, bevor es Sie betrifft, aufgrund der Tatsache, dass sie mehr Benutzer haben.
Auf github können Sie einen ziemlich guten Überblick über die Beitragshistorie des Projekts erhalten . Auch wenn der Hauptautor die meisten Commits mit einer Vielzahl von Autoren macht, zeigt dies, dass es andere Personen gibt, die ein aktives Interesse an der Stabilität und Effektivität des Codes haben.
Während das Leben an der Blutungsgrenze einen gewissen Reiz für diejenigen hat, die die neuesten glänzenden Funktionen wünschen, bedeutet dies, dass Sie möglicherweise die Ersten sind, die das neueste Commit in Ihrer Umgebung akzeptieren. Selbst wenn Sie nicht böswillig sind, erhalten Sie möglicherweise ein Paket im Fluss, während eine "offizielle" Veröffentlichung zumindest eine flüchtige Überprüfung aufweist. Beispielsweise werden GNU ELPA-Pakete nur von den Benutzern von emacs-devel mit Festschreibungsrechten festgeschrieben.
Letztendlich bin ich mir sicher, dass es irgendwann zu einer Sicherheitsverletzung über das Paketsystem kommen wird, auch wenn es sich nur um ein Proof-of-Concept-Experiment handelt. Dies ist der Punkt, an dem Sie sich möglicherweise auf Ihre regelmäßigen Backups verlassen müssen.
quelle