برای شروع بد نیست بدانیم SQL Injection چیست و یک مثال ساده ی آن را بررسی کنیم.
SQL Injection عبارتست از وارد کردن اطلاعات مخرب در ساختار دستورات SQL که ممکن است باعث آسیب جدی به ساختار و اطلاعات پایگاه داده ی برنامه شود.

رویکرد ما در بررسی SQL Injection بررسی کدهای نوشته شده به زبان php است و به همین خاطر مثال ها و راهکارهای ارائه شده همگی منطبق با زبان php می باشند. با این وجود می توان گفت مثال ها خیلی متکی به زبان نیستند و با اندکی تغییر قابل تعمیم به هر زبان برنامه نویسی دیگری که به نوعی با پایگاه های داده از خانواده ی SQL در ارتباط است می باشد.
SQL Injection معمولا از طریق دستکاری ورودی فرم های HTML پیاده می شود ولی راه های دیگری نیز برای ورود دستورات مخرب SQL به برنامه های کاربردی تحت وب وجود دارد. به عنوان شروع مثال یک فرم ورود به بخش مدیریت یک وب سایت نوشته شده به زبان php را بررسی می کنیم.
...
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM users WHERE username='$username'
AND password = '$password'";
...
کد بالا یک مثال ساده با امنیت بسیار ضعیف است و ممکن است به نظر غیر ممکن برسد که کسی از چنین کدی استفاده کند. با این وجود یک جستجوی ساده در گوگل انبوهی از سایت ها و برنامه های کاربردی تحت وب را نشان می دهد که همگی به همین سادگی در معرض خطر جدی حملات SQL Injection قرار دارند. (بیشتر…)
اگر شما هم از وردپرس برای انتشار مطالب دنباله دار استفاده می کنید حتما خلا سیستمی برای مدیریت این دسته مطالب را حس کرده اید.
افزونه wp-series-manager که به راحتی و به صورت رایگان از «روزهای خط خطی» قابل دریافت است یک افزونه بسیار سبک و در عین حال کارآمد برای وردپرس است. به کمک این افزونه شما می توانید دوره ها یا همان «سری ها» را ایجاد کنید و برای آن ها شرح بنویسید. بعد از این مرحله کافیست تا ID سری مورد نظر را در قسمت مربوطه در پنجره ویرایش «نوشته» در وردپرس وارد کنیم. به همین سادگی نوشته جدید ما قسمتی از سری مورد نظر می شود.
نوشته مورد اشاره مانند همه ی نوشته های دیگر روی سایت ما منتشر خواهد شد. البته با یک تفاوت کوچک. در پایین این نوشته ی جدید قسمتی وجود خواهد داشت که نشان می دهد نوشته ما مربوط به کدام سری مطالب است و لینک سری مربوطه نیز نمایش داده خواهد شد. به علاوه بازدید کننده می تواند لینک سایر نوشته های مربوط به سری را مشاهده کرده و در صورت تمایل آن ها را نیز مطالعه کند.
این افزونه قابلیت clean url هم دارد و در صورتی که تنظیمات وردپرس شما صحیح باشد می توانید از url های منطبق بر استانداردهای seo برای سری های خودتان استفاده کنید. ویژگی بارز دیگر این افزونه این است که از ابتدا برای وردپرس فارسی تدوین شده و بدون هیچ مشکلی روی وردپرس فارسی شما نصب خواهد شد. به علاوه سری هایی که با این افزونه ایجاد می شوند قابلیت نمایش در منو را هم دارند و به این ترتیب شما می توانید سری ها را به «فهرست های سفارشی» وردپرس اضافه کنید و از این طریق حتی امکان نمایش آن ها به عنوان ابزارک هم مقدور می باشد.
این افزونه رایگان بوده و از طریق لینک پایین همین صفحه قابل دریافت است. برای نصب افزونه می توانید مطابق روال معمول فایل فشرده را در پوشه ی plugins وردپرس آپلود کرده و از حالت فشرده خارج کنید. بعد هم کافیست افزونه را فعال کنید. به هیچ تنظیمات اضافه ای هم نیاز نیست.
در نوشتن کد افزونه تلاش شده است به نحوی عمل شود که شما بتوانید به راحتی استایل مورد نظر خودتان را به قسمت خروجی افزونه اضافه کنید ولی اگر در این کار تبحر کافی ندارید می توانید از طریق فرم تماس «روزهای خط خطی» مراتب را در میان بگذارید تا در مورد سفارشی سازی افزونه برای تطبیق با قالب سایت با شما تماس گرفته شود.
در پایان خواهشمند است هرگونه عیوب احتمالی در افزونه و نیز پیشنهادات خود برای گسترش آن را از طریق فرم تماس سایت در میان بگذارید.
Redirection
همانطور که از نامش پیداست فرستادن بازدید کننده ی یکی از صفحات سایت به یک صفحه ی دیگر است. مثلا فرض کنید بخواهیم بازدید کننده ی صفحه ی mypage در وردپرس را که آدرس آن mydomain.com/?page_id=345 است به آدرس mypage.com هدایت کنیم. یکی از روش های ساده و سریع برای انجام این کار در وردپرس استفاده از قالب اختصاصی برای صفحه ی مورد نظر است. مزیت استفاده از این روش در انتقال خودکار و فوری بازدیدکننده به صفحه ی مقصد است بدون اینکه مجبور به صبر کردن و یا کلیک بر روی لینک یا تصویر خاصی شود.
برای این کار باید نخست یک فایل متنی ایجاد کرده و محتوای زیر را در آن کپی کنیم.

