[linux] Re: ssh over php

Oscar Roozen linux op okkie.nu
Vr Jul 15 13:49:53 CEST 2016


On 13-07-16 22:28, Hans Paijmans wrote:
> Noch via  exec("ssh paai op huppelepup 'mkdir testing'") noch via de ssh2 

Ouch...

Ik neem aan dat je dit op een of andere manier met passwordless login voor
elkaar wil gaan krijgen? Ik heb geen verstand van php, dus daar kan ik je
niet mee helpen, maar ik wil je wel even waarschuwen.

Stel dat dit je lukt, dan ga je straks waarschijnlijk iets doen als 'ssh
user op huppeldepup sudo shutdown -h now' doen? Dan moet die user ook nog
passwordless toegang hebben tot shutdown, iets wat je kan regelen via
/etc/sudoers. Of hoe dan ook, de conclusie is dat je via php remote
commando's met privileges gaat kunnen uitvoeren op je achterliggende machines.

En daar wil ik voor waarschuwen. Stel dat J. Random Cracker nou voor elkaar
krijgt om wat php te injecteren en hij heeft dit je sources zien staan, dan
zal hij als eerste gaan proberen wat er nog meer mogelijk is met exec op al
die achterliggende machines. Zorg er dus voor dat via dat kanaal echt alleen
maar shutdown uitgevoerd kan worden en niks anders. Je kan dit bijvoorbeeld
voor elkaar krijgen met ssh forced commands. Je geeft zo'n passwordless user
dan precies 1 commando dat wordt uitgevoerd als die user inlogt.

Ikzelf zou de situatie omdraaien. Zorg dat de webserver helemaal niet bij je
backend kan komen, maar dat alle connecties van de backend naar de webserver
gaan. Iedere machine die je wil kunnen uitschakelen doet dan vanuit cron
regelmatig 'curl http://wbsrvr/get-my-desired-state.php' en zodra daar het
woord "poweroff" uit komt rollen, voer je je shutdown uit.

* * * * * curl $URL | grep -qw poweroff && shutdown -h now

Het enige dat jouw Random Cracker nu nog kan met je telebankiermachine is
hem uitzetten. En dat wil hij nog minder dan jij...




More information about the Linux mailing list