เรื่องความปลอดภัยในการพัฒนาโปรแกรม PHP (PHP Security) ขึ้นมาสักตัว เป็นเรื่องที่สำคัญมากสำหรับนักพัฒนาระบบ และยิ่งโดยเฉพาะผู้ที่จะนักพัฒนาระบบแจกจ่ายเป็น Open Source ด้วยแล้ว การทำระบบที่ขาดความปลอดภัย ย่อมหมายถึงการส่งต่อความเสี่ยงให้กระจายสู่นักพัฒนาระบบคนอื่นไปด้วย คงเป็นเรื่องน่าเศร้ามากเลยทีเดียวครับ
ลิงค์ด้านล่างนี้ จะช่วยแนะนำวิธีการเขียน PHP อย่างไรให้ปลอดภัย น่าสนใจมากครับ
Top 10 Resources for Basic PHP Security
บทความเรื่อง Top 10 Resources for Basic PHP Security โดย Andrew Sellick แนะนำเวบไซต์ที่ให้ความรู้ในการเพิ่มความปลอดภัยให้กับ web application ที่เขียนขึ้นจาก PHP
อ่านได้จาก
http://www.andrewsellick.com/50/top-10-resources-for-basic-php-security
Secure file upload in PHP web applications
เอกสารเรื่อง Secure file upload in PHP web applications โดย Alla Bezroutchko กล่าวถึงช่องโหว่ทางด้านความปลอดภัยที่มักจะเกิดขึ้นจากสคริปท์ PHP ที่ทำหน้าที่อัพโหลดไฟล์ เช่น เปิดเผยไฟล์ในระบบหรือทำให้สามารถเอ็กซิคิวท์โค้ดที่ต้องการในระบบได้ นอกจากนี้ยังบอกถึงวิธีการรักษาความปลอดภัยให้กับสคริปท์ PHP ที่ใช้ในการอัพโหลดไฟล์ด้วย
ดาวน์โหลดได้จาก
http://www.scanit.be/uploads/php-file-upload.pdf
Protect Flash files from download, Protect Flash files from import.
บอกวิธีการใช้สคริปท์ PHP และการกำหนดค่าของ web server Apache เพื่อป้องกันไม่ให้ผู้เยี่ยมชมไม่ให้สามารถดาวน์โหลดไฟล์ .swf จากเวบไซต์ของคุณได้
อ่านได้จาก
http://ryanfait.com/articles/2007/05/23/protect-flash-swf-files-from-download/
Secure Website Login Programming with PHP & MySQL, Page 1
บทความเรื่อง Secure Website Login Programming with PHP & MySQL, Page 1 แนะนำหลักการเขียนโปรแกรมหน้า login ของเวบไซต์ที่ใช้ PHP และ MySQL อย่างปลอดภัย
อ่านได้จาก
http://www.skrysak.com/articles/securephp1.php
Disable commonly abused PHP functions for increased security
บทความเรื่อง Disable commonly abused PHP functions for increased security บอกวิธีเพิ่มความปลอดภัยให้กับ web server ที่ใช้ PHP ด้วยการปิดฟังก์ชั่นที่มักจะถูกใช้ไปในทางผิดได้แก่ show_source, system, shell_exec, passthru, phpinfo, popen, และ proc_openv
อ่านได้จาก
http://itpuzzle.com/3/disable-commonly-abused-php-functions-for-increased-security/
LSO: MSFweb 3.0 part 2
วิดีโอสาธิตการโจมตีช่องโหว่ Local File Inclusion ในโค้ด PHP ที่มีช่องโหว่นี้
ดูได้จาก
http://www.milw0rm.com/video/watch.php?id=67
Aircrack-ptw
วิดีโอสาธิตการใช้ aircrack-ptw ใน BackTrack 2 เพื่อแคร็ก WEP ของเครือข่าย wireless
ดูได้จาก
http://www.milw0rm.com/video/watch.php?id=64
Hacking SQL in Linux using the SecureState Swiss Army Knife
วิดีโอสาธิตการใช้ SecureState Swiss Army Knife ใน BackTrack 2 เพื่อโจมตีช่องโหว่ใน SQL server
ดูได้จาก
http://www.milw0rm.com/video/watch.php?id=66
Classical Basic Local Buffer Overflow
วิดีโอสาธิตการพัฒนาโค้ดโจมตีช่องโหว่ buffer overflow แบบง่าย ๆ
ดูได้จาก
http://www.milw0rm.com/video/watch.php?id=69
Compile Apache, PHP (With suhosin patch) + mod_perl
บทความเรื่อง Compile Apache, PHP (With suhosin patch) + mod_perl บอกวิธีการติดตั้ง Apache, PHP (ที่ patch ด้วย suhosin ซึ่งจะช่วยเพิ่มความปลอดภัยให้กับ PHP) และ mod_perl ในลีนุกซ์/ยูนิกซ์
อ่านได้จาก
http://techblog.bluechiphosting.com/linux-tips-tricks/compile-apache-php-with-suhosin-patch-mod_perl
Securing PHP Apps
เอกสารนำเสนอเรื่อง Securing PHP Apps โดย Ilia Alshanetsky กล่าวถึงช่องทางด้านความปลอดภัยที่มักปรากฏในโค้ด PHP เช่น Cross-Site Scripting, SQL Injection, Code Injection, Header Injection, Session Fixation, Information Disclosure ตัวอย่างโค้ดที่มีช่องโหว่ และวิธีการป้องกันจากช่องโหว่เหล่านี้
ดาวน์โหลดได้จาก
http://ilia.ws/files/zend_security.pdf
IP Banning
บทความเรื่อง IP Banning บอกวิธีเขียนสคริปท์ PHP ที่สามารถแบน IP address ที่ต้องการได้
อ่านได้จาก
http://lancebuzz.com/showthread.php?t=33
Thoughts on securing a new hosting server’s PHP Installation…
บทความเรื่อง Thoughts on securing a new hosting server’s PHP Installation… แนะนำวิธีการติดตั้ง Hardened PHP และ Suhosin ซึ่งเป็น patch และ extension ซึ่งทำให้ PHP มีความปลอดภัยมากขึ้น
อ่านได้จาก
http://kevin.hatfieldfamilysite.com/?p=76
There are nine million hackers in Beijing
บทความเรื่อง There are nine million hackers in Beijing วิเคราะห์ความพยายามการโจมตี web server ผ่านทางสคริปท์ php ที่ผู้เขียนพบ
อ่านได้จาก
http://sisms.no-ip.com/techblog/nine_million_hackers_in_beijing.php
Pro PHP Security / Preventing SQL Injection
บทความเรื่อง Pro PHP Security / Preventing SQL Injection โดย Chris Snyder และ Michael Southwell แนะนำให้รู้จักกับการโจมตี web application ที่เรียกว่า SQL injection การโจมตีนี้ทำงานอย่างไร และวิธีป้องกัน
อ่านได้จาก
http://www.phpbuilder.com/columns/ProPHPSecurity_excerpt.php3
Site security in PHP
บทความเรื่อง Site security in PHP บอกวิธีการเพิ่มความปลอดภัยให้กับเว็บไซต์โดยการใช้สคริปท์ PHP
อ่านได้จาก
http://www.webdotdev.com/nvd/server-side/php/site-security-in-php.html
Checklist for Securing PHP Configuration
บทความเรื่อง Checklist for Securing PHP Configuration บอกวิธีการเปลี่ยนแปลงค่า configuration ที่เป็นค่าเริ่มต้นให้มีความปลอดภัยยิ่งขึ้น
อ่านได้จาก
http://aymanh.com/checklist-for-securing-php-configuration
Fighting spam and email harversters on your website: bad behavior
บทความเรื่อง Fighting spam and email harversters on your website: bad behavior โดย pixeline แนะนำการใช้ Bad Behavior ซึ่งเป็นสคริปท์ PHP เพื่อป้องกันเว็บไซต์จาก spambots และโปรแกรมรวมรวมที่อยู่อีเมล (email harvesters)
อ่านได้จาก
http://www.pixeline.be/blog/2006/fighting-spam-and-email-harversters-on-your-website-bad-behavior/
Never trust user data! How to validate user input
บทความเรื่อง Never trust user data! How to validate user input โดย Andreas แนะนำวิธีการเขียน PHP อย่างปลอดภัยโดยเน้นที่การตรวจสอบ input จากผู้ใช้งาน
อ่านได้จาก
http://members.ii.net/~a.koepke/never-trust-user-data.html
Blocking access to the login page after three unsuccessful login attempts
บทความเรื่อง Blocking access to the login page after three unsuccessful login attempts บอกวิธีเขียนสคริปท์ PHP เพื่อจำกัดการเข้าถึงหน้าล็อกอินหลังจากที่ล็อกอินไม่สำเร็จสามครั้ง
อ่านได้จาก
http://www.webcheatsheet.com/php/blocking_system_access.php
PHP/SQL Security for Newbies
บทความเรื่อง PHP/SQL Security for Newbies บอกวิธีเขียนโค้ด PHP อย่างปลอดภัยเพื่อป้องกันการโจมตี SQL injection
อ่านได้จาก
http://blog.globalmsg.com/2006/09/28/phpsql-security-for-newbies/
How to Encrypt Passwords in the Database
บทความเรื่อง How to Encrypt Passwords in the Database บอกวิธีการเข้ารหัสรหัสผ่านที่เก็บอยู่ในฐานข้อมูลโดยใช้ PHP
อ่านได้จาก
http://www.webcheatsheet.com/php/md5_encrypt_passwords.php
HTTP Only cookies
บทความโดย Matt Mecham บอกวิธีใช้งาน HttpOnly cookies ในสคริปท์ PHP และ Firefox
HttpOnly ซึ่งสามารถใช้เพื่อป้องกันการโจมตี XSS ที่ใช้เพื่อขโมยข้อมูลที่สำคัญจาก cookies ใน Internet Explorer ได้เนื่องจาก javascript ไม่สามารถเรียกใช้งาน cookie ชนิดนี้ใน Internet Explorer ได้
อ่านได้จาก
http://blog.mattmecham.com/archives/2006/09/http_only_cookies_without_php.html
http://blog.mattmecham.com/archives/2006/09/http_only_cookies_in_firefox.html
FIS [File Inclusion Scanner] v0.1 – PHP Vulnerability
บทความเรื่อง FIS [File Inclusion Scanner] v0.1 – PHP Vulnerability แนะนำโปรแกรม FIS (File Inclusion Scanner) ใช้เพื่อสแกนช่องโหว่ใน PHP application ทำงานโดยสแกนไฟล์ PHP เพื่อ map ตัวแปร PHP/HTTP จากนั้นจึงทำการตรวจหาช่องโหว่ที่มีโค้ด PHP
อ่านได้จาก
http://www.darknet.org.uk/2006/09/fis-file-inclusion-scanner-v01-php-vulnerability/
PHP Security Tips
บทความเรื่อง PHP Security Tips แนะนำเทคนิคในการเขียนโค้ด PHP อย่างปลอดภัย
อ่านได้จาก
http://vexxhost.com/blog/?p=20

