[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problemes amb automysqlbackup combinat amb un "locale" en català



El diumenge, 20 de desembre de 2020, a les 13:36:42 CET, Eloi va escriure:

Doncs bé, he fet l'exercici de consultar el codi font de l'script a [1] i l'he encertat de ple: com es pot veure a la funció shell, definida a partir de la línia 424, tant $1 com $2 no estan degudament protegits.

El fet que un espai en blanc trenqui la creació de còpies de seguretat, per si sol, entenc que mereix que el bug tingui una severitat major que normal. Ara bé, que $1 tampoc estigui protegit i el paràmetre correspongui a una dada facilitada per l'usuari, el nom de la base de dades, em fa témer que podria arribar a explotar-se com a vulnerabilitat per a la injecció de comandes. Per exemple: una configuració que fes còpia d'una base de dades "foo; dropdb foo" (en el cas de treballar amb Postgres, on tinc experiència) podria, segons els permisos, destruir la base de dades, el que ho faria un bug crític [2]. Ara bé, no he comprovat fins a quin punt és explotable, però és quelcom que fa saltar totes les meves alarmes.

També, com s'apunta correctament, si l'apòstrof no fos tipogràfic i es tractés d'una "cometa simple", causaria error i no completaria el backup.

L'altre tema és el d'anomenar els backups en funció del locale, que està bé per a humans però és terrible per a gestió automàtica per a màquines. Si jo fes anar l'script (i, pel que he vist fins ara, el deixaria de fer servir immediatament) obriria dos bug reports: el primer, més greu, amb el problema d'escapament dels paràmetres de la funció dbdump; i el segon, com a wishlist, per parametritzar si la còpia s'ha d'anomenar de forma humana (com fins ara) o mecànica (en un format YYYY-MM-DD o similar però respectant l'ordre any-mes-dia i 4-2-2 dígits).

No em sento còmode obrint-los jo per tractar-se d'una eina que no uso, doncs no podria donar respostes a preguntes addicionals del desenvolupador o de l'empaquetador, però puc ajudar a qui l'obri.

[1] <https://salsa.debian.org/zigo/automysqlbackup/-/blob/debian/automysqlbackup> cf. <https://tracker.debian.org/pkg/automysqlbackup>

[2] https://xkcd.com/327/

Ostres, *moltes* gràcies a tots els qui heu respost aportant el vostre punt de vista. Ja em semblava que la cosa tenia més suc i transcendència del que hom podia pensar a primera vista, i el resultat no m'ha decebut gens :-)

 

Atès que sóc jo qui ha iniciat el fil veig que em tocarà a mi d'obrir el bug contra l'automysqlbackup. Passa que vaig una mica atrafegat amb el final de curs i no sé ben bé quan podré fer-ho. A més, tampoc no sóc gens expert en els temes de locale, libc, bash i demés. Vull dir que obrir el bug m'hi veig en cor, però proposar solucions més enllà de les que heu comentat (protegir les variables amb cometes, etc.) ja no tant.

 

En tot cas ho provo i si el desenvolupador demana més coses, aleshores ja us demanaré consell a vosaltres.

 

--

Cordialment,

Orestes Mas


Reply to: