Não, realmente não. Essa é a mãe de todas as falhas de segurança. Você está perguntando se pode configurar uma página da Web que execute comandos arbitrários na máquina do cliente. E se eu configurar uma página da Web que execute este comando:
rm -rf ~/
Isso excluiria todos os arquivos no seu $HOME
. De fato, houve recentemente um alvoroço quando um bug foi descoberto, permitindo que isso acontecesse. Um dos possíveis vetores de ataque foi enganar o cliente (computador B no seu caso) para executar um comando bash.
Portanto, não, você não pode executar código arbitrário em sua máquina local por meio de um navegador da web. Não sem, de alguma forma, fazer login primeiro. Você pode executar comandos JavaScript ou idioma semelhante, mas eles não terão acesso à sessão do usuário.
Você não pode fazer isso em geral, mas em um ambiente definido, onde você pode controlar a máquina cliente B, pode propor que a máquina B execute um serviço setroot, basta escrever por conta própria com nodejs ou golang, por exemplo, e conversar com isso serviço ao receber o evento. Mas, de qualquer forma, você não tem chance (ou pelo menos nunca deve ter uma chance) se não instalar algum serviço extra na máquina B.
fonte
run("whatever command on machine B");
:?Eu resolvo isso usando um servidor nodeJS. (código não limpo / final, mas está funcionando)
Computador A: (servidor)
Computador B: arquivo (cliente) chamado
server.js
ans executado comnodejs server.js
fonte
O PHP pode alterar o conteúdo dos arquivos de texto no navegador, por exemplo, em /var/www/.../folder/mytextfie.txt. .
um cronjob pode ser executado para verificar se o arquivo de texto contém qualquer executável.
contexto desse arquivo de texto:
Com o loop te while é possível executar comandos a partir desse arquivo de texto.
fonte
Sim .. é possível com neutralinojs .
Você pode usar
Neutralino.os.runCommand()
. Mas no seu cenário, o modo de nuvem Neutralino pode ser usado.fonte