
개발의 현재 추세는 사소한 기능 만 제공하고 11 줄의 코드로 구성 되더라도 개발 단계에서 많은 패키지를 사용하는 것입니다. 이를 새로운 패키지를 출판하는 매우 자유로운 정책과 결합하면 이제 개발자를 대상으로하는 악의적 인 공격이 발생합니다. 위협 행위자들의 여러 가지 접근법이 있습니다.
그것들은 개발자가 자신을 타협 할 수있는 기술의 몇 가지 예일뿐입니다. 이는 PYPI 또는 NPM과 같은 저장소에 업로드 된 내용에 대한 모니터링 프로세스가 없으며, 행운의 뇌졸중이 이전 사건을 발견했습니다. 우리의 목표는 그것을 개선하는 것입니다.
## aura 프레임 워크 우리는 소스 코드를 대규모 (예 : 전체 PYPI 저장소)로 스캔하도록 설계된 프레임 워크를 만들었습니다. 이 프레임 워크는 개발자가 또는 모든 파일/디렉토리 세트에 의해 패키지를 설치할 때와 같은 주문시 소스 코드를 스캔하도록 설계되었습니다. 구현은 현재 Python Language와 PYPI를 대상으로하지만 다른 언어를 포함 할 수있는 기능을 제공하도록 설계되었습니다. (예 : JavaScript 및 NPM)
사용 사례는 다음과 같이 포함되지만 다음에는 이에 국한되지 않습니다.
고도로 최적화 된 하이브리드 분석 엔진이이를 달성합니다. 코드 실행없이 정적 코드 분석을 사용하여 완전히 안전한 환경에서 분석이 수행됩니다. Aura Core 엔진은 소스 코드에서 구문 분석 된 AST 트리를 분석하여 행동 분석 및 코드 실행 흐름을 수행하고 있습니다. 엔진은 또한 일정한 전파, 접힘 또는 정적 평가와 같은 일련의 규칙을 사용하여 AST 트리를 다시 쓰는 것을 지원합니다. 이들은 컴파일러가 코드를 최적화하는 데 사용하는 일련의 기술입니다. 이것이이 분석 방식이 "하이브리드"인 이유는 완전히 안전한 부분 평가를 통해 정적 분석을 향상시켜 더 간단한 난독 화 메커니즘을 물리 칠 수 있습니다.
아래에서 Aura AST 변환 엔진에서 인식하는 다양한 소스 코드 "Obfuscation"기술의 쇼케이스를 볼 수 있습니다.

프레임 워크 사용을 배우고 시작하려면 설치, 구성 및 사용법 문서를 읽으십시오.
기운의 핵심 부분은 이상 또는 잠재적 취약점에 대한 소스 코드를 분석하는 것입니다. Aura에는 설정 스크립트에서 Eval 사용과 같은 이상을 찾는 몇 가지 내장 분석기가 있습니다. 다른 분석기는 파일 시스템 구조 (비 소스 코드)를 예를 들어 자격 증명, 하드 코딩 된 API 토큰 등을 살펴 보는 것을 살펴 봅니다. 이러한 분석기는 스캔 데이터의 보안 AURA를 계산하는 데 사용되는 변칙을 정의하고 점수를 포함 할 수있는 히트를 호출하는 것을 생성합니다. 입력 데이터의 기능에 따라 제시된 이상의 합리적인 판단을 사용하는 것이 좋습니다. 예를 들어, 요청 라이브러리가 네트워크 관련 호출을 포함하는 것은 완전히 정상적이며 동시에 이미지 처리 라이브러리가 네트워크를 통해 데이터를 보내는 것은 예상되지 않습니다. 또한 대규모 저장소 스캔에 적합한 JSON 형식으로 데이터를 출력하거나 다른 제품에 대한 통합을 지원합니다. 다른 구성 요소의 설명 및 사용에 대해서는 문서를 참조하십시오.


##선적 서류 비치
이 프로젝트는 GPLV3 라이센스에 따라 라이센스가 부여됩니다. 자세한 내용은 License.txt 파일을 참조하십시오. 이 프레임 워크의 일부는 R2C 플랫폼, Libraries.io 등과 같은 다른 제품과의 (선택적) 통합을 포함합니다. 라이센스 및 사용 조건이 적용됩니다.