今天检视开发写的 shell 脚本、按关键字搜索敏感数据,学到如下几点:
1)find 不区分大小写查找 find . -iname ‘test’
2)查找 /opt 目录下包含 password/passwd/pwd 关键字的 sh/xml/config/log 文件:find /opt -type f | egrep -i “\.sh$|\.xml$|\.config$|\.log” | xargs egrep -i “password|passwd|pwd”
3)shell 编程相关:
a="ls ${directory}" 该语句只是赋值,不会执行;
directory 变量如果是普通用户可控制的,则存在安全问题,用户可以随便输入命令执行:directory="test;touch 1",拼接起来就是 ls test;touch 1。Linux 命令中间的分号‘;’是指前后两个命令顺序执行。
网友评论