본문 바로가기

SUA/오픈소스 보안

[LGTM] CodeQL 실습

LGTM에서 CodeQL을 실습할 수 있다.

 

기본 쿼리 구조

/**
 *
 * Query metadata
 *
 */

import /* ... CodeQL libraries or modules ... */

/* ... Optional, define CodeQL classes and predicates ... */

from /* ... variable declarations ... */
where /* ... logical formula ... */
select /* ... expressions ... */

기본적인쿼리 수행

2017년 6월 10일과 9월 28일 사이의 일 수를 계산하는 쿼리

 

where 부분은 함수 f가 7개 이상의 인수가 있는 함수로 제안한다.

Function print_rules를 클릭해보면

이렇게 찾아준다.

 

매개변수 p를 액세스되지 않는 매개변수로 제한하여 사용하지 않는 매개변수를 찾는 코드

str과 principal

 

'SUA > 오픈소스 보안' 카테고리의 다른 글

[SUA] 오픈소스 보안 8주차  (0) 2021.11.28
[SUA] 오픈소스 보안 7주차  (0) 2021.11.28
[SUA] 오픈소스 보안 6주차  (0) 2021.11.21
[SUA] 오픈소스 보안 7주차  (0) 2021.11.21
[LGTM] Sherlock 분석  (0) 2021.11.21