1
0
Fork 0
No description
Find a file
2019-02-21 14:40:22 +00:00
images removed testing stuff 2019-02-20 10:25:30 +00:00
.gitignore supporting alternative text and sensitive content 2019-02-20 16:34:02 +00:00
megafono.txt modified readme 2019-02-21 14:40:22 +00:00
megafono_bot.sh fixed, need thinking as commands can be injected in eval 2019-02-21 11:45:47 +00:00
README.md modified readme 2019-02-21 14:40:22 +00:00
toot.sh supporting alternative text and sensitive content 2019-02-20 16:34:02 +00:00

Megafono Mastodon Bida

Il bot megafono prende linea per linea da un file che può essere configurato settando DATA_FILE in megafono_bot.sh. Ogni linea del file è evalutata con eval ./toot.sh $line quindi ATTENZIONE:

  • bisogna eseguire il bot dalla directory in cui si trova perchè usa il path relativo, se vi da fastidio questo settate i path assoluti modificando lo script

  • siccome viene usato un eval è importante che i permessi su DATA_FILE siano settati bene, faccio un esempio di come NON devono essere settati: mettiamo io sia l'utente pippo e che l'utente megafono sia quello che esegue il file, nel caso in cui DATA_FILE sia scrivibile da utenti che non siano esclusivamente megafono, pippo puo' aggiungere a DATA_FILE la linea lol ; echo Ora sono l'utente megafono eseguendo l'echo come utente megafono. Questo non è un problema grave salvo malconfigurazione dei permessi. Quindi se settate bene i permessi su DATA_FILE (i.e. chmod 660 $DATA_FILE) non ci saranno problemi (e ovviamente non eseguite il bot come root, ma sembrava ovvio).

  • per lo stesso motivo sopra è necessario che caratteri speciali come ; & \n " e tutti quelli che potrebbero creare problemi a bash siano URL encoded (ad esempio \n diventa %0A oppure " diventa %22).

  • ogni linea dovrà essere quindi strutturata così --eventuali="parametri da dare" -a="toot.sh" "TESTO DEL TOOT", guardate l'help di toot.sh per i parametri.