اول بهتر است این سوال را بپرسیم چه شخصی این برنامه را نوشته ؟ اگر خودتان نوشتید به مراتب آسان تر خواهد شد...
اما اگر خیر که ابتدا باید سورس ها بخوانید و برای خودتان ترجمه و تفسیر کنید سپس ذهنی فعال داشته تا بتوانید در زمانی که کد هارا می خوانید در ذهنتان اجرا کنید و نتیجه بگیرید(البته بعضی از کد خیلی واضح هستند و نیازی به تحلیل ندارد)
حال شما فکر کن شخص برنامه نویس از استاندارد های برنامه نویسی هم استفاده نکرده باشد که دیگر کار شخصی که دنبال باگ هستش خیلی زیاد خواهد شد...
اگر قصدتان رفع نواقص اسکریپت خودتان هستش ابتدا برید دنبال روش های نفوذ بگردید و سعی کنید روی اسکریپت خودتان تست و محل آسیب پذیر را مخالف یا ضد آن ترمیم یا مجددا برنامه نویسی کنید.
درضمن نرم افزار هایی مثل acunetix اصلا جالب نیستند ، زیرا یک سری اطلاعات غلط هم به شما می دهند... ممکن هستش کلی باگ از اسکریپت شما پیدا کند که اصلا باگ نیستند،زیر فقط یک برنامه است که قبلا توسط برنامه نویس دیگری برنامه نویسی شده .
بدون داشتن سورس هم می توانید باگ پیدا کنید اما شاید گستردگی آنرا با مشاهده ی سورس بیشتر بتوانید درک کنید...
بهتر است در برنامه نویسی از شئ گرایی استفاده کنید (شئ گرایی ربطی به امنیت شما ندارد) به همین خاطر اگر در جایی مشکل برنامه نویسی بود نیاز به ویرایش تعداد زیادی صفحه نیست و تنها با تغییر یک خط کل سورس شما تغییر می کند.
کد شما اگر اشتباه نکنم 7 نکته ی امنیتی دارد که با استفاده از جعل کردن session و cookie و همچنین استفاده از متد get و تغییر شرط sql میتوان به دیتابیس دسترسی داشت.
برای جعل session یا کوکی هم ساده ترین راه استفاده از یک سری افزونه در مرورگر می باشد یا حتی استفاده از مرورگر firefox developer edition که امکان اضافه کردن یا ویرایش یک کوکی را به راحتی ممکن ساخته...
روش دیباگ کردن : ساده ترین راه استفاده از addslashes است که خیلی ابتدایی هستش اما بهترین راه نوشتن یک تابع که تمام یا اکثر مواردی که موجب از دست رفتن امنیت می شود در آن استفاده شود و تمام مقادیر با تابع بررسی شود...