내부 및 외부 애플리케이션 개발, 조직 점점 사용 하는 오픈 소스 코드는 합리적 이다.입니다. 자신의 코드를 작성 하는 것 보다 무료 미리 만들어진된 구성 요소를 사용 하 여 크게 응용 프로그램 개발 시간을 단축 수 있으며 소프트웨어 개발 성공의 확률을 향상. 응용 프로그램을 개발할 때 개발 팀에서 쉽게 수백 더 많은 오픈 소스 라이브러리, 프레임 워크 및 도구, 그리고 인터넷에서 수많은 코드를 사용할 수 있습니다.
그러나, 오픈 소스 코드는 위험-심지어 가장 널리 인정 된 코드 베이스. 아무도 오픈 소스 코드 버그를 없을 것 이다 또는 그것은 개발 과정에서 엔터프라이즈 응용 프로그램의 요구 사항을 충족 하는 오픈 소스 코드 관리 프로세스를 채택 했다 보장할 수 있습니다. 오픈 소스 프로젝트는 활성 사용자 커뮤니티를 하는 경우에 그것은 새롭고 오래 된 취약점이 있을 수 있습니다. 올해, 예를 들어 오픈 소스 루비 레일 웹 응용 프로그램 프레임 워크에는 발생 취약점 원격 코드 실행 공격 수는 약 200000 사이트. 최악의 경우, 이러한 버그 발생 했습니다 2007 년에, 프레임 워크의 모든 버전 6 년 이상에 대 한 이러한 문제를 있다. 이 기사에서는 오픈 소스 코드를 사용 하 여 엔터프라이즈 응용 프로그램에 대 한 위험의 범위 표시 됩니다 하 고 위험을 줄일 수 있는 방법 오픈 소스 코드 관리 기술.
오픈 소스 코드와 취약 한 구성 요소
어떤 사람들 생각 엔터프라이즈 응용 프로그램 위험에 오픈 소스 코드는 매우 제한 된 있기 때문에 여러 번 오픈 소스 코드는 제한 된 응용 프로그램 구성 요소에만 적용 됩니다. 그러나, 응용 프로그램 구성 요소 거의 항상 있다 전체 응용 프로그램의 전체 사용 권한 문제가 있는 구성 요소는 항상 심각한 결과 가질 수 있도록.
모든 코드의 취약점 수 작은 또는 심각한, 그리고 공격 하기 어려울 수 있습니다 하지만 일반적인 프레임 워크, 라이브러리, 또는 구성 요소에 취약점이 크게 위험 수 있습니다. 이제 무료 해커 도구 세트는 신속 하 게 업데이 트 됩니다, 이러한 문제 코드를 사용 하는 응용 프로그램은 신속 하 게 검색 하 고 다음 공격, 자동화 된 공격 도구를 사용 하는 기본 해커에 의해 뿐만 아니라 고급 해커에 의해 뿐만 아니라이 새로 자동화 된 스캐너에 취약점을 발견 추가 합니다.
새 응용 프로그램에 이러한 취약 한 구성 요소가 심각한 문제 이므로 최신 owasp 10 응용 프로그램 취약점 목록에 표시 합니다. Owasp 목록의 이전 버전에서 그것은 보다 일반적인 "보안 구성 오류" 항목에 속한 하지만 그것은 지금 독립 실행형 항목-9 일: "알려진된 취약점을 가진 구성 요소를 사용 합니다."
예를 들어 Owasp 취약점으로 구성 요소 2 2011 년에서까지 22 백만 다운로드 했다 지적 했다. 첫 번째 아파치 CXF 인증을 무시 하는:는 아파치 CXF 프레임 워크는 공격자가 어떤 웹 서비스를 수행 하기 위해 전체 권한을 가질 수 있도록 정체성 토큰을 제공할 수 없습니다. 두 번째는 오픈 소스 자바 프레임 워크 봄, 공격자가 전체 서버 제어를 임의 코드를 실행할 수 있습니다 학대 식 언어입니다. 결과 무엇입니까? 엔터프라이즈 응용 프로그램 사용이 문제가 프레임 워크, 그들은 공격자의 장난감을 될 수 있습니다.
오픈 소스 코드 관리를 통해 소프트웨어 보안 구현
오픈 소스 코드를 사용 하 여의 장점은 처음부터 응용 프로그램을 개발 하는 데 필요한 자원과 시간 보다 확실히 더 나은 하지만 다른 한편으로, 기업 여전히 프로세스를 사용 하 여 모든 제 3 자 코드를 업데이 트 되었는지 확인. 대부분의 개발 팀 최신 버전 혼자 이러한 코드의 일부의 기원 알지도 하지 않습니다.
그러나, 모든 오픈 소스 프로젝트는 취약점 보고서는 항상 정확 하 게는 취약 한 구성 요소 버전을 확인할 수 있도록 메커니즘, 번호를 이해할 수 있는 버전을 사용 합니다. 다행히, CVE 등 NVD 웹사이트 검색 및 쿼리가 정보 서비스를 제공 합니다.
오픈 소스 코드의 관리를 개선 하기 위해 개발 팀 먼저 만들 고 제 3 자 코드 사용 하 여 모든 종속 코드와 소스를 포함 하 여 목록을 최신 상태로 유지 해야 합니다. 메일링 리스트, 뉴스 및 업데이 트를 추적할 수 사람이 각 소스에 대 한 책임을 할당 합니다. 이 그냥 수동 활동 해서는 안; 모든 새로운 취약점 중앙된 정보 센터 보고는, 때문에 또한 모니터링 해야 공공 보안 메일링 리스트. 몇몇 팀은 그들은 코드 소스 관리 효율 향상을 위해 사용의 수를 줄일 수 있고 코드를 사용 하 여, 비즈니스 사례, 위험 평가, 허용 권한 등을 관리 하기 위한 전략은 확실히 찾을 수 있습니다.
응용 프로그램에서 문제가 있는 코드를 사용 하는 경우 먼저 취약점을 포함 하는 코드의 부분 사용 하 여 확인 하 고 그것은 해결 될 필요가 있는 위험 여부를 평가. 참고 많은 오픈 소스 프로젝트 패치 공개 하지 않습니다; 그리고 대신, 그들은 일반적으로 문제를 해결할 새로운 버전을 출시 하 여 중요 하다. 이후 인터넷에 연결 하는 응용 프로그램의 많은 엄격 하 게 검토 되어야 한다, 그리고 그들은 성공적으로 취약점에서 공격자 방지에 대 한 빠른 응답을 요구할 수 있습니다 중요 한 자료를 다루는 비상 대응 계획이입니다.
엔터프라이즈 개발자가 오픈 소스 라이브러리를 사용 하 여 오픈 소스 코드의 위험을 알고 있어야 합니다. 경우에 코드는 크게 소프트웨어 개발 시간을 줄일 수 있습니다, 그들을 사용 하 여 엔터프라이즈 응용 프로그램, 조직의 위험 수준을 증가 하 고 궁극적으로 위험 거래에 더 많은 시간을 필요로의 취약점 불필요 하 게 늘어날 수 있습니다. 사전에 이러한 문제에 관심을 지불, 조직 수 안전 하 게 사용 하 여 오픈 소스 라이브러리와 프레임 워크 응용 프로그램 및 전체 조직의 불필요 한 위험에 배치 하지 않고.