블로그
성공적 투자를 위하여 어비스가 제공해드리는 특별한 소식들을 만나보세요.
#개발보안,# 스타트업
스타트업이 개발보안에 대해 노력할 때
2025.07.24
저희 어비스는 스타트업이지만 개발보안을 위해 여러모로 노력하고 있습니다.
저희가 이번에 앱을 만들면서 설정한 개발보안에 대해 몇가지 말하고자 합니다.
아마 다른 스타트업들을 운영하는 회사분들도 다음의 부분들을 지키면 좀 더 좋고 안전한 앱이 되지 않을까 싶습니다.
1. cloudfront
클라우드 플레어를 앞단에 두어서 저희는 대표적으로 다음의 보안을 얻습니다.
기능 | 설명 |
---|---|
DDoS 공격 방어 | Cloudflare는 세계 최대 규모의 DDoS 방어 인프라를 운영하고 있어, 초당 수백만 건의 공격 요청도 차단 가능 |
WAF (웹 방화벽) | OWASP Top 10 위협(SQLi, XSS 등)에 대한 룰셋을 자동으로 적용 |
Bot Management | 봇 탐지 및 차단 (Bot Score, CAPTCHA, JS Challenge 등) |
Rate Limiting | 경로별 요청 횟수 제한 가능 — brute-force, API abuse 방지 |
IP / 국가 차단 | 방화벽 룰로 국가 또는 IP 대역 차단 가능 |
TLS 인증서 무료 제공 | HTTPS 적용을 자동화하며, Let’s Encrypt 갱신도 자동 |
이외에도 AWS - S3에 바로 접근하지 못하게 하는 등의 기능 또한 만들어서 보호 하고 있습니다.
2. HTTP Parameter Pollution attack 방지
저희는 hpp 라이브러리를 통해 HPP 공격을 방지합니다.
예를 들어,
* 정상 요청: ?user=alice&role=user
* 공격 요청: ?user=alice&role=admin&role=user
파서에 따라 role=user가 마지막에 덮어써져야 할 검증이 패스될 수도 있지만 이를 통해 막는 것이죠.
3. csrf
아주 유명한 공격이죠? 이를 방지합니다.
서버가 발급한 CSRF 토큰을 쿠키에 저장하고, 클라이언트가 요청 시 <input> 필드나 X-CSRF-Token 헤더에 똑같은 토큰을 담아 보내면, 서버에서 “쿠키 토큰”과 “요청 토큰”을 비교해 유효성을 검증합니다.
이렇게 하면 세션을 유지하지 않는 SPA나 API 서버에도 쉽게 적용할 수 있습니다.
4. xss
xss-clean 미들웨어를 추가해서 들어오는 모든 요청에서 req.body, req.query, req.params 등의 값을 자동으로 “클렌징”해서 잠재적인 XSS(크로스 사이트 스크립팅) 공격 페이로드를 제거해 줍니다.
ex)
1. 스크립트 태그 제거
* <script>…</script> 같은 태그를 통째로 제거하거나 이스케이프 처리
2. 이벤트 핸들러 제거
* <img src=x onerror="alert(1)" /> 식의 on… 속성도 무력화
3. HTML 엔티티 이스케이프
* < > " ' 등을 < > " ' 등으로 바꿔서 스크립트 실행을 원천 차단
4. 네스트된 객체 지원
* req.body.user.name 같은 중첩된 속성도 재귀적으로 검사
5. rate - limit
CloudFront 단독으로는 Rate Limiting 이 부분적으로 제공됩니다.
커스터마이징 하게 Rate limiting(“1분에 100회 초과하면 차단”)을 할 수가 없기 때문에 이를 설정해두었습니다.
6. helmet
Helmet을 붙이면 다음과 같은 주요 보안 헤더들이 자동으로 추가돼, OWASP 권고사항 대부분을 커버할 수 있습니다.
* X-DNS-Prefetch-Control: DNS 프리페치 허용/차단
* Expect‑CT: Certificate Transparency 정책
* X-Frame-Options: Clickjacking 방지(DENY/SAMEORIGIN)
* Strict‑Transport‑Security: HSTS(HTTPS 강제)
* X-Download-Options: IE 다운로드 실행 방지
* X-Content-Type-Options: MIME 스니핑 방지(nosniff)
* X-Permitted-Cross-Domain-Policies: 플래시/Cross‑domain 정책 제한
* Referrer-Policy: 리퍼러 정보 최소화
* Content-Security-Policy(선택): 인라인 스크립트·외부 리소스 출처 통제
작은 스타트업이지만 사용자의 개인정보 보호, 그리고 서비스의 안정적 운영을 위해 노력하는 어비스픽이 되겠습니다.
감사합니다.
▶어비스픽
https://vreport.kr/
▶어비스 회사 공식홈페이지