در اين مقاله ميخوايم به بررسي انواع حملات رمزنگاري/پسورد و توضيح اونها بپردازيم تا نسبت به دسته بندي اون حمله شما بدونيد از چه ابزاري استفاده كنيد.
حملات رمزنگاري ، به چند دسته تقسيم ميشن :
1 . ما ميتونيم مستقيم به الگريتم حمله كنيم كه در اكثر مواقع اين روش اصلا كاربردي نيست و وقت گير هست و علم بالايي ميخواد
2. حمله به نحوه پياده سازي اين پروتوكول ها خيلي مرسومه كه ما هم زياد به اين قسمت كار نداريم
3. قسمتي كه ما كار داريم ، حمله به متن هاي ورودي و خروجي يك الگريتم هست ، يعني هدفمون كليد و متن Plaintext و متن Ciphertext ايه كه توسط يه الگريتم استفاده ميشه.
# من هرجا نوشتم P منظورم Plaintext و هر وقت نوشتم C يعني Ciphertext
1) در Known Plaintext only Attack (KPA) : مهاجم فقط يه P داره و C متناظرشو ، فقط همين دوتا ، مثلا :
123->202cb962ac59075b964b07152d234b70
123->F9C3746B8AF2FF60B09D99F20BAC3F0C
مهاجم فقط خط اولو داره (مثلا) يا مهاجم فقط مثال دومو داره ، P كه عدد 123 هست و C كه عبارت رمز شده اون هست ، در اين مورد معمولا الگريتم هم پيدا نيس ولي ما ميتونيم اونو پيدا كنيم ولي هدف بيشتر بدست اوردن كليده (در اين دو مثال من در اولي ، با يه الگريتمي عدد123 رو هش كردم و در عبارت دوم امدم و عدد 123 رو با يه كليدي تبديلش كردم به يه عبارت رمز شده) حالا هكر بايد در مثال اول الگريتمشو پيدا كنه كه مثلا ميره همرو تست ميكنه ميفهمه عه md5 عه و دومي هم ميره تلاش ميكنه ميبينه عه الگريتم AES-EBC عه با اين كليد "abcdefghijklmnop" با يه كليدي كه طولش 16 كاراكتره يعني ميشه 128 بيتي
2) در حالت known Ciphertext Only Attack (COA) : مهاجم فقط يه C داره و ديگه هيچي نداره :)
SHA256 hash : 1f7285b0a2d5e803d550c3ff9e18c867f7cdde6ef187582a7dfdc8217d365553
Gqzq0pMzZDc=
مثلا الان يه چالش فارنزيك يا پنتست هست كه شما ميخواي به يه سيستم ورود كني و پسورد اون سيستمو دامپ كردي و حالا ميخواي كرك كني ، مثلا اين پسورد (اين حالا از خانواده SHA بوده يا مثلا پسورد ميتونه NTLM و... باشه) ، الگريتم ممكنه معلوم نباشه و اونم شايد مجبور شيد پيدا كنيد
يا در مثال بعديش يه پياميه و رسيده به ما كه هيچ ديدي نداريم ، و ميخوايم بازش كنيم (مثل پيام هايي كه در جنگ ها ردوبدل ميشه) مثلا در اينجا ميدونيم كه پيامي كه ما داريم فرمت base64 هست ولي نميدونم كه الگريتمش des هست و كليدش"abcdegf" و ميخوايم اين دوتارو پيدا كنيم
3) در Chosen Plaintext Attack (CPA) : ما ميتونيم هر P اي كه دوس داريمو بديم و C نظير و متقابلشو بگيريم ، در اين روش الگريتم معلومه ولي كليد معلوم نيست و ما دنبال كليديم (يا مستقيم ميخوايم به الگريتم حمله كنيم)
1:c4ca4238a0b923820dcc509a6f75849b
2:c81e728d9d4c2f636f067f89cc14862c
3:eccbc87e4b5ce2fe28308fd9f2a7baf3
12:c20ad4d76fe97759aa27a0c99bff6710
123:202cb962ac59075b964b07152d234b70
...
..
.
1:Vo5IelNXdtA=
2:3/PLtQjbT7g=
3:LK8BU9y0EWw=
12:PXgjzko+UtI=
123:pD8/onth+Fc=
1:y6X5W9eGklc=
2:nabFk0JtZLs=
3:3XVi1Gw4WzA=
12:RHNTRs4XIuo=
123:ViiG13HwpTw=
...
..
.
مثلا در اينجا ما امديم و الگريتمو داريم كه مثلا 5 تا مثال اول همگي با الگريتم هشينگ md5 هش شدن و ما هي تست ميكنيم مقادير مختلفي رو تا مثلا به Collision برسيم
يا مثلا در 10 تا مثال پايين ما مياييم و با الگريتم DES و با كليد هاي مختلف عبارت هاي مختلف رو رمز ميكنيم و ميرسيم به اينكه خب اون الگريتم چطوري عمل ميكنه و .. مثلا 5 تا عبارت اول كليدشون "a" بوده و 5 تاي دوم "A" بوده
4) در Chosen Ciphertext Attack (CCA) : مهاجم يه C داره و اونو ميده و A رو ميگيره (به هر روشي) و اينطوري به كليد ميخواد پي ببره (اين روش كم كارامد ترين روشه)
lvg8PFW22PA=
مثلا اينجا ما يه عبارت داريم و ميخوايم به كليد اين پي ببريم ، مثلا فرض كنيد ما دونفر داريم كه باهم دارن ارتباط برقرار ميكنن ، فرد 1 داره با فرد 2 ارتباط برقرار ميكنه ، در اين حين يه فردي هم داره به اين مكالمه گوش ميكنه و امكان تغيير بسته هارو داره ، حالا در اينجا فرد 1 پيامي رو ميفرسته به فرد 2 تحت اين عنوان " Khoor Pb Iulhqg "و مهاجم كه داره اين وسط گوش ميكنه مياد و پيامو به اين تغيير ميده " Helxo Op Jkfiens " (يه متن رندوم و شانسي) و وقتي پيام ميرسه به فرد 2 و اون بازش ميكنه ميرسه به اين "Khoar Rs Mnilhqv " و حالا اينجا فرد دو مياد و تلفن ميزنه به فرد 1 يا روي همون ارتباط بهش ميگه اين چه وضعشه ؟ منظورت از "Khoar Rs Mnilhqv " چيه ؟ بدون اطلاع به من كليدو تغيير دادي؟
و مهاجم اينجا ميفهمه كه "Helxo Op Jkfiens" با كليد ناشناس ميشه "Khoar Rs Mnilhqv"
Helxo Op Jkfiens - > Khoar Rs Mnilhqv
و ميره مثلا در الگريتم سزار ميبينه عه اين كليدش ميشه 3 ، حالا مياد و پيام اصلي اي كه بين اون دوتا رودبدل شده كه "Khoor Pb Iulhqg" بوده رو با الگريتم سزار با كليد 3 رمز گشايي ميكنه و ميرسه به اين " Hello My Friend "
اين ساده ترين شكله ، ديگه خودتون گسترشش بديد
5 ) در اين حالت Adaptive Chosen Plaintext/Ciphertext Attack (ACPA)(ACCA) : مهاجم يه P داره و با اضافه كردن جزء جزء يه سري چيزا به يه C ميرسه و اينطوري ميخواد به كليد يا و الگريتم پي ببره ، يا برعكس C رو داره و جز جز كم ميكنه تا بره به P يا الگريتم و كليدو پيدا كنه و بفهمه
مثال دقيق براي اين موضوع ندارم و اين نوع حمله براي الگريتم هاي قديمي بيشتر كاربرد داشته
نكته : مثلا روش Brute Force معمولا براي KPA و COA كاربرد داره ، جايي كه مهاجم ميتونه صحت حدسو بررسي كنه
نكته : اگر براتون سوال پيش امده كه فرق بين COA و CCA چيه ، بايد بهتون بگم كه در COA هدف معمولا P هست و در CCA هدف معمولا كليد هست
و....
در دوره CSCU شما مفاهيم امنيت كامپيوتر و فضاي مجازي تا آموزش امن كردن ويندوز ، آموزش استفاده از آنتي ويروس ، آموزش رمزنگاري اطلاعات ، آموزش امنيت در محيط اينترنت و شبكه هاي اجتماعي ، آموزش شناخت تهديدات اينترنتي و كلاهبرداري ها ، آموزش امنيت در پرداخت هاي اينترنتي و آموزش امنيت گوشي و ... را به خوبي ياد ميگيريد.
يكي از بهترين و كاملترين دوره هاي آموزش امنيت اطلاعات و امنيت شبكه در دنيا به حساب مي آيد. در پايان اين دوره آموزشي شما آماده ورود به دنياي هك و امنيت اطلاعات مي شويد و به خوبي بر روي مباحث تئوري و مفاهيم امنيتي مسلط خواهيد شد. در واقع سكيوريتي پلاس نقطه ورود شما به دنياي امنيت سايبري و از پيشنيازهاي دوره هاي آموزشي هك و نفوذ مي باشد.داشتن دانش لازم در حد دوره آموزش نتورك پلاس براي ورود به دوره سكيوريتي پلاس الزامي است
برچسب:
آموزش هك, آموزش هك قانونمند, آموزش CEH, آموزش سكيوريتي پلاس،
ادامه مطلب
بازدید: