远程代码执行渗透与防御
远程代码执行
【1】远程代码执行remote code execute
因为设计需求,后台有时候也会把用户的输入作为代码的一部分进行执行。
不管是使用了代码执行的函数,还是使用了反序列化等等。
因此,如果需要给前端用户提供操作类的API接口。
一定要对接口输入的内容进行严格的判断,比如实施严格的白名单策略
【2】远程命令执行remote command execute
是因为应用程序从设计上需要给用户提供指定的远程命令操作的接口
比如我们常见的路由器、防火墙、入侵检测等web页面等
一般会给用户提供一个ping的操作。用户输入目标IP,提交后,后台会对该ip地址再进行一次ping测试。并返回测试结果
如果,设计者在完成该功能时没有做严格的安全控制。则可能会导致攻击者提供该接口提交一些其他的命令。从而后台进行执行,从而控制整个服务器
漏洞危害
命令注入函数
代码注入函数
Windows命令拼接符号
Linux命令拼接符号
pikachu
exec ping
exec eval
DVWA
low
Medium
High
不留空格则绕过