به جای your_desired_template_name نام دلخواه و به جای url of your page آدرس صفحه ی مقصد را وارد می کنیم. بعد فایل را با نام دلخواه و با پسوند .php ذخیره کرده و در فولدر پوسته ی سایتمان آپلود می کنیم. اگر نام پوسته ی ما mytheme باشد آدرس آن روی سرور سایت ما به صورت wp-contents/plugins/mytheme خواهد بود.
الا کافیست یک برگه ی خالی با نام دلخواه در سایت ایجاد کنیم و در قسمت صفات برگه قالب برگه را همان your_desired_template_name انتخاب کرده و برگه را منتشر کنیم.
eXtplorer
نام یک اسکریپت فایل منجر متن باز تحت PHP است که به صورت رایگان عرضه می شود. قابلیت های خیره کننده ی این برنامه در کنار ظاهر زیبا و کاربر پسند آن به اندازه کافی برای محبوب کردن اسکریپت eXtplorer کافی است. با این وجود بد نیست به استفاده از جاوا اسکریپت نیز در محیط برنامه اشاره کرد که استفاده از آن را ساده تر می کند. eXtplorer بسته ی نرم افزاری کم حجمی است که می تواند به دو صورت مورد استفاده قرار بگیرد: به عنوان یک Online FTP client که به شما اجازه می دهد از طریق FTP به فایل های روی سرور سایت خود دسترسی داشته باشید و یا به صورت یک فایل منجر مستقل PHP نظیر نمونه ی موجود در بسته ی cPanel که امکان مدیریت کامل فایل های روی سرور را به کاربر می دهد. به علاوه با eXtplorer شما می توانید در صورت نیاز کاربران اضافی نیز تعریف کنید و برای هر کدام سطح دسترسی خاصی نیز تعیین کنید، کاری که بدون eXtplorer تنها از طریق FTP امکان پذیر است و آن هم مشکلات و مسائل خاص خود را دارد.
از جمله امکانات eXtplorer می توان به موارد زیر اشاره کرد:
- امکان آپلود فایل روی سرور
از طریق محیط عادی – با استفاده از محیط فلش – آپلود از روی سرور دیگر روی سرور سایت خودتان
- امکان دانلود فایل به صورت عادی و یا دانلود بسته ی فشرده ی فایل های انتخابی
- امکان فشره سازی و بازگردانی اطلاعات به صورت آنلاین
- امکان مشاهده و ویرایش فایل ها به صورت آنلاین
- امکان تغییر نام، تغییر سطح دسترسی، حذف و ایجاد فایل ها
- امکان نصب به صورت مستقل یا به صورت افزونه ی جوملا
- منوی رایت کلیک که استفاده ی سریع و راحت از قابلیت های سیستم را امکان پذیر می کند.
نصب این سیستم بسیار ساده و مختصر بوده و عملا هر کسی از عهده ی آن بر می آید،
نخست باید بسته ی فشرده ی برنامه را از سایت سازنده دریافت کنید.
بعد از آن یسته را روی سرور سایت خود آپلود کرده و از حالت فشرده در می آورید.
حالا eXtplorer آماده ی استفاده است و برای آن کافی است آدرس شاخه ای از سرور سایت خود که برنامه را در آنجا نصب کرده اید در مرورگر خود وارد کنید. برای نخستین ورود به سیستم هم نام کاربری و رمز عبور برابر "admin" است و طبیعتا بعد از ورود باید نسبت به تغییر رمز عبور خود اقدام کنید.
خیلی ها دوست دارند برای خودشان یک وب سایت شخصی داشته باشند. مثلا نویسنده یا شاعری که قصد دارد قسمتی از آثار خود را به صورت بر خط منتشر کند و یا طراح و گرافیستی که می خواهد از طریق وب سایت شخصی خود نمونه کارهای خود را برای جلب مشتری و یا استفاده ی دیگران روی سایت خود قرار دهد. اما قضیه به این جا ختم نمی شود. خیلی ها حرف های گفتنی زیادی در زمینه ی کار و تخصص و یا علاقه مندی های خود دارند و دوست دارند آن ها را منتشر کنند.
وجه اشتراک بین همه ی این گروه ها این است که اصولا فعالیت اینترنتی آن ها بنا نیست صرفه ی اقتصادی داشته باشد و عمدتا به همین خاطر اکثر آن ها ترجیح می دهند برای مقاصد خود از سرویس های رایگان و بی دردسر وبلاگ استفاده کنند. به این ترتیب هزینه ای برای انتشار مطالب خود نمی پردازند و به علاوه نیازی به وارد شدن به مسائل فنی اینترنت هم ندارند. اما سرویس های وبلاگ هم مشکلات و محدودیت های خاص خود را دارند که بعضا دارندگان و مدیران آن ها را آزار می دهد. در زیر به چند مورد از این موانع اشاره می شود.
- اکثر سیستم های وبلاگ اجازه ی استفاده از نام دامنه ی اختصاصی (www.yourname.com) به کاربران خود نمی دهند. در نگاه اول این که کاربر مجبور نیست برای خریدن نام دامنه پولی بپردازد ممکن است یک نکته ی مثبت تلقی شود ولی با اندکی تامل مشخص خواهد شد که:
- – آدرس وبلاگ طولانی خواهد شد و ممکن است به شکل شفافی بیانگر زمینه ی فعالیت وبلاگ نباشد. به این ترتیب امکان ارائه ی این آدرس به عنوان یک مکمل تبیلغاتی ممکن نخواهد بود به بیان دیگر خود این آدرس طولانی نیاز به معرفی دارد تا مخاطبان از محتوای آن آگاه شوند. در مقابل انتخاب یک نامم دامنه ی مناسب خود به تنهایی می تواند وسیله ای مناسب برای شناساندن یک وب سایت به کاربران اینترنت باشد.
- وقتی وبلاگی از نام دامنه ی سرویس دهنده ی وبلاگ به خصوصی استفاده می کند به شکل تمام و کمال از امکانات موتورهای جستجو استفاده نمی کند. در واقع صفحات وبلاگ کاربر به عنوان زیر صفحات سایت سرویس دهنده در موتورهای جستجو ثبت می شوند. پس مطالب و محتوای منتشر شده روی وبلاگ ها باعث بهبود هر چه بیشتر سایت سرویس دهنده می شود و در بسیاری موارد تاثیری در وضعیت خود وبلاگ در فهرست موتورهای جستجو ندارد.
- اکثر قریب به اتفاق سیستم های وبلاگدهی تنها از متن وبلاگ ها پشتیبانی می کنند و سایر محتوای مورد استفاده در وبلاگ ها مرجع خارجی دارند. این امر نخست باعث کند شدن بارگذاری وبلاگ می شود که به نو به خود بازدیدکنندگان را خسته و دلزده می کند. به علاوه در مواردی ممکن است بعد از مدتی فایل اصلی پاک شده و یا جا به جا شود در حالیکه لینک آن هنوز لینک آن ها روی وبلاگ وجود دارد و تبعات زیر را به همراه دارد.
- در مورد عکس ها باعث می شود عکس ها باز نشده و وبلاگ ظاهری نازیبا به خود بگیرد.
- لینک های قدیمی و از کار افتاده باعث رنجش بازدیدکنندگان می شود.
- از همه بدتر این که وجود چنین لینک هایی که اصطلاحا به آن ها Broken Link گفته می شود برای اعتبار وبلاگ ها نزد موتورهای جستجو بسیار گران تمام خواهد شد.
(بیشتر…)