sed를 사용하여 자바스크립트 파일에서 악성 코드를 제거하는 방법

sed를 사용하여 자바스크립트 파일에서 악성 코드를 제거하는 방법

일부 해킹된 자바스크립트 파일에서 다음과 같은 두 가지 패턴을 발견했습니다.

<!--2d3965-->  some code  <!--/2d3965-->

/*2d3965*/ some code /*/2d3965*/

다음 명령을 사용하여 파일에서 첫 번째 패턴을 제거할 수 있습니다.

sed -i 's/<!--2d3965-->.*<!--\/2d3965-->//g' javascript_file.js

그러나 유사한 명령을 사용하여 두 번째 패턴을 제거할 수는 없습니다.

sed -i 's/\/\*2d3965\*\/.\+\/\*\/2d3965\*\///g' javascript_file.js

두 번째 패턴을 제거하는 올바른 구문은 무엇입니까?

답변1

.php, .js 및 .html 파일에 대한 이러한 유형의 공격에 사용한 코드는 다음과 같습니다.

perl -p -i.orig -0 -e 's/<\?\s*#([0-9a-z]{6})#.*#\/\1#\s*\?>//gs; s/<\!--([0-9a-z]{6})-->.*<!--\/\1-->//gs;'

짜증나네요... 공격자가 어떻게 침입했는지 파악하고 백업 상태도 확인해야 합니다. 백업도 오염되었기 때문에 4백만 개의 파일에 대해 위의 작업을 한 번 실행해야 했습니다.

관련 정보