| Hiện thời Webstie của chúng tôi đang tạm đóng dể sửa chữa nhằm mục đích phục vụ tốt hơn cho nhu cầu của các bạn. Khi mọi công việc sữa chữa hoàn thành chúng tôi sẽ gửi email thông báo đến tất cả các bạn. Mong các bạn vui ḷng ghé lại sau. Thành thật xin lỗi v́ sự cố này. >> Bạn đă có tài khoản chưa, click vào đây để đăng kư ! Nếu bạn đă là thành viên của L'@mour ™, vui ḷng đăng nhập để tham gia thảo luận. Cảm ơn ! |
| Bảo Mật Ibf | |
|---|---|
| Tweet Topic Started: Jun 20 2006, 07:42 PM (222 Views) | |
| KiosBios | Jun 20 2006, 07:42 PM Post #1 |
![]()
|
[quote name='Cuong Long' date='Jun 13 2003, 02:55 PM' post='3216'] - CHMOD file conf_global.php thành "004" (có một số host ko hỗ trợ kiểu này) - CHMOD thư mục chứa IBF thành "701" - Tuyệt đối ko đặt user & pass database trùng với user & pass FTP Đầu tiên tôi sẽ hướng dẫn cách đơn giản để dấu chuỗi index.php trên thanh tŕnh duyệt. - Các bạn dùng chức năng Search của Explorer để t́m toàn bộ trong thư mục của IBF chuỗi sau : index., sau đó bạn mở file đó ra và xóa index. đi. - Mở file conf_global.php ra, và t́m đoạn này : $INFO['php_ext'] = 'php'; - Bạn đổi thành : $INFO['php_ext'] = ''; Từ giờ trở đi, IBF của bạn sẽ không c̣n index.php trên thanh address nữa. Chú ư: Nếu bạn làm như vậy th́ việc thử nghiệm trên localhost sẽ khó khăn với các form. Nhưng khi up lên web th́ vẫn okie như thường thủ thuật nhỏ : Các bạn có thể đổi tên file index.php thành index.php3 hoặc index.php4 để pḥng tránh hacker view index.php. Bạn có thể đổi tên index.php thành index.php3 hoặc index.php4 hoặc bất kỳ bằng cách : Ví dụ chúng ta đă dấu index.php trên thanh Address và bây giờ muốn đổi tên file index.php thành file khác. Chẳng hạn như vidu.php đi nhé. - Chúng ta tạo file .htaccess với nội dung như sau DirectoryIndex vidu.php index.php index.php3 index.html - Sau đó up lên thư mục chứa IBF. Thế là xong. Lưu ư : có vài bạn không tạo được file .htaccess trong windows. Tôi xin up lên đây luôn. Các bạn chỉ cần download về và dùng tŕnh soạn thảo text sửa vidu.php thành file của bạn là được. Tiếp theo đây: *Đổi tên thư mục : - Các bạn dùng Explorer t́m tất cả file có text : sources/. - Vào từng file, dùng chức năng Find and Replace (Mọi tŕnh soạn thảo text đều hỗ trợ chức năng này). - Bạn thay thế sources/ thành newfolder/ chẳng hạn (bạn có thể thay newfolder thành bất cứ tên ǵ bạn thích). - Khi xong tất cả mọi file. Bạn thoát ra, và đổi tên thư mục sources thành tên mới của bạn. Thế là xong. PS : Áp dụng tương tự cho thư mục Skin. *Đổi tên file admin.php - Bạn dùng Explorer t́m file có chứa : admin. - Thay thế bằng tên file admin mới, ví dụ : newadmin.php (Nếu bạn chưa dấu file index th́ khi đổi chỉ cần nhập newadmin. là được, ḿnh chỉ thế này để các bạn theo dơi từ đầu và làm theo cho dễ). Đến đây bạn đă hoàn thành rồi đấy. xin nhắc các bạn thêm điều này. Nếu các bạn chưa nắm vững cách hoạt động của các file này th́ delete ngay đi nhé : ssi.php show.php phpinfo.php Dấu file conf_global.php : ở đây tôi xin hướng dẫn đổi conf_global.php thành abc.php vào : source/admin/admin_functions.php t́m tất cả những từ conf_global.php thay bằng abc.php T́m trong 3 file : admin.php , index.php , ssi.php tất cả những từ conf_global.php thay bằng abc.php Sau đó đổi file conf_global.php thành abc.php Session ID : +Bước 1: Mở file ad_settings. php T́m code sau: case 'dourl': $this->save_config( array ( 'number_format', 'html_dir','safe_mode_skins', 'board_name','board_url','home_name','home_url', 'disable_gzip', 'html_url','upload_url', 'upload_dir', 'print_headers', 'header_redirect', 'debug_level', 'sql_debug' ) ); break; thay bằng : case 'dourl': $this->save_config( array ( 'number_format', 'html_dir','safe_mode_skins', 'board_name','board_url','home_name','home_url', 'disable_gzip', 'html_url','upload_url', 'upload_dir', 'print_headers', 'session_hide', 'header_redirect', 'debug_level', 'sql_debug' ) ); break; t́m tiếp : $ADMIN->html .= $SKIN->add_td_row( array( "<b>Print HTTP headers?</b><br>(Some NT installs require this off)" , $SKIN->form_yes_no( "print_headers", $INFO['print_headers'] ) ) ); thêm đường sau : $ADMIN->html .= $SKIN->add_td_row( array( "<b>Hide Session ID?</b><br>(Removes Session ID from the URL)" , $SKIN->form_yes_no( "session_hide", $INFO['session_hide'] ) ) ); bước2 mở index.php t́m : if ($ibforums->member['id'] and ( $std->my_getcookie('hide_sess') ) ) { $ibforums->session_id = ""; } thêm vào trước : if ($INFO['session_hide']) { $ibforums->session_id = ""; } +Bước 3: Mở file conf_global. php Thêm vào bất cứ đâu ḍng code sau : $INFO['session_hide'] = '1'; Code Pass cho Cpadmin, Cpmod : Bạn dùng cách dưới đây để lập password cho cpadmin, và cpmod... để tránh khi bạn quên logout, người khác dùng nick bạn vào quậy phá forum Demo : http://vncool.com/forum/admin.php Các bạn down load file : secondpass unzip file đó ra sẽ được 3 file: auth.php, create_pwd.php, htpasswd.txt file create_pwd.php được dùng để tạo pass cho bạn sử dụng cách sử dụng: up load file auth.php và htpasswd.txt vào folder có chứa file bạn muốn bảo vệ open file bạn cần bảo vệ, đặt đoạn code sau vào đầu tiên của file <?php include "auth.php";?> up load file create_pwd.php lên host, đâu cũng được miễn là bạn có thể truy cập nó bằng internet explorer dùng IE để truy cập vô file create_pwd.php, bạn sẽ thấy có ḍng: Enter your password: bạn type pass word bạn muốn set vào ô bên cạnh, nhấn Encode khi đó, bạn sẽ nhận được 1 ḍng dạng: Your password has been encoded as: 098f6bcd4621d373cade4e832627b4f6 phần đằng sau dấu ":" (đánh dấu đỏ) chính là password của bạn đă được mă hóa, tạm gọi là pass của bạn bây giờ vào edit file htpasswd.txt trên host bạn đổi chữ test thành tên khác mà bạn muốn, bạn thay thế toàn bộ phần đằng sau dấu ":" bằng chính pass của bạn đă lấy được ở bước trên (bước dùng file create_pwd.php) sau đó save file htpasswd.txt lại và đổi tên nó thành .htpasswd bạn hăy chú ư tới dấu chấm đằng trước của tên file sau khi đổi tên nhé bây giờ vào file bạn bảo vệ, bạn sẽ thấy nó sẽ hỏi pass trước khi cho phép bạn truy cập vào user = user bạn đă nhập thay cho chữ test ở file htpasswd.txt pass = pass của bạn Xoá bỏ Session của IBF trên thanh Address : Tiến hành như sau : mở file functions.php . T́m ḍng : $this->session_id = md5( uniqid(microtime()) ); thay bằng $this->session_id = ""; Xong . Nh́n IBF gọn gàng & an toàn hơn. Script giúp backup databse thường xuyên : <? $appname="Backup MySQL"; $copyright="©Le Van Chuong - VnToDaY"; function sqldumptable($table, $fp=0) { $tabledump = "\n"; $tabledump.= "# Struc cua table: " .$table . "\n"; $tabledump.= "DROP TABLE IF EXISTS $table;\n"; $tabledump.= "CREATE TABLE $table (\n"; $firstfield=1; $fields = mysql_query("SHOW FIELDS FROM $table"); while ($field = mysql_fetch_array($fields)) { if (!$firstfield) { $tabledump .= ",\n"; } else { $firstfield=0; } $tabledump .= " $field[Field] $field[Type]"; if (!empty($field["Default"])) { $tabledump .= " DEFAULT '$field[Default]'"; } if ($field['Null'] != "YES") { $tabledump .= " NOT NULL"; } if ($field['Extra'] != "") { $tabledump .= " $field[Extra]"; } } mysql_free_result($fields); $keys = mysql_query("SHOW KEYS FROM $table"); while ($key = mysql_fetch_array($keys)) { $kname=$key['Key_name']; if ($kname != "PRIMARY" and $key['Non_unique'] == 0) { $kname="UNIQUE|$kname"; } if(!is_array($index[$kname])) { $index[$kname] = array(); } $index[$kname][] = $key['Column_name']; } mysql_free_result($keys); while(list($kname, $columns) = @each($index)){ $tabledump .= ",\n"; $colnames=implode($columns,","); if($kname == "PRIMARY"){ $tabledump .= " PRIMARY KEY ($colnames)"; } else { if (substr($kname,0,6) == "UNIQUE") { $kname=substr($kname,7); } $tabledump .= " KEY $kname ($colnames)"; } } $tabledump .= "\n);\n\n"; if ($fp) { fwrite($fp,$tabledump); } else { echo $tabledump; } $rows = mysql_query("SELECT * FROM $table"); $numfields=mysql_num_fields($rows); $datastruc = "# Data cua table: " .$table . "\n"; fwrite($fp,$datastruc); while ($row = mysql_fetch_array($rows)) { $tabledump = "INSERT INTO $table VALUES("; $fieldcounter=-1; $firstfield=1; while (++$fieldcounter<$numfields) { if (!$firstfield) { $tabledump.=", "; } else { $firstfield=0; } if (!isset($row[$fieldcounter])) { $tabledump .= "NULL"; } else { $tabledump .= "'".mysql_escape_string($row[$fieldcounter])."'"; } } $tabledump .= ");\n"; if ($fp) { fwrite($fp,$tabledump); } else { echo $tabledump; } } mysql_free_result($rows); } // MAIN PROC $server = "localhost"; $username = "root"; //username cua mysql $password = "chuong2404"; // pass cua mysql $tablebk = "phpbb"; // Ten table can luu tru $pathtofilename =""; // duong dan den thu muc can luu tru // Tinh ngay thang; $ngaythang = $today = date("d")."_".date("m")."_".date("y")."__time".date("g")."_".date("i"); //open file $filename = $pathtofilename."/backup_date".$ngaythang; $filehandle=fopen($filename.".sql","w"); // Connect to mysql $connect = mysql_connect($server,$username,$password); if (!$connect) { echo "khong ket noi duoc voi mysql"; exit; } mysql_select_db($tablebk); // Header $header = "##########################################\n"; $header.= "# Du lieu backup cua table: $tablebk #\n"; $header.= "# Ngay backup: " .$ngaythang ." #\n"; $header.= "#© by Le Van Chuong VnToDaY#\n"; $header.= "##########################################\n"; fwrite($filehandle,$header); // end $tablesbackup = mysql_query("SHOW tables"); while ($tablebackup = mysql_fetch_array($tablesbackup)) { sqldumptable($tablebackup[0], $filehandle); } fwrite($filehandle, "\n\n\n"); fclose($filehandle); $data = implode("", file($filename.".sql")); $gzdata = gzencode($data, 9); $fp = fopen($filename.".gz", "w"); fwrite($fp, $gzdata); fclose($fp); if (file_exists($filename.".sql")) { unlink($filename.".sql"); } ?> Lời kết : Trên đây là những kinh nghiệm để bảo mật IBF, đặc biệt là để chống hack local. Tuy nhiên, 1 điều quan trọng nhất mà bạn ko thể quên là phải cập nhật thường xuyên các bug (lỗi bảo mật) về IBF để fix ngay lập tức Bài viết này do CL sưu tập nhiều nguồn và gom lại thành 1 chủ đề Chúc vui Cuồng Long <!##emo&:lol:##> [/quote] Em đọc không hiểu ǵ hết , anh giải thích giúp em nha
|
| <A href="http://fovix.vze.com"><img src="http://i79.photobucket.com/albums/j143/Lasento/Type3.jpg" border="0"></A> | |
![]() |
|
| 1 user reading this topic (1 Guest and 0 Anonymous) | |
| « Previous Topic · ..: Invision Free Service :.. · Next Topic » |




, anh giải thích giúp em
nha



9:25 PM Jul 11