Implicazioni dello script in esecuzione come argomento della shell

0

Il contesto della domanda è il seguente commento su uno dei le mie risposte:

@SergiyKolodyazhnyy Prefacing a script name with /bin/bash or even just bash is also a common way to solve the lack of executable permissions on the script.

Ho confutato con le osservazioni ovvie che c'è il pericolo nel dare a un potenziale script malizioso di fare ciò che vuole mentre il file stesso non ha bit di bit eseguibili, e l'evidente incompatibilità dello script scritto per dire che c-shell viene eseguita con shell di tipo Bourne (e incompatibilità di sintassi tra le shell di tipo Bourne). E il modo in cui lo vedo con il senno di poi, è quasi vicino alla mancata raccomandazione di fare curl somedomain/script.sh | bash .

Tuttavia, sono curioso di sapere se ci sono implicazioni potenzialmente più gravi. So che il solo invio di un file può essere pericoloso e copia-copia in modo accurato di uno script apparentemente innocuo, ma sono curioso di sapere se esiste qualcosa di non ovvio sull'esecuzione di uno script come argomento di shell.

    
posta Sergiy Kolodyazhnyy 29.10.2017 - 01:00
fonte

1 risposta

3

Non proprio. Se qualcuno può farti eseguire uno script malevolo - sia con ./scriptname o con bash scriptname - sei praticamente brindato. Inoltre, non dovresti pensare al permesso di esecuzione come protezione contro il malware. Esegui il permesso controlla se tu è permesso di eseguire lo script (tramite exec() e i suoi parenti), non se è possibile eseguire it .

    
risposta data 29.10.2017 - 04:04
fonte

Leggi altre domande sui tag