Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fallibleinc/security-guide-for-developers
Security Guide for Developers (实用性开发人员安全须知)
https://github.com/fallibleinc/security-guide-for-developers
api books security security-book security-checklist
Last synced: 22 days ago
JSON representation
Security Guide for Developers (实用性开发人员安全须知)
- Host: GitHub
- URL: https://github.com/fallibleinc/security-guide-for-developers
- Owner: FallibleInc
- Created: 2016-06-08T15:56:25.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-05-28T13:38:03.000Z (over 2 years ago)
- Last Synced: 2024-10-14T11:02:57.372Z (22 days ago)
- Topics: api, books, security, security-book, security-checklist
- Homepage: https://git.io/security
- Size: 5.57 MB
- Stars: 20,909
- Watchers: 1,094
- Forks: 1,601
- Open Issues: 19
-
Metadata Files:
- Readme: README-zh.md
- Security: security-checklist-zh.md
Awesome Lists containing this project
- awesome-security-collection - **18703**星
README
# 实用性 WEB 开发人员安全须知
### 目标读者
安全问题主要由以下两类原因导致:
1. 那些刚入门的无法区分 MD5 和 bcrypt 作用的开发者
2. 那些知道这件事但忘记/忽略了的开发者我们的详细说明应该可以帮到第 1 类开发者,而我们希望我们的 checklist 可以帮到第 2 类的开发者构建更多的安全系统。这并不是一个综合性的全面指南,只是覆盖了大多数我们在过去发现的常见问题。
### 目录
1. [安全Checklist](security-checklist-zh.md)
2. 什么东西会出问题?
3. 安全地传输数据: HTTPS 详解
4. 权限验证: 我是谁?
4.1 基于表单的权限验证
4.2 基础鉴权
4.3 一次是不够的、二次、三次(验证)....
4.4 为什么使用不安全的文本消息? HOTP & TOTP 介绍
4.5 处理密码重置
5. 权限验证: 我能做什么?
5.1 基于 Token 的权限验证
5.2 OAuth 和 OAuth2
5.3 JWT(JSON Web Token)
6. 数据校验和过滤: 绝不信任用户输入
6.1 校验和过滤用户输入
6.2 过滤输出
6.3 跨站脚本攻击(XSS)
6.4 注入攻击
6.5 用户上传
6.6 用户篡改输入
7. 纯文本 != 编码 != 加密 != 哈希
7.1 通用编码模式
7.2 加密
7.3 哈希和单向函数(功能)
7.4 哈希速度对照表
8. 密码: dadada、123456、cute@123
8.1 密码策略
8.2 密码存储
8.3 没有密码的生活
9. 公钥加密
10. 会话: 请记住我
10.1 哪里存储状态?
10.2 使会话失效
10.3 Cookie 怪物和你
11. 加固安全, 一次只有一个头信息
11.1 安全的 web header
11.2 第三方代码的数据集成检测
11.3 证书绑定
12. 配置错误
12.1 云上准备: 端口、Shodan、AWS
12.2 亲,你开了 debug 模式
12.3 日志(或者没有日志)
12.4 监控
12.5 最低优先级原理
12.6 (请求)频率限制 和 Captchas
12.7 把项目的密钥和密码保存在文件上
12.8 DNS: 关于子域名和被遗忘的宠物计划
12.9 打补丁和更新
13. 攻击: 当坏人来临
13.1 点击劫持
13.2 跨站请求伪造
13.3 拒绝服务
13.4 服务端请求伪造
14. [互联网公司漏洞统计](vulnerabilities-stats-zh.md)
15. 重造轮子,但做出来是方的
15.1 Python 的安全库和包
15.2 NodeJS 的安全库和包
15.3 学习资料
16. 掌握良好的安全习惯
17. 安全性 vs 可用性
18. 回到第 1 条: 安全 Checklist 解释### 我们是谁?
我们是全栈开发工程师,讨厌看到那些所谓为了做某件事情而 hack,但写了一堆不安全代码的开发者。在过去六个月,我们保护了超过 1500w 信用卡信息不被泄露,超过 4500w 的用户个人信息不被盗取,潜在的拯救了大量公司的倒闭。最近,我们发现的一个安全问题,可以导致一家比特币交易公司因数据泄露而倒闭。我们帮助了若干创业公司让他们的系统更安全,大多数都是免费的,有时候甚至连『谢谢』都没收到 :)
*如果你不同意我们的观点或者找到 bug,请开启一个 issue 或者提交一个 PR 给我们。另外,你也可以通过 [email protected] 与我们交流。*