Názor k článku Nextcloud: když chcete vlastní cloud pod kontrolou od Uncaught ReferenceError: - za mě je doporučení to prostě nevystavovat ven...

  • Článek je starý, nové názory již nelze přidávat.
  • 18. 3. 2021 10:22

    Uncaught ReferenceError:

    za mě je doporučení to prostě nevystavovat ven bez další vrstvy, která se bude starat o sanitizaci provozu. CVE přestali používat a místo toho mají mají svůj register, mělo by to být místo, který denně kontroluješ https://nextcloud.com/security/advisories/, problémy se objevují skoro každý měsíc.

    Zdrojový kód je ale občas dost šílený, nepřehledný, proměnné jsou nekonzistentě pojmenované, žijou v představě, že nejlepší kód je takový, který se sami implementují. Třeba taková perlička je escapování hodnot do databáze přes addcslashes (ve funkci escapeLikePara­meter), výsledek pak většinou používají přes prepared stmt, ale jen většinou, jsou tam situace, kdy to nacpou přímo do sql a na problém je zaděláno.

    Stávají se obětí své popularity, kód by potřeboval výraznější koncepční refaktorování, aby nebyl takový prostor k chybám, teď vše řeší záplatami, záplatami a záplatami. Tým není velký a nestačí odbavovat issues (skoro 3k issues otevřených na githubu).

    Když už jsem si dal práci a nějaký bezpečnostní problém jim nahlásil, zůstal měsíce netkutý.

    Doteď tam mají otevřené věci jako admin heslo v logu (https://github.com/nextcloud/server/issues/13630), u sftp mají vypnutý host verification (https://github.com/nextcloud/server/issues/14108), nebezpečné používání imagick pro uživatelský vstup se řeší dva roky (https://github.com/nextcloud/server/issues/13099), nebo naprostá anarchie v požávání CSP a frame origin (https://github.com/nextcloud/server/issues/13042).

    Projekt, který konzumuje uživatelský vstup, který poskytuje výstup dalším uživatelům by měl trochu více myslet na bezpečnost. Nasadit ho v tomhle stavu veřejně je za mě velké riziko, provozovat ho za vpn je sice lepší, ale tak pro domácí účely, do firmech bych se to neodvážil.