博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于智能硬件设备shell安全设计
阅读量:4323 次
发布时间:2019-06-06

本文共 906 字,大约阅读时间需要 3 分钟。

问题描述:

         在对某些智能硬件设备进行测试时,发现有些设备直接提供了Linux shell,并且登录账号默认是root权限!在登录到设备后,在bin目录下可以看到很多命令行程序,这些程序大部门用户用不到,更多的是作为开发的时候使用,主要包含以下几类:

1 危险命令:设备rebootbusybox power off等。

2 调试命令:show***(显示设备操作码、服务器授权码等)、用于调试网络数据传输的的net*****debug***等等。

3 各种Linux下的常用命令,比如:ftpputftpget等。

         经过我们统计,目前很多散布在互联网上的智能硬件设备都存在弱口令问题,还有一些是存在远程命令执行的,一旦攻击者登录到设备,这些shell命令的存在显然为攻击者读取敏感信息和进行破坏提供了更多的便利,甚至是威胁到了服务器端的安全。因此,在产品设计初期,就要考虑到如何防范和规避风险。

 

解决方案:

1、  初期应根据业务需求评估,是否有必要保留登录shell的问题,常见提供shell命令的服务有TelnetSSH、FTP协议以及硬件串口等,还有一些公司使用了私有协议来实现。如果没有这种需求,则应直接关闭掉。

2、  如果要保留shell,那么不要直接提供用户底层的Linux shell,而是应该在此基础上再封装一层shell,用户只能在这层受限制的shell上执行指定的命令。

3、  Release版本的shell要求尽量只保留基础命令,对于必须存在的高危命令,建议进行二次认证,即重新输入一次口令甚至可要求登录口令和二次验证口令不能相同,这样,即便被攻击者恶意登录,有能降低危害。

4、  对于初始口令,第一次登录时,可以要求强制修改口令或者每次登录皆提示,直至用户修改为止。

5、  根据业务需求在定制shell上区分不同的用户权限角色,对不同角色可执行的命令进行严格区分。

注:由于安全性和产品体验是一个矛盾体,我们不能要求以上必须强制实施,但尽量能做到用户可配置关闭,并且默认配置。

转载于:https://www.cnblogs.com/fishou/p/4201034.html

你可能感兴趣的文章
Operating System-进程间互斥的方案-保证同一时间只有一个进程进入临界区(2)- Peterson解法...
查看>>
1.1 Friday the Thirteenth
查看>>
VS 高亮显示不带后缀的C++头文件
查看>>
python基础之面向对象
查看>>
Abnormal build process termination--解决IDEA启动web项目报错
查看>>
JS设计模式之工厂模式
查看>>
Git忽略规则及.gitignore规则不生效的解决办法
查看>>
EasyUI 搜索框
查看>>
impdp and docker install oracleXE
查看>>
入门训练 序列求和
查看>>
web前端_Vue框架_设置浏览器上方的标题和图标
查看>>
gnome3 隐藏标题栏
查看>>
duilib入门简明教程 -- 第一个程序 Hello World(3) (转)
查看>>
Visual Studio 2008下载
查看>>
hdu1712: ACboy needs your help
查看>>
[30期] 贫嘴漫谈时间
查看>>
远程连接工具SSH和linux的连接
查看>>
WPF 自定义依赖属性
查看>>
Android之Log封装
查看>>
立方体
查看>>