security-guide-for-developers

프론트엔드 개발자를 위한 보안 가이드가 오늘 소개해 드릴 프로젝트입니다. 몇번씩이나 깃헙 수위권을 차지 했었는데요. 상당히 읽어 볼만한 내용들을 포함하고 있습니다.

2016/08/10 best Practice

FallibleInc/security-guide-for-developers
_security-guide-for-developers - Security Guide for Developers (实用性开发人员安全须知)_github.com


배경설명

Fallible - Secure your startup
_About us We are a group of hackers passionate about improving the security posture of companies, tech startups in…_fallible.co

해커 그룹이 만든 fallible 라는 회사는

의 가격에 취약점에서 서비스를 지켜준다고 하는군요.

아무튼 이 회사에서 깃헙에 security가이드를 내 주고 공개해서 많은 사람들의 호응을 얻고 있는데, 문서가 다 완성되어 있지 않는데에도 스타가 1만개가 넘는군요


체크리스트

FallibleInc/security-guide-for-developers
_security-guide-for-developers - Security Guide for Developers (实用性开发人员安全须知)_github.com

체크리스트 하나를 만들어 나가고 있는데 꽤나 볼만 합니다. 한번 이 문서를 번역해서 PU 날려주는 것도 많을 거 같습니다.

일단 인증을 살펴볼까요?

  • HTTPS 를 꼭 쓸것
  • 비밀번호 해쉬를 저장할 때는 Bcrypt를 사용할것. (salt는 Bcrypt가 알아서 해 주니 필요없음
  • 로그아웃 후에는 session ID 값을 지울 것
  • 패스워드 변경때는 살아있는 모든 session 을 지울 것
  • OAuth2 는 state 매개변수를 무조건 가질 것
  • 성공적으로 로그인하고 나서는 열려 있는 리다이렉트는 없앨 것
  • 회원등록/로그인 입력값을 해석할 때 javascript와 data, CRLF 값등을 깨끗하게 유지할 것
  • 쿠키는 암호화한 http 내용만 허용
  • 모바일 에서 사용되는 OTP 검증 시, OTP를 생성하거나 리셋한 결과 값을 리턴하는 response에 패스워드를 보내지 말것
  • 로그인 혹은 OTP검증 혹은 관련된 API사용의 횟수를 제한할 것. captcha 기반의 챌린지를 가질 것
  • 이메일 링크와 SMS 로 보내진 리셋 패스워드의 난수값을 확인할 것
  • 리셋 패스워드의 만기일을 설정할 것(납득할만한 기간)
  • 토큰 값이 성공적으로 사용되고 나서는 삭제할 것

이것 이외도 많은 내용이 있으니 살펴볼만 한 듯합니다.

By Keen Dev on August 10, 2016.

Exported from Medium on May 31, 2017.

demystifying-js-engine

de*mys*ti*fy [dēˈmistəˌfī/] verb

make (a difficult or esoteric subject) clearer and easier to understand.

무언가를 명확하게 하고 이해하기 쉽게 만든다는 뜻의 demystifying 을 달고 있는 demystifying-js-engine입니다.

2016/08/09 Editor’s choice

a0viedo/demystifying-js-engines
_Contribute to demystifying-js-engines development by creating an account on GitHub._github.com


일단 슬라이드 하나 먼저 보고 가시죠.

Demystifying (JavaScript) Engines by Alejandro Oviedo García
_How JavaScript engines work? What are their elemental components? What is JIT compilation?_slides.com

결론은 위의 한장이긴 합니다만 각 엔진의 내용들을 설명하기 위해 쉬운 그림으로 만들어져 있습니다.

자세한 내용은 슬라이드를 보시죠.

이런 대단한 슬라이드를 만들기 위해 뒤져 본 아티클들의 집합들이 다음에 나와 있습니다.

특히 V8엔진에 관련해서 아티클을 모아 놓은

V8 Resources
_V8 Performance Tuning Tricks (+Daniel Clifford, GDD2011 Berlin) [slides]_mrale.ph

은 한번 따라 읽어 봅니다. 2011년부터 2013년까지의 자료가 잘 정리되어 있습니다.

자바스크립트 엔진을 이해하기 위해서는 읽어볼만한 아주 흥미로운 프로젝트 입니다.

By Keen Dev on August 8, 2016.

Exported from Medium on May 31, 2017.