참고 : 03/11/2020에 Avast는이 통역사를 전 세계적으로 비활성화하기로 결정했다고 발표했습니다!
주요 Avast 안티 바이러스 프로세스를 AvastSVC.exe라고하며 시스템으로 실행됩니다.

이 서비스는 낮은 수준의 안티 바이러스 엔진을로드하고 파일 시스템 미니 필터 또는 차단 된 네트워크 트래픽과 같은 소스에서받은 신뢰할 수없는 데이터를 분석합니다.
설계에 의한 특권이 높고 신뢰할 수없는 입력을 처리하더라도, 이는 부정확하지 않으며 완화 적용 범위가 좋지 않습니다. 이 과정의 모든 취약점은 중요하며 원격 공격자가 쉽게 액세스 할 수 있습니다.
그래서 .. 맞춤형 자바 스크립트 통역사가 포함되어 있다는 것이 좋지 않을 수도 있습니다 .... ???? ?

이 저장소에는 대화 형 쉘이 포함되어있어 Linux의 해석자를 취약성 연구를 위해 테스트 할 수 있습니다.
시도해 보는 방법은 다음과 같습니다. 먼저 종속성을 설치하십시오.
$ sudo apt install libreadline-dev:i386 libc6-dev-i386 gcc-multilib
$ sudo yum install readline-devel.i686 glibc-devel.i686 libgcc.i686
이제이 저장소를 복제 할 수 있습니다.
$ git clone https://github.com/taviso/avscript.git
$ cd avscript
$ git submodule update --init --recursive
모든 것이 좋아 보이면 빌드하면 avscript 준비되어야합니다.
$ make
성능의 이유로 Avast는 자신이 겪는 모든 JavaScript 파일을 해석하지 않으며 휴리스틱을 사용하여 필요한지 확인합니다. 이 저장소에 포함 된 javascript.txt 파일을 추가하면 항상 휴리스틱을 트리거하기에 충분합니다.
예를 들어, 취약성을 발견하고 Windows에서 재생산하려면 먼저 다음을 수행합니다.
$ cat yourtestcase.js javascript.txt > ReproForWindows.js
이제 여전히 당신이 기대하는 것을 수행하는지 확인하십시오.
$ ./avscript ReproForWindows.js
main(): File ReproForWindows.js` loaded, about to initialize interpreter...
Segmentation fault (core dumped)
그런 다음 Windows에서 재현 된 충돌을 확인하십시오.
Avast 서비스는 보호 된 프로세스이며, 이는 사용자 공간에서 디버깅하는 것이 까다 롭습니다. KD가 구성된 경우,이를 취소 한 다음 사용자 공간에서 디버깅하는 것이 잘 작동 할 수 있습니다.
32 비트에서 작동하는 빠르고 쉬운 솔루션은이 작업을 수행하는 것입니다 (PatchGuard는 X64에서는 허용되지 않지만 BreakPoint 명령과 비슷한 일을 할 수 있습니다).

"자체 방어 활성화"라고 불리는 "문제 해결"아래에 설정이있어서 비활성화해야합니다. 이 설정은 SSDT에서 OpenProcess() 고치는 것을 비활성화한다고 생각합니다.
서비스가 중단되는 동안 파일 시스템 작업이 교착 상태가되지 않도록 Avast UI의 "방패"를 일시적으로 비활성화해야 할 수도 있습니다.
Avast는 엔진에 대한 기호를 게시하지 않지만 IDA 또는 GDB로 디버깅하는 것이 여전히 가능합니다. LoadLibrary 문서의 Linux에서 Windows 코드를 디버깅하는 것에 대한 몇 가지 메모가 있습니다.
IDA를 사용하려면 gdbserver 백엔드를 사용하는 것이 좋습니다.
이와 같은 것을 사용하기 만하면 먼저 GDBSERVER 패키지를 설치해야 할 수도 있습니다.
$ gdbserver 0.0.0.0:23946 ./avscript
이것은 놀랍게도 잘 작동하며, 심지어 의사 코드 중단 점도 작동합니다.

취약성을 발견하면 비판적이고 웜이 가능할 것입니다.
시급히 신고하십시오.