허용받지 않은 서비스 대상으로 해킹을 시도하는 행위는 범죄 행위입니다. 해킹을 시도할 때에 발생하는 법적인 책임은 그것을 행한 사용자에게 있다는 것을 명심하시기 바랍니다.
CVE-ID
CVE-2022-2589
개요
- beancount/fava 1.22.3 이전 버전에서 XSS 취약점 발견되었습니다.
Beancount는 금융 거래 기록을 텍스트 파일로 정의하고, 메모리에서 읽고, 다양한 보고서를 생성하고, 웹 인터페이스를 제공하는 컴퓨터 언어입니다.
fava는 회계 도구 Beancount의 웹 인터페이스입니다.
설명
Fava v1.22에는 손익계산서 대시보드에 필터 변환에 대한 부적절한 유효성 검사로 인해 사용자가 XSS를 수행할 수 있는 변환 필터 기능이 있습니다.
Fava 데모 페이지 https://fava.pythonanywhere.com/example-beancount-file/income_statement/
취약한 매개변수를 찾기 위하여 드롭/다운 메뉴에서 필터링을 해줍니다.
XSS 취약점을 확인하기 위하여 스크립트 코드를 입력한 후 확인해 보면 스크립트 코드가 동작하여 팝업창이 뜨는 것을 확인할 수 있습니다.
Endpoints
https://fava.pythonanywhere.com/huge-example-file/income_statement/?conversion=at_value
Payload
"><img src=a onerror=alert(document.domain)>
Endpoints 및 Payload는 더 확인이 가능 합니다.
영향 받는 제품 및 버전
- beancount/fava 1.22.3 이전 버전
대응방안
- fava버전 1.22.2 이상으로 업그레이드
- HTTP 요청의 데이터 입력을 삭제하고 검색 중 쿼리 매개변수 값과 같은 항목을 사용자에게 다시 표시하기 전에 모든 데이터의 유효성을 검사, 필터링 또는 이스케이프 합니다.
- ?, &, /, 및 공백 <과 같은 특수 문자 >를 해당 HTML 또는 URL로 인코딩 된 해당 문자로 변환합니다.
- 사용자에게 클라이언트 측 스크립트를 비활성화할 수 있는 옵션을 제공합니다.
- 잘못된 요청을 리디렉션합니다.
- 두 개의 개별 IP 주소에서 온 로그인을 포함하여 동시 로그인을 감지하고 해당 세션을 무효화합니다.
참고사이트
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-2589
'Code::Security > 취약점' 카테고리의 다른 글
Oracle WebLogic 취약점 (CVE-2019-2618) (0) | 2022.08.10 |
---|---|
보안 취약점 정보 제공 사이트 및 참고 사이트 (0) | 2022.08.09 |
TOTOLink A3600R Firmware 취약점 (CVE-2022-34993) (0) | 2022.08.05 |
드레이텍 비거(DrayTek Vigor) 라우터에서 인증되지 않은 원격 코드 실행 취약점 발견 (0) | 2022.08.05 |
phpMyAdmin - Client-Side Code Injection (CVE-2010-4480) (0) | 2022.08.01 |