安全研发相关笔记

知道创宇研发技能表v3.1

日常安全业务开发注意点

开发环境

  • 代码使用git或git-flow进行管理,要有规范的代码提交流程
  • 定期做code review
  • 关键服务端口尽可能不要暴露到公网上

安全开发流程

SDL,英文全称为Security Development Lifecycle, 即安全开发生命周期。最早由微软提出,在软件工程中实施,是帮助解决软件安全问题的办法。

详见 安全开发流程(SDL)

推荐阅读

  • 《企业安全建设指南:金融行业安全架构与技术实践》 -- 甲方企业安全建设必读书目,经典书籍
  • 《零信任网络》-- 原版书名:Zero Trust, 目前市面上有中文翻译的就这本了,强烈推荐阅读学习
  • 《企业安全建设入门:基于开源软件打造企业网络安全》 -- 刘焱(兜哥)一本非AI向的安全书籍,个人觉得对于中小企业基于开源软件打造安全环境还是值得参考阅读的。
  • 《数据安全架构设计与实战》 -- 着重讲解数据安全设计的书籍

安全岗位面试

请见 安全岗位面试知识整理

DevSecOps

请见 DevSecOps

常规Linux安全设置

禁止ping

这个方法永久生效,所以就不考虑临时生效、重启失效的方法了。

ubuntu 18.04有效(早期版本可能配置文件不同)

1.修改系统配置
vim /etc/sysctl.conf

文件尾部追加:
net.ipv4.icmp_echo_ignore_all = 1

然后wq!保存退出

2.使用这个命令使配置修改立刻生效(不用重启)
sysctl -p

安装OpenResty

参考官方文档:http://openresty.org/en/installation.html 民间参考文件:https://segmentfault.com/a/1190000022730322?utm_source=tag-newest

Linux推荐编译安装

MacOS官方推荐brew安装

brew install openresty/brew/openresty -v

如果提示关于无法下载 raw.githubusercontent.com/xxx,则需要手动增加解析(有全局代理也行)

原因:域名被DNS污染了,需要重新设置一下本地hosts,域名解析的读取顺序是:浏览器缓存->本地hosts文件->外部DNS

解决:在本地hosts文件加上:199.232.4.133 raw.githubusercontent.com

MacOS安装好 OpenResty 的提示:

==> openresty
You can find the configuration files for openresty under /usr/local/etc/openresty/.

To have launchd start openresty/brew/openresty now and restart at login:
  brew services start openresty/brew/openresty
Or, if you don't want/need a background service you can just run:
  openresty

安装Lua

研发需要用到,这里记录下。其实很简单,建议参考官方文档。

curl -R -O http://www.lua.org/ftp/lua-5.4.3.tar.gz
tar zxf lua-5.4.3.tar.gz
cd lua-5.4.3
make all test

目前支持的平台有:guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris 对应平台安装(Mac OS举例):

sudo make macosx
# 如果不行就执行下面这个
sudo make macosx install

检验安装

lua -v

lua xxx.lua

check lua

ref: - http://www.lua.org/download.html - http://www.lua.org/manual/5.4/readme.html