GitHub, 코드에서 취약점을 찾는 기계 학습 시스템 출시

GitHub 로고

GitHub 공개 며칠 전 추가 기계 학습 시스템 실험l 코드 스캔 서비스 일반적인 유형의 취약점을 식별하기 위해 코드에서. 이를 통해 GitHub의 CodeQL 기반 코드 분석 기술이 개선되었으며 이제 기계 학습(ML)을 사용하여 코드에서 잠재적인 보안 취약점을 찾습니다.

그리고 그것은 GitHub CodeQL 기술 확보 Semmie 인수의 일환으로. CodeQL은 보안 연구 팀에서 코드의 의미론적 분석을 수행하는 데 사용되며 GitHub는 이를 오픈 소스로 만들었습니다.

이러한 모델을 통해 CodeQL은 더 많은 신뢰할 수 없는 사용자 데이터 스트림을 식별할 수 있으므로 더 많은 잠재적인 보안 취약점을 식별할 수 있습니다.

기계 학습 시스템을 사용하면 식별된 문제의 범위를 크게 확장할 수 있다는 것이 관찰되었으며, 그 분석에서 시스템은 이제 일반적인 패턴 검증에 국한되지 않고 알려진 프레임워크에 묶이지 않습니다.

새 시스템에서 식별된 문제 중 XSS(교차 사이트 스크립팅)로 이어지는 오류, 파일 경로 왜곡(예: "/.." 표시를 통한), SQL 및 NoSQL 쿼리 대체가 언급됩니다.

코드 스캐닝은 이제 새로운 딥 러닝 모델을 활용하여 잠재적인 보안 취약점을 더 많이 찾을 수 있습니다. 이 실험적 기능은 GitHub.com의 JavaScript 및 TypeScript 리포지토리에 대해 공개 베타에서 사용할 수 있습니다.

GitHub의 새로운 도구 fue 무료 공개 베타로 출시 모든 사용자를 위해 이 기능은 기계 학습 및 딥 러닝을 사용하여 제품이 배송되기 전에 코드 기반을 스캔하고 일반적인 보안 취약성을 식별합니다.

실험적 기능은 현재 GitHub 고급 보안 기능으로 GitHub Enterprise 사용자를 포함하여 모든 플랫폼 사용자가 사용할 수 있으며 JavaScript 또는 TypeScript로 작성된 프로젝트에 사용할 수 있습니다.

오픈 소스 생태계의 급속한 발전과 함께 덜 자주 사용되는 라이브러리의 롱테일이 계속 증가하고 있습니다. 우리는 수동으로 생성한 CodeQL 쿼리의 예제를 사용하여 딥 러닝 모델을 훈련시켜 오픈 소스 라이브러리와 내부적으로 개발된 폐쇄 소스 라이브러리를 인식하도록 합니다.

도구 네 가지 가장 일반적인 취약점을 찾도록 설계되었습니다. 다음 두 가지 언어로 작성된 프로젝트에 영향을 미칩니다. XSS(교차 사이트 스크립팅), 경로 주입, NoSQL 주입 및 SQL 주입.

코드 스캔 서비스를 사용하면 잠재적인 문제에 대해 각 git 푸시 작업을 스캔하여 개발 초기 단계에서 취약점을 감지할 수 있습니다.

결과는 pull 요청에 직접 첨부됩니다.. 이전에는 취약한 코드의 일반적인 예와 함께 패턴을 분석하는 CodeQL 엔진을 사용하여 검사를 수행했습니다(CodeQL을 사용하면 취약한 코드의 템플릿을 생성하여 다른 프로젝트의 코드에서 유사한 취약성의 존재를 감지할 수 있음).

새로운 분석 기능을 통해 코드 스캐닝은 XSS(교차 사이트 스크립팅), 경로 주입, NoSQL 주입 및 SQL 주입과 같은 XNUMX가지 일반적인 취약점 패턴에 대해 더 많은 경고를 생성할 수 있습니다. 함께, 이 네 가지 취약점 유형은 JavaScript/TypeScript 에코시스템의 최근 취약점(CVE) 중 많은 부분을 나타내며, 개발 프로세스 초기에 이러한 취약점을 감지하기 위해 코드 스캔 기능을 개선하는 것은 개발자가 보다 안전한 코드를 작성하는 데 도움이 되는 핵심입니다.

새로운 기계 학습 엔진 이전에 알려지지 않은 취약점을 식별할 수 있습니다. 특정 취약점을 설명하는 코드 패턴의 반복과 관련이 없기 때문입니다. 그러한 기회의 대가는 CodeQL 기반 검사에 비해 오탐(false positive) 수가 증가한다는 것입니다.

최종적으로 그것에 대해 더 알고 싶어하는 사람들을 위해, 당신은 세부 사항을 확인할 수 있습니다 다음 링크에서.

테스트 단계에서 새로운 기능은 현재 JavaScript 및 TypeScript 코드가 있는 리포지토리에서만 사용할 수 있다는 점을 언급하는 것도 중요합니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.