Thông tin tài liệu:
Chúng ta đã cùng nhau cài cái IIS6 và sau đó là PHP5 vào Windows Server 2003 Sau đó ta chạy hàm phpinfo trong file phpinfo.php thì thấy rằng báo rằng "page can not display" hay thậm chí sẽ không cho down load luôn file phpinfo.php về, vì sao IIS lại " đối xử " như thế đối với file .php khi mà rõ ràng ta đã cài đặt trình thông dịch PHP vào rồi.Hacking Security Sites part 21
Nội dung trích xuất từ tài liệu:
Hacking Security Sites part 21Rồi Giờ Mục tiêu kế tiếp: Cấu hình IIS hỗ trợ PHPChúng ta đã cùng nhau cài cái IIS6 và sau đó là PHP5 vào Windows Server 2003Sau đó ta chạy hàm phpinfo trong file phpinfo.php thì thấy rằng báo rằng page can notdisplay hay thậm chí sẽ không cho down load luôn file phpinfo.php về, vì sao IIS lại đối xử như thế đối với file .php khi mà rõ ràng ta đã cài đặt trình thông dịch PHP vàorồi.Để hiểu được điều này chúng ta sẽ xem wa một chút cơ chế làm việc của IIS .Khi nhận được request từ client đến 1 file nào đó (có phần mở rộng xác định,vd:.php,.asp,...) , IIS không thể tự ý xử lý một cách tùy tiện mà nó sẽ phải xem coi mìnhđã được chỉ đạo như thế nào.Trong trường hợp này, chúng ta hoàn toàn chưa cho IIS biết nó sẽ phải làm gì khi đụngphải thằng file có đuôi là.php ----->không ra lệnh thì tui ngồi chơi xơi nước cho khỏeĐể ngăn anh chàng nhân viên này trốn việc ta quy định cụ thể luôn cho hắn như sau: Khinhận được yêu cầu file *.php, anh bạn hãy chuyễn ngay file ấy cho đồng nghiệp là Trìnhthông dịch (TTD) PHP xử lý, sau khi nhận được kết quả trả về dưới dạng html thì hãy trảvề cho client đả gửi request!Và sau đây là các bước cụ thể để ra lệnh cho IIS:Các bạn chỉnh sửa các thông số như trong hình nhé:B1:Home Directory (chú ý thư mục c:Web là thư mục gốc trên Web Server)B2:Permission cho thư mục WebB3:Chọn Application ExtensionB4:Web Service ExtensionsOkie, sau khi làm xong các bước trên các bạn hãy view lại file phpinfo.php để xem cácthông tin trên Web Server.Được rồi đó...^-^Bây giờ bạn search thử chữ mysql trên trình duyệt đang hiển thị phpinfo.php.Kết quả: không tìm thấyOkieTIếp theo chúng ta sẽ tiếp tục công việc install MySql4 lên Home Server của mình ^-&CÒN TIẾP...... Cài đặt Cơ sở dữ liệu (CSDL) MySQL4 cho PHP5Cụ thể trong bài này, tớ đã test với mysql-essential-4.1.11-win32.msiCác bạn Download về sau đó cài đặt bình thường.(nếu muốn cấu hình lại trong các lần chạy sau thì chạy fileMySQLinMySQLInstanceConfig.exe , giả sử cài cài đặt MySQL vào thư mụcMySQL)Xong xuôi, bây giờ ta ung dung view lại cái trang phpinfo.php lúc trước, search thử Tablecủa mysql trên trình duyệt đang hiển thị phpinfo.phpLạ wa, vẫn không thấy gìĐiều đó chứng tỏ PHP vẫn không biết đến sự có mặt của MySQL .Đối với các phiên bản PHP trước đây (4,3,..) thì sau khi làm xong các bước trên chắnchắn sẽ search ra nguyên table của mysql.Vậy vấn đề nằm ở đâu?Thì ra, kể từ các phiên bản PHP 5 trở đi các nhà lập trình sáng tạo ra ngôn ngữ PHP đãquyết định không mặc định cho PHP xài CSDL MySQL như trước.Vậy ta phải làm sao đây?Bạn con nhớ file php.ini được tạo ra trong thư mục Windows, và php bản .zip mà tớ nóibạn tải về chứ, đã đến lúc mò đến nóSau đây là các bước cụ thể để nói cho PHP biết :có anh bạn CSDL MySQL trên đời vàanh hãy hợp tác với anh ấy để làm ăn ^-^ :B1: Giải nén bản PHP .zip , copy file libmySQL.dll vào thư mục WINDOWSB2:copy file php_mysql.dll vào thư mục cài đặt PHP (giả sử D:ProgramPHP)B3: Mở file php.ini :_sửa lại extension_dir =D:ProgramPHP\_Bỏ dấu ; trước dòng extension=php_mysql.dllOkLập lại thao tác view cái trang phpinfo.php, rồi search thử chữ mysql trên trình duyệt bạnsẽ thấy 1 table được dành riêng cho MySQL đang hiển thịĐến đây mọi thao tác cài đặt và cấu hình WebServer hỗ trợ PHP đã xong.Các lần cài đặt lại (nếu có) về sau ta chỉ cần nhớ 3 bước:B1: cài đặt IISB2: cài đặt PHP và cấu hình cho IIS nhận biết PHPB3: cài đặt MySQL và cấu hình cho PHP nhận biết MySQLenjoy !Tiêu đề: CGI hackingTác giả: (Someone)CGI hackingHiện nay các ứng dụng WEB dùng CGI rất nhiều,nó trở nên rất phổ biến và cũngđược các hacker quan tâm và không ít các lổi bảo mật được tìm thấy .Bạn muốnhack web sữ dụng CGI thì bạn phải biết chút ít về ngôn ngữ PERL.Nếu bạn khôngbiết gì về PERL thì tôi khuyên bạn nên đi tìm một cuốn sách nói về PERL màđọc,điều này chắc là không khó đối với bạn.Trước tiên ta hãy xem cách thức làm việt của GET và POST như thế nào:GET:GET là phương pháp mặt định để đệ trình các form,tuy là phương pháp mặt địnhnhưng có một vấn đề với việt sữ dụng GET.Phương pháp này thêm thông tin chứatrong form vào chuổi vấn tin URL(,nếu URL quá dài thì chương trình tự động xénbớt nên gây ra sự đệ trình không chính xác.Thông tin đực lấy từ biến môi trường$ENV{QUERY_STRING} ví dụ:#script.cgi?sometext#sẽ là:$file = sometext$file = $ENV{QUERY_STRING};#script.cgi?some&text#sẽ là:$name = some and $file = text($name, $file) = split(/&/, $ENV{QUERY_STRING});(chú ý:Tôi khuyên bạn biết chút ít về PERL cho dù bạn không lập trình bằngPERL,và điển hình là bài viết này bạn hiểu nó như thế nào ví dụ lệnh split() làmnhư thế nào...)Và nếu nhiều biến thì như sau:@pair = split(/&/, $ENV{QUERY_STRING});foreach $pair (@pairs){($name, $value) = split(/=/, $pair);#used to make + into spaces$value =~ tr/+/ /;#used to convert url encoding ( ...