Desejo passar um endereço de email de um formulário da web para um script bash. Estou usando o seguinte regex:
/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/
Isso é suficiente? Ou alguém poderia incorporar uma exploração?
O script é chamado do PHP:
system('/usr/local/bin/script.sh "$email"');
shell
security
regular-expression
php
chris
fonte
fonte
"the doctor"@gallifrey.com
. Observe o espaço entre aspas no componente de nome de usuário.Respostas:
Você pode limpar e validar o endereço de email em PHP, que será mais rápido e seguro do que chamar um shell script. Chamar um script de shell com dados não autorizados de um serviço da Web adicionará mais uma coisa que pode ser interrompida.
Exemplo acima adaptado de exemplos no site PHP.net .
fonte