it-swarm-korea.com

웹 앱에 대한 심층 방어에는 무엇이 수반됩니까?

앱 수준 보안에서 서버 강화, 인력 교육에 이르기까지 다양한 보안 계층을 의미한다고 가정하고 있지만 각 계층은 무엇이며 각 방어 수준에 적합한 리소스는 무엇입니까?

웹 앱의 중요도에 따라 각 레이어에 레이블을 지정하고 간략하게 정의한 다음 추가 정보를 위해 하나 이상의 리소스를 나열하십시오.

12
VirtuosiMedia

심층 방어 패러다임에서 가장 중요한 자산은 인간 지능 : 지속적이고 지속적인 방어를 담당하는 보안 전문가를 고용하는 것입니다.

도구 변경, 웹 앱 프레임 워크 변경, 새로운 익스플로잇 기술이 발견되었습니다. 방어에 도움이되는 강력한 인력 팀을 구축하기 전부터 시작됩니다.

전술로 이동하지만 여전히 높은 수준 :

보안 코딩 (앱 레이어)-> 팀이 공격자에게 탄력적 인 애플리케이션을 개발할 수 있도록 지원-> OWASP

보안 인프라 -> 팀이 공격자 복원력이있는 서버 및 지원 장비를 배포 할 수 있도록 지원

http://cisecurity.org/ CIS (Center for Internet Security)는 비영리 기업으로, 벤치마킹 및 메트릭 부서가 조직이 부적절한 기술로 인한 비즈니스 및 전자 상거래 중단의 위험을 줄이는 데 도움을줍니다. 보안 통제. 부서는 기업에 보안 구성에 대한 합의 모범 사례 표준과 정보 보안 상태를 측정하고 보안 투자에 대한 합리적인 결정을 내리는 데 필요한 리소스를 제공합니다.

http://iase.disa.mil/stigs/checklist/ 국방 정보 시스템 청 (DISA)

http://web.nvd.nist.gov/view/ncp/repository
http://csrc.nist.gov/fdcc/faq-common_security_configurations.html
NIST SP 800-70 Rev. 1에서 정의한 NCP (National Checklist Program))는 공개적으로 사용 가능한 보안 체크리스트 (또는 벤치 마크)의 미국 정부 저장소로 운영 체제 및 응용 프로그램의 보안 구성 설정에 대한 자세한 저수준 지침.

가능한 사고 감지 및 대응 -> 팀이 감지, 억제, 대응 및 수정하도록 지원

사고 대응 체크리스트 모음 : http://www.knowyourenemy.eu/checklists.php

Richard Bejtlich 최근 블로그 :

"사고 대응 팀 구축을위한 리소스 최근 동료가 사고 대응 팀 구축을위한 리소스를 요청했습니다. 나는 몇 가지 아이디어를 제공하겠다고 약속했습니다 ...]

CERT.org CSIRT Development 사이트는 아마도 시작하기에 가장 좋은 곳일 것입니다. 여기에서 무료 문서, CIRT 구축에 대해 SEI에서 제공하는 강의 링크 등을 찾을 수 있습니다. 나는 당신이 그 사이트를 이길 수 있다고 생각하지 않습니다!

FIRST 사이트의 리소스가 그다지 도움이되지 않는다고 생각합니다.하지만 멤버십을 위해 노력하는 과정은 새로운 CIRT를위한 훌륭한 연습입니다.

내 TaoSecurity 도서 페이지에는 CIRT가 도움이 될만한 여러 도서가 나열되어 있습니다. "

간결함의 이름으로 위의 내용으로 충분할까요?

6
Tate Hansen

나는 '심층 방어'가 의미하지 않는 것을 이해하는 것이 틀림없이 더 중요하다고 생각합니다. 그것은 '방화벽 및 암호화 알고리즘과 같은 인상적인 사운드 컨트롤의 긴 세탁 목록'을 의미하지 않습니다.

심층 방어는 기술 중립적 인 용어로 시스템이 손상되기 전에 두 개 이상의 독립 제어가 실패해야 함을 의미합니다. 예 : 벨트 및 중괄호 및 끈으로 바지를 들고 :-)

여기서 핵심은 '독립적'입니다. 모든 컨트롤에 일반적인 실패 모드가 있거나 패배하기 전에 그중 하나만 실패해야하는 경우 '심층 방어'가 없습니다. 예를 들어 각 계층이 HTTP를 통해 이전 계층에서 액세스 할 수 있고 모두 동일한 취약점이있는 경우 공격자가 동일한 취약점을 사용하여 모두를 소유 할 수 있으므로 방화벽/DMZ 설정은 효과적으로 무관하게 렌더링됩니다.

7
frankodwyer

웹 앱에 대해, 즉 애플리케이션 관점에서 개별적으로 질문하기 시작 했으므로 주로 그것에 초점을 맞출 것입니다. 아웃 사이드-인 레이어 순서는 다음과 같습니다.

  • 보안 프로토콜 (SSL/TLS)
  • 방화벽
  • DMZ
  • WAF
  • IDS/IPS
  • 강화 된 OS
  • 강화 된 웹 서버
  • 강화 된 프레임 워크로 관리되는 코드
  • 입증
  • 파일 액세스 제어 (예 : NTFS ACL)
  • URL 액세스 제어 (예 : ASP.NET의 웹 구성)
  • 실용적인 액세스 제어
  • 입력 유효성 검사
  • 저장 프로 시저
  • db 매개 변수 바인딩 (예 : ADO 명령/매개 변수 개체) 또는 ORM
  • 강화 된 DB
  • dB 개체에 대한 엄격한 권한
  • 출력 인코딩
  • 기타.

이들 중 대부분은 본질적으로 적용 가능하며 대부분의 네트워크/OS 항목은 본질적으로 아키텍처입니다.

4
AviD

당신은 다소 긴 답변을 요구하고 있으므로 조금만 찔러 보겠습니다.

사용자 관점에서 웹 앱에 접근하면 다음과 같은 것이 있습니다.

  • 네트워크 계층 (HTTP 패킷/물리적 와이어/라우터 /ISP)
    • Wikipedia 참조
  • 서버 소프트웨어 (일명 IIS/httpd/etc)
    • 서버 스택이 무엇인지에 따라 다릅니다 (LAMP/.NET/etc.)
  • 애플리케이션 코드
    • 응용 프로그램의 구성에 따라 다릅니다.
  • 더 이상 들어 가지 않을 것입니다.
2
Zian Choy