در این مطلب، ویدئو معکوس کردن مبتدی شماره 1 (چالش های رشته ها و نقاط شکست پایتون) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 1:24:44
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,060 –> 00:00:02,190
بسیار خوب، بنابراین اگر او امروز توضیحات را نخواند،
2
00:00:02,190 –> 00:00:04,110
گفتم من می خواهم
3
00:00:04,110 –> 00:00:05,700
از طریق این چالش های رشته ای
4
00:00:05,700 –> 00:00:08,790
که این موارد از وبلاگ من
5
00:00:08,790 –> 00:00:12,440
هستند را از صفحه خارج کردم،
6
00:00:14,510 –> 00:00:18,980
بله، هشدار ایمیل خراب است،
7
00:00:18,980 –> 00:00:20,930
فکر می کنم جریان. در واقع می گوید
8
00:00:20,930 –> 00:00:23,750
که در یک جریان است، نام اشکالی ندارد، اما
9
00:00:23,750 –> 00:00:27,230
هشدار ایمیل کمی خراب است، بنابراین ما
10
00:00:27,230 –> 00:00:28,009
11
00:00:28,009 –> 00:00:30,680
امروز این چالش ها را پشت سر خواهیم گذاشت، من رشته های
12
00:00:30,680 –> 00:00:35,270
یک دو سه را انجام می دهم و اگر نمی دانید
13
00:00:35,270 –> 00:00:37,700
اینها چه کار می کنند من فقط
14
00:00:37,700 –> 00:00:42,440
سریع آنها را مرور می کنم، بنابراین ایده این است که شما آن را اجرا
15
00:00:42,440 –> 00:00:44,719
کنید و یک هش md5 از پرچم را خروجی می دهد و ه
16
00:00:44,719 –> 00:00:47,120
ف این است که پرچم اصلی را بدست آوریم که
17
00:00:47,120 –> 00:00:49,760
ا این هش محاسبه می شود، هم
18
00:00:49,760 –> 00:00:51,620
آنها یک کار را انجام می دهند و زیرا ما
19
00:00:51,620 –> 00:00:53,570
می دانیم که آنها در واقع یک md5 خروجی می دهند،
20
00:00:53,570 –> 00:00:57,050
چیزی که ما به دنبال آن هستیم این است که اگر در پایان به سؤالات
21
00:00:57,050 –> 00:00:59,710
توابع هش md5 وارد می شود، اک
22
00:00:59,710 –> 00:01:01,700
ون می توانید در
23
00:01:01,700 –> 00:01:03,380
ر نقطه از جریان سؤال بپرسید و م
24
00:01:03,380 –> 00:01:05,829
پاسخ خواهم داد. زمانی که من فرصتی
25
00:01:05,829 –> 00:01:09,710
پیدا کنم، بنابراین من فقط می خواهم آن را رها کنم رشته ها
26
00:01:09,710 –> 00:01:12,399
یکی به سرعت
27
00:01:12,450 –> 00:01:14,170
شما
28
00:01:14,170 –> 00:01:16,190
29
00:01:16,190 –> 00:01:17,590
اگر
30
00:01:17,590 –> 00:01:20,320
رشته های نام را به نوعی ارجاع نداده اید به
31
00:01:20,320 –> 00:01:21,840
ابزاری به نام رشته ها
32
00:01:21,840 –> 00:01:25,299
با تشکر از Looch فرعی و این یک
33
00:01:25,299 –> 00:01:26,649
ابزار لینوکس است اما در واقع یک
34
00:01:26,649 –> 00:01:28,659
نسخه ویندوز وجود دارد و شما آن را روی یک فایل اجرایی اجرا می کنید
35
00:01:28,659 –> 00:01:30,520
و تمام
36
00:01:30,520 –> 00:01:34,719
رشته ها را در داخل آن خالی می کند. این فرمت به نوعی
37
00:01:34,719 –> 00:01:36,789
مانند استانداردی است که مهندس معکوس شما
38
00:01:36,789 –> 00:01:39,159
شروع به کار می کند، مثل اینکه
39
00:01:39,159 –> 00:01:41,170
من معمولاً به نسخه IDA
40
00:01:41,170 –> 00:01:44,020
می روم که رشته های view یا حتی sub view است و رشته ها را
41
00:01:44,020 –> 00:01:46,359
مرور می کنم، اما ایده
42
00:01:46,359 –> 00:01:47,679
این چالش ها این است که قرار است
43
00:01:47,679 –> 00:01:50,679
استفاده از ابزار رشتهها را پیچیده کنیم،
44
00:01:50,679 –> 00:01:52,840
مثلاً در این مورد، ما میلیونها
45
00:01:52,840 –> 00:01:55,000
پرچم در اینجا داریم و هیچکدام از آنها
46
00:01:55,000 –> 00:01:57,909
پرچمهای درستی نیستند، بنابراین باید دریابیم
47
00:01:57,909 –> 00:02:00,700
که کدام یک از اینها کتان درست است
48
00:02:00,700 –> 00:02:02,259
، فقط یک پرچم وجود دارد و یک
49
00:02:02,259 –> 00:02:04,659
میلیون در اینجا وجود دارد، بنابراین ایده این است که ما نمیتوانیم
50
00:02:04,659 –> 00:02:06,459
از رشتهها استفاده کنیم، زیرا این کمکی نمیکند،
51
00:02:06,459 –> 00:02:08,258
بنابراین باید مقداری معکوس انجام دهیم،
52
00:02:08,258 –> 00:02:10,989
اکنون این یکی بسیار آسان است،
53
00:02:10,989 –> 00:02:13,629
فقط یک نمونه است و در واقع میتوانید
54
00:02:13,629 –> 00:02:17,019
هش md5 را ببینید. عملکرد در اینجا بنابراین
55
00:02:17,019 –> 00:02:18,940
اولین پاراگراف متر تنها
56
00:02:18,940 –> 00:02:21,819
پارامتر این تابع پرچمی است
57
00:02:21,819 –> 00:02:23,799
که باید هش شود و
58
00:02:23,799 –> 00:02:25,720
در رجیستر EAX که
59
00:02:25,720 –> 00:02:28,600
نشانگر بازگشتی است که
60
00:02:28,600 –> 00:02:30,850
به پارامتر متنی LP
61
00:02:30,850 –> 00:02:32,620
جعبه پیام می رود بیرون می آید. پرچم هش شده خود را نمایش دهید
62
00:02:32,620 –> 00:02:37,510
تا آنچه که در هش md5 قرار می
63
00:02:37,510 –> 00:02:41,650
یرد، ببینیم که EAX است و آن
64
00:02:41,650 –> 00:02:43,720
ه در دستورات mob روی ax تنظیم شده اس
65
00:02:43,720 –> 00:02:48,459
، 432 به 94 تنظیم شده است، بنابراین اگر رو
66
00:02:48,459 –> 00:02:50,549
آن دابل کلیک کنیم، پرچم خود را در اینجا داریم که
67
00:02:50,549 –> 00:02:53,230
رچم است می توانم درست کن
68
00:02:53,230 –> 00:02:55,959
. واضحتر است و فقط برای بررسی اینکه
69
00:02:55,959 –> 00:03:00,250
پرچم واقعی است، میتوانیم به اینجا برویم و پرچم درست را
70
00:03:00,250 –> 00:03:00,930
در اینجا قرار
71
00:03:00,930 –> 00:03:03,970
دهیم تا یکی
72
00:03:03,970 –> 00:03:07,299
واقعاً آسان باشد و دومی
73
00:03:07,299 –> 00:03:10,090
باید کمی سختتر باشد، بنابراین ما
74
00:03:10,090 –> 00:03:12,940
میرویم به دوم یک نوع
75
00:03:12,940 –> 00:03:15,910
فرمت مشابه، یک هش md5 است در اینجا ما میتوانیم دو
76
00:03:15,910 –> 00:03:18,910
اره تابع هش md5 را ببینیم، اما این بار هی
77
00:03:18,910 –> 00:03:21,760
افست نداریم و اگر من واقعا
78
00:03:21,760 –> 00:03:24,940
وارد رشتهها شوم، این همان چیزی است که خرو
79
00:03:24,940 –> 00:03:26,680
ی رشتهها را واضحتر میکند تا در واق
80
00:03:26,680 –> 00:03:29,890
این کار را انجام ندهیم. هیچ کاربردی برای
81
00:03:29,890 –> 00:03:30,300
انجام دادن با
82
00:03:30,300 –> 00:03:34,020
تاخیر آن وجود دارد. فقط صادرات تابستانی و مقداری
83
00:03:34,020 –> 00:03:37,980
یورو است، پس اگر دوباره به تابع هش md5 نگاه کنیم، چگونه میتوانیم این یکی را به خوبی دریافت کنیم، e^x
84
00:03:37,980 –> 00:03:39,990
85
00:03:39,990 –> 00:03:43,230
تنها پارامتر است و ما آد
86
00:03:43,230 –> 00:03:46,140
س EI x را با دس
87
00:03:46,140 –> 00:03:48,690
ورالعمل آدرس موثر بارگذاری می
88
00:03:48,690 –> 00:03:51,300
کنیم. ما EI X را به
89
00:03:51,300 –> 00:03:54,510
عنوان آدرس این EBP به اضافه 20 از 28 ما
90
00:03:54,510 –> 00:03:57,840
که در اینجا قرار دارد تنظیم می کنیم، بنابراین این آدرس به
91
00:03:57,840 –> 00:04:01,470
سمت پایین می رود که همه اینها هستند، بنابراین این
92
00:04:01,470 –> 00:04:02,970
در واقع تکنیکی است به نام string
93
00:04:02,970 –> 00:04:06,090
stacking یک ایده به جای تعبیه
94
00:04:06,090 –> 00:04:08,790
کردن رشتهها در باینری خود کاری که ما انجام میدهیم این است
95
00:04:08,790 –> 00:04:11,040
که آنها را بهصورت دستی با استفاده از PI روی
96
00:04:11,040 –> 00:04:13,260
پشته میسازیم، بنابراین اولین
97
00:04:13,260 –> 00:04:16,709
افست را روی بایت 46 تنظیم میکنیم، اکنون آن را روی 2 4 C
98
00:04:16,709 –> 00:04:19,230
4 T 1 قرار میدهیم و به همین ترتیب، در واقع نداریم.
99
00:04:19,230 –> 00:04:21,660
برای اینکه این کار را به ترتیب انجام دهیم،
100
00:04:21,660 –> 00:04:23,820
میتوانیم اولین افست را در اینجا و سپس
101
00:04:23,820 –> 00:04:25,740
آفست هشتم را در اینجا تنظیم کنیم، واقعاً مهم نیست،
102
00:04:25,740 –> 00:04:27,630
اما فقط برای سادگی، به ترتیب انجام دادهام،
103
00:04:27,630 –> 00:04:30,180
بنابراین باید بدانیم همه این
104
00:04:30,180 –> 00:04:33,180
مقادیر هگزا چیست و میتوانیم به هگز –
105
00:04:33,180 –> 00:04:35,310
به عنوان مبدل کلید بروید و هر یک از
106
00:04:35,310 –> 00:04:37,470
مقادیر هگز را تبدیل کنید، اما این مقدار طولانی و
107
00:04:37,470 –> 00:04:37,980
bori خواهد بود
108
00:04:37,980 –> 00:04:39,540
بنابراین در واقع ترفندی برای انجام این کار وجود دارد، یک
109
00:04:39,540 –> 00:04:44,640
ایده این است که کلید R است و فقط
110
00:04:44,640 –> 00:04:48,690
هگز ما را به یک کاراکتر تبدیل میکند و ما
111
00:04:48,690 –> 00:04:51,270
واقعاً میتوانیم این کار را در ریاضی انجام دهیم، اگر
112
00:04:51,270 –> 00:04:56,130
فقط همه اینها را انتخاب کنیم، متأسفانه
113
00:04:56,130 –> 00:04:57,990
همه آنها را انتخاب میکنیم، کلید R را فشار میدهیم. و
114
00:04:57,990 –> 00:05:01,560
سپس در اینجا گزینهای برای تنظیم آن دریافت
115
00:05:01,560 –> 00:05:06,090
میکنیم، بنابراین میخواهیم من معتقدم
116
00:05:06,090 –> 00:05:09,000
که همهجا و باید کار کند و سپس مقدار پایینتر
117
00:05:09,000 –> 00:05:12,800
، حداقل مقدار برای تبدیل
118
00:05:12,800 –> 00:05:15,240
هدف است که هدف آن است
119
00:05:15,240 –> 00:05:17,790
که رشتهای را که در اینجا ساخته میشود، به دست آوریم.
120
00:05:17,790 –> 00:05:21,370
پشته بنابراین
121
00:05:21,370 –> 00:05:23,440
این مقدار پایینتر است، بنابراین این
122
00:05:23,440 –> 00:05:25,630
اساساً میگوید حداقل مقداری
123
00:05:25,630 –> 00:05:28,480
که باید سعی کنیم آن را تبدیل کنیم چقدر است، بنابراین انتظار داریم که
124
00:05:28,480 –> 00:05:29,680
همه این کاراکترها در
125
00:05:29,680 –> 00:05:33,220
محدوده ASCII باشند، بنابراین میتوانیم بگوییم
126
00:05:33,220 –> 00:05:34,840
کمترین مقدار را روی کمترین کاراکتر ASCII تنظیم کنید.
127
00:05:34,840 –> 00:05:36,850
مقدار بالایی به بالاترین
128
00:05:36,850 –> 00:05:39,340
نویسه ASCII اما چون می دانیم
129
00:05:39,340 –> 00:05:41,410
که همه آنها قبلاً در محدوده ASCII هستند،
130
00:05:41,410 –> 00:05:43,720
می توانیم هر چیزی را که
131
00:05:43,720 –> 00:05:46,180
مقدار کم صفر صفر و مقدار بالای FF است تبدیل کنیم، در
132
00:05:46,180 –> 00:05:49,949
غیر این صورت آنها کار نمی کنند
133
00:05:50,870 –> 00:05:56,020
و یکی از این
134
00:05:58,009 –> 00:06:00,069
شما هستند.
135
00:06:00,919 –> 00:06:04,590
بله قربان این به نظر می رسد که فقط زمانی کار می کند که من
136
00:06:04,590 –> 00:06:07,460
آن را در آزمایش انجام
137
00:06:07,520 –> 00:06:09,580
138
00:06:11,360 –> 00:06:12,530
دادم، شما خیلی خوب، من
139
00:06:12,530 –> 00:06:15,370
محدوده های مقدار a friend را در
140
00:06:15,470 –> 00:06:18,169
آنجا تنظیم نکردم، بنابراین
141
00:06:18,169 –> 00:06:20,120
هر کدام از اینها انجام می شود و می توانیم ببینیم
142
00:06:20,120 –> 00:06:23,509
که پرچم ما این است که رشته های پشته پرچم
143
00:06:23,509 –> 00:06:25,909
بهترین رشته ها هستند و در واقع هیچ
144
00:06:25,909 –> 00:06:28,219
راه خوبی وجود ندارد که من از آن آگاه
145
00:06:28,219 –> 00:06:30,949
باشم، من برای نیمه خدایان دعا نکردم که
146
00:06:30,949 –> 00:06:33,319
بسیار واضح است، بنابراین در واقع هیچ راه خوبی وجود ندارد
147
00:06:33,319 –> 00:06:35,240
که من از ایده ای
148
00:06:35,240 –> 00:06:37,610
برای استخراج این ارزش آگاه باشم اگر کسی
149
00:06:37,610 –> 00:06:39,860
به روش دیگری من انجام دهد. دوست دارم آن را بدانم، بنابراین
150
00:06:39,860 –> 00:06:42,310
من فقط می خواهم آن را بنویسم تا
151
00:06:42,310 –> 00:06:51,039
رشته های پشته پرچم بهترین رشته ها باشند و به
152
00:06:51,039 –> 00:06:53,659
شرطی که تیفوس نداشته باشم که اگر
153
00:06:53,659 –> 00:07:03,229
ما وارد رشته ها شویم تا پرچم را تصحیح کنیم، اکنون
154
00:07:03,229 –> 00:07:05,689
در دو رشته سه که آخرین رشته
155
00:07:05,689 –> 00:07:07,900
156
00:07:08,129 –> 00:07:09,840
شما است.
157
00:07:09,840 –> 00:07:11,900
158
00:07:12,729 –> 00:07:15,649
خوب است، پس این یکی کمی
159
00:07:15,649 –> 00:07:17,240
پیچیده تر است و
160
00:07:17,240 –> 00:07:19,339
اگر همه آنالیزور ماشین چمن زنی ویندوز نیستید، باید برخی از فراخوان های API ویندوز را جستجو
161
00:07:19,339 –> 00:07:21,949
کنید، بنابراین دوباره
162
00:07:21,949 –> 00:07:27,110
ما هش md5 خود را داریم و این با
163
00:07:27,110 –> 00:07:28,759
تنظیمات کمی انجام شده است. متفاوت است زیرا من
164
00:07:28,759 –> 00:07:32,419
در واقع آن را متفاوت کامپایل کردم بنابراین
165
00:07:32,419 –> 00:07:35,809
بافری که وارد می شود E است AX دوباره اما
166
00:07:35,809 –> 00:07:38,899
در واقع در حال بارگذاری
167
00:07:38,899 –> 00:07:40,490
168
00:07:40,490 –> 00:07:42,469
169
00:07:42,469 –> 00:07:44,300
170
00:07:44,300 –> 00:07:46,129
171
00:07:46,129 –> 00:07:48,259
هستیم. پرچمی که در اینجا قرار می گیرد،
172
00:07:48,259 –> 00:07:51,409
بنابراین اولین کاری که انجام می دهد این است که
173
00:07:51,409 –> 00:07:56,599
منبع را بیابید
174
00:07:56,599 –> 00:07:57,740
، یک منبع زیبا برای آن
175
00:07:57,740 –> 00:08:00,319
به نام مستندات MSDN x’ وجود دارد که
176
00:08:00,319 –> 00:08:02,330
در واقع کار بسیار خوبی در
177
00:08:02,330 –> 00:08:05,259
مستندسازی چیزها انجام می دهد، بنابراین یافتن منبع
178
00:08:05,259 –> 00:08:07,399
تعیین کننده است مکان یک منبع
179
00:08:07,399 –> 00:08:09,289
در این با نوع و
180
00:08:09,289 –> 00:08:11,779
نام خاص در یک ماژول خاص، بنابراین کاری که
181
00:08:11,779 –> 00:08:13,399
در واقع انجام میشود این است که بخش منبع را بارگیری میکند
182
00:08:13,399 –> 00:08:15,619
و
183
00:08:15,619 –> 00:08:18,919
ما نام منبع یا RC خود را بارگیری میکنیم تا زمانی
184
00:08:18,919 –> 00:08:20,269
که یک دستگیره داشته باشید. به بخش منبع خود
185
00:08:20,269 –> 00:08:22,399
ما این را
186
00:08:22,399 –> 00:08:24,919
که رشته بارگذاری است a می نامیم، بنابراین دوباره می توانیم
187
00:08:24,919 –> 00:08:31,729
آن را دوباره در MSDN جستجو کنیم و
188
00:08:31,729 –> 00:08:33,649
منبع رشته ای را از فایل اجرایی
189
00:08:33,649 –> 00:08:35,958
مرتبط با یک ماژول خاص بارگذاری می کند، بنابراین
190
00:08:35,958 –> 00:08:37,339
کاری که ما انجام می دهیم این است که ما. در حال گرفتن یک
191
00:08:37,339 –> 00:08:39,318
دسته به بخش منبع و سپس
192
00:08:39,318 –> 00:08:40,849
یک رشته را از آن
193
00:08:40,849 –> 00:08:43,990
منبع بارگذاری
194
00:08:43,990 –> 00:08:47,089
می کنیم، بنابراین اگر به پارامترهای اینجا نگاه کنیم، چه رشته ای را به خوبی بارگذاری می
195
00:08:47,089 –> 00:08:49,850
کنیم، یک نمونه H خواهیم داشت که
196
00:08:49,850 –> 00:08:52,100
دستگیره منبع است، سپس
197
00:08:52,100 –> 00:08:54,620
u خود را داریم n ام که شناسه رشته
198
00:08:54,620 –> 00:08:56,569
برای بارگذاری مجدد آن است، بنابراین رشته
199
00:08:56,569 –> 00:08:58,850
با ایده رشته در منبع است
200
00:08:58,850 –> 00:09:01,189
که همان چیزی است که ما به آن نیاز داریم و در اینجا
201
00:09:01,189 –> 00:09:04,120
بافر LP را داریم که بافر خروجی
202
00:09:04,120 –> 00:09:08,389
است که بدیهی است که این همان چیزی است که ما به آن نیاز داریم. خواستم
203
00:09:08,389 –> 00:09:12,380
اینجا UID است، بنابراین EBP ابتدا UID
204
00:09:12,380 –> 00:09:17,529
روی EAX تنظیم میشود، رجیستر EAX
205
00:09:17,529 –> 00:09:23,240
باید در جایی صفر شود یا [Music] بارگذاری شود،
206
00:09:23,240 –> 00:09:24,370
207
00:09:24,370 –> 00:09:27,620
در اینجا میرویم، بنابراین e^x را روی یک تنظیم
208
00:09:27,620 –> 00:09:30,800
میکنیم و سپس اجازه میدهیم به سمت چپ EAX
209
00:09:30,800 –> 00:09:33,199
هشت مکان را ثبت کرده است، بنابراین اگر
210
00:09:33,199 –> 00:09:34,579
واقعاً در ریاضیات کمی خوب نیستید، یک
211
00:09:34,579 –> 00:09:36,259
ترفند خوب وجود دارد که می توانید با این کار انجام دهید
212
00:09:36,259 –> 00:09:38,749
213
00:09:38,749 –> 00:09:41,149
214
00:09:41,149 –> 00:09:43,879
215
00:09:43,879 –> 00:09:45,230
. در اینجا میخواهیم این کار را انجام دهیم این است که
216
00:09:45,230 –> 00:09:47,389
با این دو شروع میکنیم، بنابراین
217
00:09:47,389 –> 00:09:50,480
میخواهیم e^x خود را روی یک تنظیم می کنیم سپس آن
218
00:09:50,480 –> 00:09:53,420
را به هشت مکان به چپ تغییر می دهیم به طوری
219
00:09:53,420 –> 00:09:56,290
که در اینجا LSH
220
00:09:56,290 –> 00:10:00,529
هشت مکان است که دو پنج شش است و
221
00:10:00,529 –> 00:10:03,559
در اینجا X یا DX با خودش است
222
00:10:03,559 –> 00:10:07,339
که آن را روی صفر تنظیم می کند. edx صفر است،
223
00:10:07,339 –> 00:10:10,730
سپس افزایش می یابد که آن را روی یک تنظیم می کند،
224
00:10:10,730 –> 00:10:14,329
بنابراین ما می دانیم که edx روی یک تنظیم
225
00:10:14,329 –> 00:10:17,990
می شود، بنابراین ما یک ماشین حساب دیگر را
226
00:10:17,990 –> 00:10:21,399
برای ثبات edx باز می کنیم تا به یک برسد و
227
00:10:21,399 –> 00:10:24,980
سپس می توانیم ببینیم که edx در حال
228
00:10:24,980 –> 00:10:27,740
تغییر به سمت چپ است. مکانها، بنابراین اگر
229
00:10:27,740 –> 00:10:30,439
چهار مکان را کنار بگذاریم، 16 مکان داریم و
230
00:10:30,439 –> 00:10:33,259
تمام عملیات را انجام میدهد یا
231
00:10:33,259 –> 00:10:36,110
اساساً یک تبلیغ است در این مورد، بنابراین
232
00:10:36,110 –> 00:10:39,110
EAX و edx را اضافه
233
00:10:39,110 –> 00:10:42,379
میکنیم تا به اولین مورد خود برویم و سپس
234
00:10:42,379 –> 00:10:48,529
16 را اضافه کنید و پاسخ 272 است، بنابراین Ida در مورد منابع
235
00:10:48,529 –> 00:10:50,059
واقعا افتضاح
236
00:10:50,059 –> 00:10:52,850
است، بنابراین من می خواهم از P Explorer
237
00:10:52,850 –> 00:10:56,540
برای این قسمت استفاده کنم، فایل NP
238
00:10:56,540 –> 00:10:58,959
Explorer را برای
239
00:11:01,320 –> 00:11:03,380
شما باز می کنیم
240
00:11:03,740 –> 00:11:06,620
و سپس به نمایشگر منابع می رویم و
241
00:11:06,620 –> 00:11:09,740
می توانیم لیست خود را ببینیم. از تارها پس
242
00:11:09,740 –> 00:11:11,720
اینها موهای سمت چپ
243
00:11:11,720 –> 00:11:13,370
شناسه رشته و در سمت راست مشخص است
244
00:11:13,370 –> 00:11:16,130
بنابراین
245
00:11:16,130 –> 00:11:17,600
اگر شماره خود را در اینجا به خاطر بسپاریم دویست و
246
00:11:17,600 –> 00:11:22,660
هفتاد و دو است، باید شناسه 272 را پیدا
247
00:11:28,000 –> 00:11:31,569
کنیم.
248
00:11:31,569 –> 00:11:34,269
249
00:11:34,269 –> 00:11:36,189
250
00:11:36,189 –> 00:11:40,660
اگر به وبلاگ خود بازگردیم
251
00:11:40,660 –> 00:11:43,540
و این سیستم را در حافظه پنهان ارائه
252
00:11:43,540 –> 00:11:51,600
میدهیم، دوباره رشتههای 3
253
00:11:51,939 –> 00:11:53,999
شما درست
254
00:11:55,340 –> 00:11:57,550
نیست،
255
00:11:57,649 –> 00:12:00,800
بنابراین آخرین چیزی
256
00:12:00,800 –> 00:12:03,889
که در این مورد میخواهم بگویم این است که این
257
00:12:03,889 –> 00:12:06,019
روش ذخیرهسازی مطالب در منابع
258
00:12:06,019 –> 00:12:08,570
است. در بدافزارها بسیار محبوب است، جایی
259
00:12:08,570 –> 00:12:10,399
که قوانین اجرای رمزگذاری شده یا بسته بندی
260
00:12:10,399 –> 00:12:13,370
شده اغلب فایل اجرایی رمزگذاری شده یا بسته بندی شده را
261
00:12:13,370 –> 00:12:15,889
در آن ذخیره می کنند، در واقع می توانید آن را هر چیزی نامگذاری کنید،
262
00:12:15,889 –> 00:12:18,290
در این مورد، RC به RC است، اما
263
00:12:18,290 –> 00:12:20,839
می توانید آن را به عنوان هر چیزی که
264
00:12:20,839 –> 00:12:23,149
فایل اجرایی بسته بندی شده یا رمزگذاری شده را بارگیری می کند، قرار دهید.
265
00:12:23,149 –> 00:12:24,889
منبعی که منبع را پیدا
266
00:12:24,889 –> 00:12:26,930
می کند، کاری انجام می دهیم مانند بارگذاری بایت ها
267
00:12:26,930 –> 00:12:28,279
، رشته ای را بارگذاری نمی کند، زیرا رشته ای نیست
268
00:12:28,279 –> 00:12:30,170
و سپس آن را رمزگشایی می کند و
269
00:12:30,170 –> 00:12:32,899
آن را اجرا می کند، بنابراین به دنبال منابعی می
270
00:12:32,899 –> 00:12:35,930
گردیم که داده های باینری روش بسیار خوبی برای دیدن
271
00:12:35,930 –> 00:12:39,880
اینکه آیا بدافزار i در حال حاضر یک محموله را
272
00:12:39,880 –> 00:12:42,079
برای چیز کاملاً
273
00:12:42,079 –> 00:12:44,750
متفاوتی حمل می کنم، قول دادم
274
00:12:44,750 –> 00:12:50,089
استریم کمی پیشرفته تری انجام دهم، بنابراین
275
00:12:50,089 –> 00:12:51,800
مستقیماً به جریان پیشرفته تر می پردازم
276
00:12:51,800 –> 00:12:53,839
که
277
00:12:53,839 –> 00:12:57,380
تجزیه و تحلیل پویا است که نقاط شکست پایتون را انجام می دهد، بنابراین
278
00:12:57,380 –> 00:13:00,500
فقط برای شروع با من قصد دارم به
279
00:13:00,500 –> 00:13:03,970
شما نشان دهم که ما به دنبال چه چیزی هستیم،
280
00:13:05,620 –> 00:13:07,940
بنابراین اگر C یا C++ نمی دانید واقعاً نگران نباشید،
281
00:13:07,940 –> 00:13:11,030
این فقط
282
00:13:11,030 –> 00:13:12,860
یک روش سریع برای معرفی شما با
283
00:13:12,860 –> 00:13:14,090
برنامه هایی است که در واقع نمی دانید. باید
284
00:13:14,090 –> 00:13:15,800
این بخش را درک کنید، اما
285
00:13:15,800 –> 00:13:18,320
اگر افرادی که برنامه نویسان کمتری دریافت می کنند
286
00:13:18,320 –> 00:13:20,810
، این را تماشا می کنند، ممکن است مفید باشد، بنابراین این
287
00:13:20,810 –> 00:13:23,270
اساساً یک برنامه کوچک است که من نوشتم
288
00:13:23,270 –> 00:13:28,160
و نشان می دهد که در اینجا یک آرایه چند بعدی داریم،
289
00:13:28,160 –> 00:13:32,420
بنابراین کاری که قرار است انجام دهد این
290
00:13:32,420 –> 00:13:34,790
است که این را بنویسد. مقدار در
291
00:13:34,790 –> 00:13:37,070
سمت چپ آرایه به نام فایل
292
00:13:37,070 –> 00:13:39,080
در سمت راست است، اما آن را
293
00:13:39,080 –> 00:13:41,660
رمزگذاری می کند، بنابراین اگر به اینجا نگاه کنید خوب است
294
00:13:41,660 –> 00:13:44,690
آرایه را در اینجا تکرار کنید و سپس
295
00:13:44,690 –> 00:13:46,970
نشانگر داده را که
296
00:13:46,970 –> 00:13:48,740
داده ها برای رمزگذاری و نام فایل است تنظیم کنید.
297
00:13:48,740 –> 00:13:52,319
سپس تماس بگیرید در حال نوشتن فایل رمزگذاری شده
298
00:13:52,319 –> 00:13:55,240
بله، امیدوارم چند
299
00:13:55,240 –> 00:13:56,889
نرم افزار مخرب ساده را معکوس کنم، فقط باید
300
00:13:56,889 –> 00:13:58,749
چند بدافزار ساده را پیدا
301
00:13:58,749 –> 00:14:00,579
کنم که یکی از مشکلات بزرگی
302
00:14:00,579 –> 00:14:02,139
است که من دارم این است که همه چیزهایی که در حال حاضر به آن نگاه می
303
00:14:02,139 –> 00:14:04,779
کنم بسیار پیشرفته است.
304
00:14:04,779 –> 00:14:08,259
بنابراین من فقط سعی میکنم
305
00:14:08,259 –> 00:14:10,240
نمونههای سادهای را
306
00:14:10,240 –> 00:14:13,179
بنویسم تا بتوانم آنها را به عقب برگردانید تا زمانی که بتوانم
307
00:14:13,179 –> 00:14:16,300
چیزی ساده پیدا کنم، بنابراین اساساً
308
00:14:16,300 –> 00:14:18,490
کاری که میخواهد انجام دهد این است که هر یک
309
00:14:18,490 –> 00:14:20,829
از این رشتهها را رمزگذاری میکند و آن را در
310
00:14:20,829 –> 00:14:24,610
هر یک از آنها ذخیره میکند. این فایلها با این
311
00:14:24,610 –> 00:14:29,649
تابع فایل رمزگذاریشده درست، بنابراین اجازه دهید به عملکرد
312
00:14:29,649 –> 00:14:30,730
فایل رمزگذاریشده درست نگاه
313
00:14:30,730 –> 00:14:34,019
کنیم،
314
00:14:34,019 –> 00:14:36,490
مشکلات رمزگذاری رمزگذاری رمزنگاری شده آن
315
00:14:36,490 –> 00:14:39,369
است که یک API ویندوز است و در واقع
316
00:14:39,369 –> 00:14:42,600
معمولاً در باجافزار استفاده میشود، عمدتاً
317
00:14:42,600 –> 00:14:45,850
رمزگذاری RSA و AES
318
00:14:45,850 –> 00:14:47,980
و همچنین یک چند مورد دیگر اما RSA و
319
00:14:47,980 –> 00:14:49,360
AES دو مورد رایج هستند که در
320
00:14:49,360 –> 00:14:51,550
جایی استفاده میشوند، بنابراین اولین پارامتر
321
00:14:51,550 –> 00:14:54,910
کلید است، سپس در اینجا ما بافری برای
322
00:14:54,910 –> 00:14:56,499
رمزگذاری داریم، بنابراین این دادههای ما
323
00:14:56,499 –> 00:14:59,740
رمزگذاری میشوند. و سپس اندازه
324
00:14:59,740 –> 00:15:01,779
خروجی سایت اندازه خروجی است و
325
00:15:01,779 –> 00:15:05,079
در جای خود رمزگذاری می شود، بنابراین ما در اینجا قرار می دهیم
326
00:15:05,079 –> 00:15:07,119
که داده ها را در بافر رمزگذاری شده
327
00:15:07,119 –> 00:15:09,639
کپی می کنیم تا داده های رمزگذاری نشده خود را کپی کنیم
328
00:15:09,639 –> 00:15:11,920
سپس یکی را که ما آن را crypt encrypt می نامیم
329
00:15:11,920 –> 00:15:14,619
، در واقع رمزگذاری خواهد شد. در همان
330
00:15:14,619 –> 00:15:17,649
بافری که آن را در آن قرار داده ایم، بنابراین
331
00:15:17,649 –> 00:15:19,420
آن را در بافر رمزگذاری شده رمزگذاری می کنیم
332
00:15:19,420 –> 00:15:22,809
و سپس آن را در فایل خود می نویسیم، بنابراین
333
00:15:22,809 –> 00:15:24,369
فرض کنید می خواستیم
334
00:15:24,369 –> 00:15:26,920
داده های رمزگذاری نشده را قبل از رمزگذاری دریافت کنیم،
335
00:15:26,920 –> 00:15:31,790
پس چگونه این کار را انجام دهیم. خوب،
336
00:15:31,790 –> 00:15:36,740
اگر فایلهای رمزگذاری شده را باز کنیم و
337
00:15:36,740 –> 00:15:39,100
کجاست،
338
00:15:40,399 –> 00:15:42,350
بنابراین میخواهم آن را به عنوان نمونه اجرا کنم
339
00:15:42,350 –> 00:15:44,070
340
00:15:44,070 –> 00:15:47,119
[موسیقی]
341
00:15:49,120 –> 00:15:52,499
اوه وندی باگ
342
00:15:55,180 –> 00:15:59,090
با تشکر از این دکتر فرعی. Metasploit بنابراین
343
00:15:59,090 –> 00:16:01,430
ما فقط آن را اجرا کردیم و میتوانیم
344
00:16:01,430 –> 00:16:04,480
ببینیم که شش فایل رمزگذاری شده نوشته شده است و
345
00:16:04,480 –> 00:16:07,100
اینها فایلهایی هستند که متن را
346
00:16:07,100 –> 00:16:10,550
برای آنها میخواهید، بنابراین کاری که میخواهیم انجام دهیم این است که
347
00:16:10,550 –> 00:16:13,280
واردات را بررسی میکنیم و ببینیم که کجا
348
00:16:13,280 –> 00:16:15,200
آن را به صورت رمزگذاری شده فراخوانی میکند. فایل از اوه
349
00:16:15,200 –> 00:16:20,990
متأسفم رمزگذاری رمزگذاری رمزگذاری شده است، بنابراین برای انجام این کار،
350
00:16:20,990 –> 00:16:23,240
یک Ida روی نام کلیک راست می کنیم
351
00:16:23,240 –> 00:16:26,210
و سپس به X Rex می رویم دستگیری
352
00:16:26,210 –> 00:16:29,360
دو روی و که اساساً
353
00:16:29,360 –> 00:16:32,510
می گوید هی لیستی از همه چیزهایی که به این ارجاع می دهند را به من بده.
354
00:16:32,510 –> 00:16:35,660
تابع و ما میتوانیم
355
00:16:35,660 –> 00:16:37,220
ببینیم که در واقع فقط در یک
356
00:16:37,220 –> 00:16:41,420
مکان خنک میشود که حالا اگر
357
00:16:41,420 –> 00:16:43,010
از منبع به یاد داشته باشید
358
00:16:43,010 –> 00:16:44,840
این تابع در واقع
359
00:16:44,840 –> 00:16:46,550
تابع فایل رمزگذاریشده درست است، این همان چیزی
360
00:16:46,550 –> 00:16:51,890
است که در اسمبلی به نظر میرسد، بنابراین کاری که من میخواهم
361
00:16:51,890 –> 00:16:54,020
انجام دهم این است من یک پنجره دستور اسکریپت را باز میکنم،
362
00:16:54,020 –> 00:16:56,180
آن را به حالت پایتون تغییر میدهم و
363
00:16:56,180 –> 00:16:58,100
میخواهیم ببینیم که چگونه میتوانیم
364
00:16:58,100 –> 00:17:02,870
دادههای D را
365
00:17:02,870 –> 00:17:05,990
قبل از رمزگذاری به صورت برنامهنویسی دریافت کنیم، بنابراین من میخواهم یک
366
00:17:05,990 –> 00:17:07,579
نقطه شکست در تابع فایل رمزگذاری شده نوشتن خود تعیین کنم
367
00:17:07,579 –> 00:17:09,170
و سپس اجرا کنیم. دوباره برنامه
368
00:17:09,170 –> 00:17:11,349
به آنجا می رویم،
369
00:17:11,349 –> 00:17:18,579
بنابراین اگر به پشته ای که ESP است نگاه
370
00:17:18,700 –> 00:17:20,960
کنیم، چند کلمه D
371
00:17:20,960 –> 00:17:23,390
روی پشته خواهیم داشت، از جمله نام فایل ما در اینجا
372
00:17:23,390 –> 00:17:28,280
و متن ما در اینجا، بنابراین
373
00:17:28,280 –> 00:17:30,860
اینها را از پایتون که من می خواهم دریافت کنیم.
374
00:17:30,860 –> 00:17:33,820
یک برگه تقلب برای
375
00:17:38,130 –> 00:17:42,429
درست بیاورید تا اولین مورد مفید
376
00:17:42,429 –> 00:17:44,170
خواندن یک رشته از حافظه باشد، ما می
377
00:17:44,170 –> 00:17:46,690
خواهیم هر دو رشته نام فایل
378
00:17:46,690 –> 00:17:49,630
و داده ها قبل از رمزگذاری
379
00:17:49,630 –> 00:17:51,100
واقعی رمزگذاری شوند، یعنی زمانی که
380
00:17:51,100 –> 00:17:54,220
نقطه شکست ما است. در اینجا من
381
00:17:54,220 –> 00:17:58,410
فقط پنجره ida را به کناری می
382
00:17:58,410 –> 00:18:03,429
برم و آن را کمی به سمت راست جمع می کنم، بنابراین
383
00:18:03,429 –> 00:18:04,720
اولین تابعی که به آن نیاز داریم این است
384
00:18:04,720 –> 00:18:08,799
که رشته ما را
385
00:18:08,799 –> 00:18:10,600
دریافت کند تا رشته و سپس اولین پارامتر را دریافت نکنیم.
386
00:18:10,600 –> 00:18:13,809
آدرس رشته است، بنابراین
387
00:18:13,809 –> 00:18:18,490
با نام تلفن شروع می کنیم،
388
00:18:18,490 –> 00:18:20,440
زیرا این اولین پارامتر متنی است
389
00:18:20,440 –> 00:18:23,679
که در اینجا می گوید که خارج از
390
00:18:23,679 –> 00:18:26,620
افست C است، اما چون این نسبت
391
00:18:26,620 –> 00:18:29,440
به EBP است که پس از فشار دادن
392
00:18:29,440 –> 00:18:31,750
چیزی تنظیم می شود. در غیر این صورت به پشته ما
393
00:18:31,750 –> 00:18:33,400
از ESP استفاده خواهیم کرد که به این معنی است ما باید
394
00:18:33,400 –> 00:18:35,049
هر یک از این آفست ها را
395
00:18:35,049 –> 00:18:40,510
چهار کم کنیم، بنابراین برای خواندن نشانگر پشته،
396
00:18:40,510 –> 00:18:42,490
باید مقدار
397
00:18:42,490 –> 00:18:48,790
ثبات ESP را بخوانیم که مقدار reg است، بنابراین
398
00:18:48,790 –> 00:18:51,490
مقدار Reggie را بدست آوریم و سپس ESP را در ESP قرار دهیم، در
399
00:18:51,490 –> 00:18:53,830
واقع می توانیم این را اجرا کنیم. نشان دهید
400
00:18:53,830 –> 00:18:58,780
که چگونه کار می کند در Consol free
401
00:18:58,780 –> 00:19:02,049
شما را به حالت پایتون سوئیچ کنید و سپس
402
00:19:02,049 –> 00:19:04,780
مقدار آماده سازی ESP را خنک می
403
00:19:04,780 –> 00:19:06,580
404
00:19:06,580 –> 00:19:08,740
405
00:19:08,740 –> 00:19:12,880
کنیم. میتوانید ببینید که
406
00:19:12,880 –> 00:19:16,299
آن مقدار در اینجا با ثبات ESP مطابقت دارد،
407
00:19:16,299 –> 00:19:20,410
بنابراین مقدار آماده ESP را دریافت کنید، اکنون
408
00:19:20,410 –> 00:19:23,530
نام فایل را میخواهیم که همانطور که گفتم منهای
409
00:19:23,530 –> 00:19:26,380
چهار از این است، بنابراین ESP
410
00:19:26,380 –> 00:19:30,270
به اضافه هشت خواهد بود، بنابراین
411
00:19:31,470 –> 00:19:33,870
مردم میگویم دوباره آن را اجرا کنیم.
412
00:19:33,870 –> 00:19:38,070
hex و آدرس
413
00:19:38,070 –> 00:19:40,380
پارامتر اول وجود دارد اگر ما آن را در Ida پرش کنیم
414
00:19:40,380 –> 00:19:43,020
که یک راه سریع برای انجام این کنترل G
415
00:19:43,020 –> 00:19:46,380
oh متاسفم G و سپس می توانید
416
00:19:46,380 –> 00:19:49,049
لباس خود را بچسبانید و به آن بپرید بنابراین اینجا
417
00:19:49,049 –> 00:19:51,750
آدرس نام فایل است اما ما در
418
00:19:51,750 –> 00:19:54,000
واقع متن را از نام فایل می
419
00:19:54,000 –> 00:19:55,740
خواهیم که به این معنی است که ما نیاز داریم برای خواندن آدرس آن
420
00:19:55,740 –> 00:19:58,860
به طوری که کلمه D خوانده شده ما از حافظه باشد،
421
00:19:58,860 –> 00:20:00,710
می خواهیم این کلمه D را در اینجا بخوانیم
422
00:20:00,710 –> 00:20:03,780
که به معنای قرار دادن آن در تابع کلمه D
423
00:20:03,780 –> 00:20:06,510
است که
424
00:20:06,510 –> 00:20:11,070
اگر واقعاً نتوانیم این کار را انجام دهیم، مقدار ESP +8 را دوباره می خواند.
425
00:20:11,070 –> 00:20:13,409
hex با این و من در واقع ما می
426
00:20:13,409 –> 00:20:15,740
توانیم سحر و جادو انجام دهیم
427
00:20:20,880 –> 00:20:24,650
و سپس اگر به لباس
428
00:20:24,650 –> 00:20:28,470
خود برویم متن ما وجود دارد، بنابراین ما می خواهیم به
429
00:20:28,470 –> 00:20:33,600
دنبال رشته ای در اطراف آن باشیم، پارامتر دوم
430
00:20:33,600 –> 00:20:37,980
طول است و بنابراین ما
431
00:20:37,980 –> 00:20:41,010
اینجا طول را به جز با رشته های C این است که آنها
432
00:20:41,010 –> 00:20:44,750
پایانی ندارند و آخرین توسط 0 توسط است،
433
00:20:44,750 –> 00:20:47,310
بنابراین ما می توانیم آن را روی منهای 1 قرار دهیم
434
00:20:47,310 –> 00:20:50,150
که می گوید تا آخرین بار بخوانیم
435
00:20:50,150 –> 00:20:52,890
که توسط آن همه به null می رسد که به
436
00:20:52,890 –> 00:20:55,020
طور خودکار طول ما را دریافت می کند و
437
00:20:55,020 –> 00:20:57,840
در نهایت ما یک ASCII هستیم. رشته بنابراین
438
00:20:57,840 –> 00:21:02,700
ما آن را روی یک sec stro c قرار می دهیم و اگر
439
00:21:02,700 –> 00:21:05,780
وقتی این را اجرا می کنیم همه چیز درست باشد باید کار
440
00:21:05,780 –> 00:21:07,350
441
00:21:07,350 –> 00:21:11,400
کند به شرطی که من واقعاً براکت ها را به درستی مطابقت داده باشم که فکر نمی کنم نه
442
00:21:11,400 –> 00:21:16,610
انجام داده ام نه
443
00:21:19,179 –> 00:21:22,139
بله هزینه ای
444
00:21:23,900 –> 00:21:27,070
با چیزی ندارم اشتباه اینجا
445
00:21:29,670 –> 00:21:33,780
با آنها اوه ما می رویم
446
00:21:33,780 –> 00:21:36,630
من فقط آن را تایپ کردم تا در اینجا بتوانیم
447
00:21:36,630 –> 00:21:38,550
خروجی آن را 1.2 X w ببینیم hich نام فایل ما است،
448
00:21:38,550 –> 00:21:42,660
بنابراین نام فایل را روی
449
00:21:42,660 –> 00:21:45,000
آن قرار
450
00:21:45,000 –> 00:21:49,750
می دهیم که متن بعدی دقیقاً همان متن است،
451
00:21:49,750 –> 00:21:53,169
با این تفاوت که ما به اضافه چهار
452
00:21:53,169 –> 00:21:54,549
از این افست هستیم، بنابراین
453
00:21:54,549 –> 00:21:57,399
ESP به اضافه C خواهد بود، بنابراین می توانیم فقط متن را کپی کنیم. کل
454
00:21:57,399 –> 00:21:59,799
خط مهره ای می گوید
455
00:21:59,799 –> 00:22:05,559
من داده های متنی را می شناسم و سپس آن را روی C تنظیم می
456
00:22:05,559 –> 00:22:07,270
کنیم، بنابراین ما می خواهیم رشته را در
457
00:22:07,270 –> 00:22:11,620
برگ حوا در یک C بخوانیم که اگر اینجا اجرا کنیم
458
00:22:11,620 –> 00:22:14,500
Hello world است و می خواهیم آن را به خوبی تجهیز کنیم،
459
00:22:14,500 –> 00:22:18,360
پس بیایید این کار را انجام دهیم. یک دوست فرمت
460
00:22:18,360 –> 00:22:25,409
شده فقط شما هستید رشته دو نقطه و
461
00:22:25,409 –> 00:22:30,309
سپس ابتدا نام فایل و بعداً متن بعدی،
462
00:22:30,309 –> 00:22:36,340
باید مطمئن شوم که نه و پنج
463
00:22:36,340 –> 00:22:39,330
اوه بله،
464
00:22:39,480 –> 00:22:41,190
بنابراین ما به اینجا می رویم
465
00:22:41,190 –> 00:22:43,620
که نام فایل را چاپ می کنیم و سپس
466
00:22:43,620 –> 00:22:45,299
متن آن چیست رمزگذاری شده و در آن قرار داده
467
00:22:45,299 –> 00:22:47,580
می شود، بنابراین اکنون آنچه می خواهیم انجام دهیم این است که
468
00:22:47,580 –> 00:22:49,399
این را برای هر فراخوانی به این تابع اجرا کنیم
469
00:22:49,399 –> 00:22:51,929
، جایی که نقاط شکست پایتون وارد می شود،
470
00:22:51,929 –> 00:22:55,500
بنابراین ما می خواهیم این نقطه شکست را
471
00:22:55,500 –> 00:22:58,679
با یک پایتون جایگزین کنیم تا این
472
00:22:58,679 –> 00:23:00,330
کار را انجام دهیم. باید این را در یک تابع بپیچید،
473
00:23:00,330 –> 00:23:02,010
بنابراین اجازه دهید آن را چیزی
474
00:23:02,010 –> 00:23:09,840
در خلاقیت مانند نامگذاری کنیم نقطه شکست و سپس
475
00:23:09,840 –> 00:23:13,230
چون روش کار Ida این است که
476
00:23:13,230 –> 00:23:14,940
در حین اجرای کد
477
00:23:14,940 –> 00:23:16,950
فقط زمانی که شما خراب هستید حافظه را به روز نمی کند مانند
478
00:23:16,950 –> 00:23:18,779
من در حال حاضر، بنابراین در واقع باید
479
00:23:18,779 –> 00:23:20,880
هر بار
480
00:23:20,880 –> 00:23:23,850
که نقطه شکست ما فراخوانی می شود حافظه رفرش دیباگر را فراخوانی کنیم، بنابراین اگر ما این را اجرا کنید،
481
00:23:23,850 –> 00:23:25,559
اکنون یک تابع پایتون به نام
482
00:23:25,559 –> 00:23:28,590
break point داریم که اگر اجرا کنیم، نام فایل و نام رشته ما را به ما می دهد،
483
00:23:28,590 –> 00:23:31,950
بنابراین اکنون تنها
484
00:23:31,950 –> 00:23:33,960
کاری که باید انجام دهیم این است که یک نقطه شکست تعیین کنیم،
485
00:23:33,960 –> 00:23:35,519
در واقع می توانیم فقط به صورت برنامه نویسی شود،
486
00:23:35,519 –> 00:23:38,460
اما نیازی به آن نداریم. کاری
487
00:23:38,460 –> 00:23:40,470
که میخواهم انجام دهم این است که سعی کنم این یکی را
488
00:23:40,470 –> 00:23:43,740
در اینجا ویرایش کنم، شرطی را که نیاز دارید تنظیم کنید،
489
00:23:43,740 –> 00:23:45,240
در واقع نمیتوانید آن را در اینجا جایگذاری کنید،
490
00:23:45,240 –> 00:23:47,730
باید به قسمت نقطه بروید و سپس
491
00:23:47,730 –> 00:23:50,580
Python را انتخاب کنید و سپس نقطه را جدا کنید
492
00:23:50,580 –> 00:23:55,789
و سپس اگر اجرا کردم. آن را دوباره اینجا ما می
493
00:23:55,789 –> 00:24:00,690
رویم خروجی دارد نام متن را باز کنید یک
494
00:24:00,690 –> 00:24:03,830
پنجره دفترچه یادداشت جدید برای این
495
00:24:03,940 –> 00:24:06,429
بله من دوست دارم برگه تقلب را بازی کرده و
496
00:24:06,429 –> 00:24:08,169
همچنین سس زیادی گذاشته
497
00:24:08,169 –> 00:24:10,469
ام فکر می
498
00:24:11,940 –> 00:24:14,379
کنم پس اگر به سراغ خود برویم کد منبع
499
00:24:14,379 –> 00:24:17,799
ما می توانیم ببینیم که این آرایه موی ما را مطابقت
500
00:24:17,799 –> 00:24:19,869
دارد و در واقع به عقب است اما هر
501
00:24:19,869 –> 00:24:23,200
چیزی که با موفقیت خدا و همه
502
00:24:23,200 –> 00:24:25,090
داده های قبلی را داریم با یک نقطه شکست پایتون رمزگذاری شده است،
503
00:24:25,090 –> 00:24:27,159
بنابراین اینها در واقع بسیار
504
00:24:27,159 –> 00:24:29,529
مفید هستند و در واقع یک ترفند کوچک وجود دارد
505
00:24:29,529 –> 00:24:31,090
که قبل از اتمام کار به شما نشان خواهم داد
506
00:24:31,090 –> 00:24:34,509
و آن این است که اگر می خواهید در واقع یک نقطه شکست وجود داشته باشد.
507
00:24:34,509 –> 00:24:36,279
شکستن به
508
00:24:36,279 –> 00:24:38,100
دیباگر درست است،
509
00:24:38,100 –> 00:24:41,830
بنابراین ما در واقع شما باید این را حذف
510
00:24:41,830 –> 00:24:43,989
کنید تا دیگر به آن نیاز نداشته باشید، بنابراین ما
511
00:24:43,989 –> 00:24:46,859
فقط یک نقطه شکست تعیین می کنیم که true را برمی گرداند،
512
00:24:46,859 –> 00:24:51,700
فقط چیزی را نیز چاپ کنید تا
513
00:24:51,700 –> 00:24:53,379
hello world چاپ شود و true برگردد.
514
00:24:53,379 –> 00:24:55,090
هر بار که نقطه شکست ما
515
00:24:55,090 –> 00:24:58,090
نامیده می شود، بنابراین ما آن را روی یک نقطه شکست تنظیم می
516
00:24:58,090 –> 00:24:59,739
کنیم، در واقع هنوز تنظیم شده است، اما بیایید
517
00:24:59,739 –> 00:25:04,950
وانمود کنیم و سپس شما متوقف می کنیم، آن را اجرا می کنیم
518
00:25:04,950 –> 00:25:09,369
و به شما می گوید سلام دنیا، و
519
00:25:09,369 –> 00:25:12,580
اگر به false برگردیم، اکنون شکسته می شود
520
00:25:12,580 –> 00:25:14,649
، در واقع همچنان اجرا می شود نقطه
521
00:25:14,649 –> 00:25:16,419
شکست اما اشکالزدا را نمیشکند،
522
00:25:16,419 –> 00:25:18,789
فقط به کار خود ادامه میدهد، بنابراین اگر دوباره همین کار را انجام دهیم،
523
00:25:18,789 –> 00:25:23,230
متوجه میشویم که این بار شکسته نشده است،
524
00:25:23,230 –> 00:25:25,899
بنابراین میتوانیم انتخاب کنیم که آیا
525
00:25:25,899 –> 00:25:28,480
نقطه شکست واقعاً برای ما خراب میشود یا
526
00:25:28,480 –> 00:25:30,100
فقط اجرا میشود. کد و ادامه می
527
00:25:30,100 –> 00:25:33,669
دهد که بسیار مفید است، بنابراین هر
528
00:25:33,669 –> 00:25:36,720
سوالی دارید تا کنون
529
00:25:37,639 –> 00:25:39,700
530
00:25:47,820 –> 00:25:52,270
نشت حافظه آنلاین دارید 31 نه حافظه نشت
531
00:25:52,270 –> 00:25:54,280
نمی کند، ادویه و پیسون نشت نمی کند دوست من
532
00:25:54,280 –> 00:25:56,550
533
00:25:59,450 –> 00:26:01,510
شما
534
00:26:04,380 –> 00:26:06,090
شما
535
00:26:06,090 –> 00:26:08,730
من انحراف
536
00:26:08,730 –> 00:26:09,900
برنامه خود را بالا می برم بله
537
00:26:09,900 –> 00:26:12,299
قرار نیست عالی باشد. فقط یک
538
00:26:12,299 –> 00:26:16,710
نمونه نسخه IDA um من فکر می کنم
539
00:26:16,710 –> 00:26:19,950
این یکی شش امتیاز هشت است و سپس
540
00:26:19,950 –> 00:26:24,679
نسخه رایگان من هفت نقطه صفر است
541
00:26:25,920 –> 00:26:29,170
آیا از این استفاده واقعی می کنم
542
00:26:29,170 –> 00:26:33,700
منظور شما چیست آیا می توانید آن را در قطر انجام دهید. من
543
00:26:33,700 –> 00:26:36,910
در واقع نمی دانم Rodari از افزونه خوبی
544
00:26:36,910 –> 00:26:39,460
برای پایتون پشتیبانی می کند، من آن را امتحان نکرده
545
00:26:39,460 –> 00:26:42,360
ام، اما امیدوارم بتوانید
546
00:26:43,110 –> 00:26:46,140
اما اوه
547
00:26:50,820 –> 00:26:53,669
اوه بله، هوا در این مورد مانند
548
00:26:53,669 –> 00:26:56,700
مثال واقعی با جایی که
549
00:26:56,700 –> 00:26:58,440
فایل رمزگذاری شده فقط یک
550
00:26:58,440 –> 00:27:00,389
نمونه است که من درست کردم، زیرا یک راه آسان
551
00:27:00,389 –> 00:27:04,500
برای نشان دادن این تکنیک، اما
552
00:27:04,500 –> 00:27:06,419
بیشتر ایده تنظیم
553
00:27:06,419 –> 00:27:09,559
نقاط شکست پایتون می تواند فوق العاده مفید باشد.
554
00:27:09,559 –> 00:27:12,880
اکنون یک برگه تقلب آپلود می کنم در واقع
555
00:27:12,880 –> 00:27:16,049
[موسیقی]
556
00:27:18,180 –> 00:27:22,550
آن را از اسنادی
557
00:27:30,150 –> 00:27:32,210
که
558
00:27:32,519 –> 00:27:34,580
559
00:27:35,420 –> 00:27:37,870
کار می کنید
560
00:27:43,120 –> 00:27:47,350
و نحوه دسترسی به ساختار H Kripke
561
00:27:47,350 –> 00:27:50,110
از آیدا پیتو n اساساً همان
562
00:27:50,110 –> 00:27:52,540
چیزی است که شما فقط نمیتوانید
563
00:27:52,540 –> 00:27:55,000
مقادیر d-word را از آن بخوانید اگر یک
564
00:27:55,000 –> 00:27:56,680
مقدار کلمه بود، همان کار را انجام میدهید
565
00:27:56,680 –> 00:27:58,210
که تابع کلمه را با آدرس خود در
566
00:27:58,210 –> 00:28:02,410
اینجا انجام میدهید، همچنین کلمه توسط و نشانه وجود دارد.
567
00:28:02,410 –> 00:28:06,030
در واقع فقط حافظه های خوانده
568
00:28:06,030 –> 00:28:10,690
شده برای چاه 3 هستند، بنابراین شما تابع bite خود را دریافت کردید،
569
00:28:10,690 –> 00:28:13,690
ما یک تابع کلمه معامله
570
00:28:13,690 –> 00:28:17,200
یک تابع کلمه D داریم و اگر می خواهید
571
00:28:17,200 –> 00:28:18,730
اطلاعات بیشتری از آن بخوانید، ما در
572
00:28:18,730 –> 00:28:21,280
واقع تابع دریافت بایت های زیادی را داریم که
573
00:28:21,280 –> 00:28:23,290
آن را وارد میکند، یک آرایه بایت کامل را میخواند
574
00:28:23,290 –> 00:28:25,690
که از آدرس شروع میشود و
575
00:28:25,690 –> 00:28:28,809
با تعداد بایتها به پایان میرسد، بنابراین میخواهم
576
00:28:28,809 –> 00:28:32,220
ببینم آیا چیچی واقعاً کار میکرده است
577
00:28:32,220 –> 00:28:34,570
، حتی یادم نمیآید که آن را به عنوان
578
00:28:34,570 –> 00:28:37,040
RTF چه
579
00:28:37,040 –> 00:28:39,670
مینامم،
580
00:28:39,930 –> 00:28:47,370
نه، به بزرگی کوچک و بزرگ حساس است، خوب پس اگر میخواهید آن را دانلود کنید،
581
00:28:47,370 –> 00:28:51,630
برگه تقلب در اینجا در این URL است،
582
00:28:51,630 –> 00:28:57,120
بنابراین بله، من از کدام ماشین مجازی
583
00:28:57,120 –> 00:28:59,790
استفاده میکنم، آیا منظور شما یک نرمافزار VM است
584
00:28:59,790 –> 00:29:02,670
که VMware است، من در واقع اینجا از آن استفاده
585
00:29:02,670 –> 00:29:05,930
میکنم، نمیدانم آیا میتوانید بله، میتوانید نوار آبی را ببینید
586
00:29:05,930 –> 00:29:09,110
587
00:29:11,760 –> 00:29:13,740
بله، بنابراین ایده پشت
588
00:29:13,740 –> 00:29:15,780
نقاط شکست پایتون مانند این استفاده خاص است
589
00:29:15,780 –> 00:29:19,200
کیس خیلی مفید نیست، اما من
590
00:29:19,200 –> 00:29:22,100
در گذشته از آن استفاده کردهام، من از آن روی عرشههای خشک استفاده میکنم تا
591
00:29:22,100 –> 00:29:24,330
اساساً
592
00:29:24,330 –> 00:29:25,770
رشتهها را بهطور شفاف رمزگشایی کنم، مانند تابع رمزگشایی
593
00:29:25,770 –> 00:29:27,420
و بهجای مهندسی معکوس
594
00:29:27,420 –> 00:29:28,980
تابع برای یافتن
595
00:29:28,980 –> 00:29:31,560
چگونگی رمزگشایی رشتهها. فقط اجازه دهید
596
00:29:31,560 –> 00:29:33,150
Dex خشک یک اجرا جدید بخرد و سپس
597
00:29:33,150 –> 00:29:35,940
من از نقطه شکست پایتون خود استفاده کردم تا
598
00:29:35,940 –> 00:29:37,410
رشته های رمزگذاری شده در رشته های رمزگشایی شده
599
00:29:37,410 –> 00:29:40,830
را از حافظه خارج کنم تا پایتون او از پشتیبانی داخلی پشتیبانی کند
600
00:29:40,830 –> 00:29:42,360
تا یا در واقع
601
00:29:42,360 –> 00:29:45,120
بله داخلی است زیرا من فکر می کنم نسخه
602
00:29:45,120 –> 00:29:47,790
5 است. یا چیزی شبیه به این یک
603
00:29:47,790 –> 00:29:50,250
ویژگی واقعاً قدیمی است، اما احتمالاً
604
00:29:50,250 –> 00:29:53,660
دست کم گرفتهشدهترین ویژگی
605
00:29:55,070 –> 00:29:57,130
شماست،
606
00:29:57,480 –> 00:30:01,540
من واقعاً رمزگذاری شده آپلود میکنم.
607
00:30:01,540 –> 00:30:03,280
608
00:30:03,280 –> 00:30:05,430
609
00:30:07,539 –> 00:30:09,320
610
00:30:09,320 –> 00:30:11,380
611
00:30:12,250 –> 00:30:14,880
612
00:30:18,800 –> 00:30:20,860
613
00:30:28,530 –> 00:30:32,000
اگر
614
00:30:33,570 –> 00:30:35,630
شما
615
00:30:36,430 –> 00:30:39,470
دارید، بدافزار معکوس می تواند از
616
00:30:39,470 –> 00:30:43,310
vb6 جدا شود، من در واقع این کار را نکرده ام، من معمولاً
617
00:30:43,310 –> 00:30:47,600
از رفتن با هر چیز غیر بومی اجتناب می کنم،
618
00:30:47,600 –> 00:30:49,250
زیرا بومی ها نقطه قوت من هستند،
619
00:30:49,250 –> 00:30:52,190
بنابراین من عمدتاً به چیزهای C و C++ یا اسمبلی پایبند هستم.
620
00:30:52,190 –> 00:30:55,450
621
00:30:58,490 –> 00:31:00,550
622
00:31:02,210 –> 00:31:07,499
باشه پس منبع
623
00:31:07,499 –> 00:31:11,759
رمزگذاری شده، یک پخش مجدد استریم یک
624
00:31:11,759 –> 00:31:17,330
نقطه زیپ است، بررسی کنید آنجا کار می کند
625
00:31:19,190 –> 00:31:20,970
، ما می رویم، بنابراین
626
00:31:20,970 –> 00:31:22,590
شما برای برگه تقلب خود را دانلود کردید
627
00:31:22,590 –> 00:31:24,630
و سپس URL دانلود برای
628
00:31:24,630 –> 00:31:28,260
یک کد رمزگذاری شده وجود دارد، به عنوان مثال vb6
629
00:31:28,260 –> 00:31:31,890
به بومی کامپایل می شود، در واقع بستگی دارد vb6 بتواند
630
00:31:31,890 –> 00:31:35,909
کامپایل کند. یک زبان میانی یا
631
00:31:35,909 –> 00:31:37,530
شما چیزی به نام کد p دارید
632
00:31:37,530 –> 00:31:39,990
و کد p بومی اساساً یک
633
00:31:39,990 –> 00:31:42,390
زبان میانی است و زبان بومی
634
00:31:42,390 –> 00:31:44,880
بله است، کامپایلر 7 باور کنید که
635
00:31:44,880 –> 00:31:47,549
مانند یک توده عظیم است و به
636
00:31:47,549 –> 00:31:50,039
تماسهای مربوط به زمان اجرای vb dl ارجاع داده میشود.
637
00:31:50,039 –> 00:31:52,770
معکوس کردن آن چندان سخت
638
00:31:52,770 –> 00:31:55,500
نیست، فقط هیچ کس بدافزار مناسبی را در ویژوال بیسیک نمی نویسد،
639
00:31:55,500 –> 00:31:56,580
640
00:31:56,580 –> 00:31:58,860
بنابراین اگر ویژوال بیسیک باشد، به
641
00:31:58,860 –> 00:32:00,840
طور خودکار چیزی است که من در واقع نمی
642
00:32:00,840 –> 00:32:05,659
خواهم به آن نگاه کنم، بنابراین تمایل دارم از این
643
00:32:06,320 –> 00:32:09,090
موضوع صرف نظر کنم که چگونه نقاط شکست اسلش را اشکال زدایی کنید.
644
00:32:09,090 –> 00:32:11,940
چگونه بدافزار خطرناکی ایجاد کنیم، بنابراین
645
00:32:11,940 –> 00:32:14,400
کاری که من انجام میدهم این است که مشخصاً در یک VM برای یک
646
00:32:14,400 –> 00:32:16,559
ستاره اجرا شود، مطمئن شوید که ماشین مجازی شما کاملاً
647
00:32:16,559 –> 00:32:19,530
از شبکه خانگی شما جدا شده است، بنابراین من میخواهم
648
00:32:19,530 –> 00:32:23,220
ببینم آیا تنظیمات اکنون خوب به نظر میرسند یا خیر.
649
00:32:23,220 –> 00:32:24,750
تنظیمات همپوشانی را نمیگیرد،
650
00:32:24,750 –> 00:32:26,640
اما اساساً میتوانید آن را طوری تنظیم کنید که
651
00:32:26,640 –> 00:32:28,350
کاملاً آن را از شبکه خانگی خود جدا کند،
652
00:32:28,350 –> 00:32:30,510
اگر واقعاً پارانوئید هستید،
653
00:32:30,510 –> 00:32:32,640
در واقع معکوسسازی خود را روی یک
654
00:32:32,640 –> 00:32:35,549
دستگاه کاملاً جداگانه انجام دهید،
655
00:32:35,549 –> 00:32:38,220
VMware را روی رایانه شخصی خود برای
656
00:32:38,220 –> 00:32:40,530
امور بانکی و خود اجرا نکنید. بازی یا هر چیز دیگری که
657
00:32:40,530 –> 00:32:42,419
آن را روی یک دستگاه کاملاً مجزا در یک
658
00:32:42,419 –> 00:32:44,309
شبکه کاملاً مجزا اجرا می کند،
659
00:32:44,309 –> 00:32:46,650
نباید هیچ ارتباطی بین
660
00:32:46,650 –> 00:32:48,450
دستگاه میزبان شما و دستگاه معکوس شما وجود داشته
661
00:32:48,450 –> 00:32:53,460
باشد، بنابراین آیا شما شروع به ثبت نام کنید،
662
00:32:53,460 –> 00:32:54,750
نه مطلقاً
663
00:32:54,750 –> 00:32:56,760
هیچ کس نمی خواهد در مورد زندگی من بشنود،
664
00:32:56,760 –> 00:33:01,710
خسته کننده است، بله، بنابراین به طور کلی، اگر می توانید،
665
00:33:01,710 –> 00:33:03,960
باید از اجرای بدافزارها اجتناب کنید،
666
00:33:03,960 –> 00:33:06,330
فقط باید تجزیه و تحلیل استاتیک انجام دهید، اما
667
00:33:06,330 –> 00:33:09,360
این کار بسیار کند است و واقعاً
668
00:33:09,360 –> 00:33:12,179
عملی نیست، می توانید
669
00:33:12,179 –> 00:33:14,340
با اجرای
670
00:33:14,340 –> 00:33:17,299
یک ساعت آنها و تعیین نقاط شکست، چیزها را خیلی سریعتر به دست آورید.
671
00:33:17,630 –> 00:33:19,690
672
00:33:22,080 –> 00:33:23,160
673
00:33:23,160 –> 00:33:25,610
دانلود یک برگه تقلب قبض RTF اوه
674
00:33:25,610 –> 00:33:29,790
بله قربان بله سرمایه Sears من
675
00:33:29,790 –> 00:33:32,600
احتمالا باید آن را تغییر دهم
676
00:33:33,110 –> 00:33:37,860
متاسفم من یک احمق هستم که چه چیزی باعث شد من به Mau تبدیل شوم
677
00:33:37,860 –> 00:33:43,980
تجزیه و تحلیل من در واقع نمی دانم
678
00:33:43,980 –> 00:33:46,590
فقط من همیشه برنامه ای بودم که دوست
679
00:33:46,590 –> 00:33:47,910
داشتم از حدود 12 سالگی برنامه نویسی می کردم،
680
00:33:47,910 –> 00:33:51,060
اما یادم می آید یک روز فکر می کنم
681
00:33:51,060 –> 00:33:54,720
یک نفر مثل آن روزها فرستاده بود
682
00:33:54,720 –> 00:33:56,850
که مردم می گفتند
683
00:33:56,850 –> 00:33:59,190
بدافزار را با برنامههای قانونی متصل کنید و
684
00:33:59,190 –> 00:34:01,500
آنها را در انجمنها آپلود کنید و شخصی
685
00:34:01,500 –> 00:34:03,240
این نرمافزار شگفتانگیز را به صورت رایگان آپلود کرده بود
686
00:34:03,240 –> 00:34:05,940
و من با خودم فکر میکردم صبر کنید،
687
00:34:05,940 –> 00:34:07,920
فکر میکنم آنها این را به صورت رایگان
688
00:34:07,920 –> 00:34:10,020
در یک انجمن ارسال میکنند، لینک دانلود رسمی
689
00:34:10,020 –> 00:34:12,199
نیست، احتمالا چیزی وجود دارد. از این
690
00:34:12,199 –> 00:34:14,668
رو، از آنجایی که من قبلاً می دانستم چگونه
691
00:34:14,668 –> 00:34:17,010
در اسمبلی برنامه نویسی کنم، فقط نیاز داشتم که
692
00:34:17,010 –> 00:34:19,110
بفهمم یک disassembler چیست،
693
00:34:19,110 –> 00:34:21,570
بنابراین رفتم و جستجو کردم که چگونه می توانم چگونه
694
00:34:21,570 –> 00:34:23,639
به داخل برنامه ها نگاه کنم و فکر می
695
00:34:23,639 –> 00:34:26,370
کنم حتی پس از لیدی باگ به اشکال زدایی کوچه برخورد کردم.
696
00:34:26,370 –> 00:34:28,290
من یک نگاه سریع
697
00:34:28,290 –> 00:34:30,840
کردم و خیلی واضح بود که TRAI نقطه ورود
698
00:34:30,840 –> 00:34:34,199
وجود دارد یک کد مخرب پرش به آنجا وجود دارد
699
00:34:34,199 –> 00:34:37,050
که اجرا می شود فکر می کنم
700
00:34:37,050 –> 00:34:39,840
Pro rat یا یک تروجان واقعا قدیمی
701
00:34:39,840 –> 00:34:41,699
برنامه خود را اجرا می کند و سپس
702
00:34:41,699 –> 00:34:44,580
legitima را اجرا می کند. نرم افزار و من فکر می کردم که
703
00:34:44,580 –> 00:34:46,770
این یک کار کوچک بسیار سرگرم کننده است، مثلاً
704
00:34:46,770 –> 00:34:49,199
باید این کار را ادامه دهم، بنابراین
705
00:34:49,199 –> 00:34:50,880
در واقع بعداً به راه اندازی
706
00:34:50,880 –> 00:34:54,570
comm بدافزار رسیدم، جایی که من شروع به
707
00:34:54,570 –> 00:34:58,080
وبلاگ نویسی کردم، اساساً وبلاگ نویسی را شروع کردم، همانطور که از
708
00:34:58,080 –> 00:35:00,990
طریق دهانم به تجزیه و تحلیل
709
00:35:00,990 –> 00:35:03,360
یادداشت های او پرداختم. برای من، اما به عنوان تدریس
710
00:35:03,360 –> 00:35:05,670
برای افراد دیگر و من به نوعی از
711
00:35:05,670 –> 00:35:08,180
آنجا شروع کردم،
712
00:35:13,020 –> 00:35:15,080
713
00:35:15,220 –> 00:35:16,940
شما می توانید از
714
00:35:16,940 –> 00:35:18,619
افزونه رشته های ثابت استفاده کنید، بله، می توانید
715
00:35:18,619 –> 00:35:21,349
این در واقع یک
716
00:35:21,349 –> 00:35:24,290
پلاگین بسیار خوب است، من نمی توانم به یاد بیاورم که چه
717
00:35:24,290 –> 00:35:27,470
گلی حتی مخفف مجموعه ابزار آتش یخ می باشد.
718
00:35:27,470 –> 00:35:31,010
فوق العاده خوب است Oracle VM
719
00:35:31,010 –> 00:35:33,349
VirtualBox یک برنامه vm خوب است، بله
720
00:35:33,349 –> 00:35:36,230
در واقع اینطور است اگر شما توانایی خرید VMware را ندارید
721
00:35:36,230 –> 00:35:38,990
یا یک VirtualBox جالب قطعا
722
00:35:38,990 –> 00:35:42,130
بهترین گزینه شما است،
723
00:35:44,240 –> 00:35:47,390
بنابراین در واقع برای نزدیک شدن به یادگیری
724
00:35:47,390 –> 00:35:49,280
تجزیه و تحلیل بیشتر، من قبلاً داخلی های ویندوز را می دانستم
725
00:35:49,280 –> 00:35:52,010
پس اینطور نبود. واقعاً
726
00:35:52,010 –> 00:35:54,589
برای من یک مزیت بود، بهعنوان یک برنامهنویس،
727
00:35:54,589 –> 00:35:56,570
اسمبلی را میشناختم، میدانستم که سیستمهای داخلی ویندوز و
728
00:35:56,570 –> 00:36:00,109
پرستاران مائوری برای من اساساً
729
00:36:00,109 –> 00:36:02,060
یاد میگیرند چگونه از ابزارهایی مانند ویرایش هگز Ida استفاده کنم.
730
00:36:02,060 –> 00:36:05,450
یا بنابراین من واقعاً یاد نگرفتم، به
731
00:36:05,450 –> 00:36:07,430
همین دلیل است که هیچ
732
00:36:07,430 –> 00:36:09,560
راهنمایی خوبی برای کسانی که به دنبال ورود
733
00:36:09,560 –> 00:36:11,420
به آن
734
00:36:11,420 –> 00:36:14,210
735
00:36:14,210 –> 00:36:16,160
هستند ندارم. به جای اینکه بخواهم
736
00:36:16,160 –> 00:36:20,570
مثل کتابها یا هر چیز دیگری را پیدا کنم تا
737
00:36:20,570 –> 00:36:21,950
به شما بگویم بروید بخوانید زیرا من در
738
00:36:21,950 –> 00:36:25,310
واقع هیچ کتاب معکوس نخواندم
739
00:36:25,310 –> 00:36:27,370
740
00:36:34,310 –> 00:36:37,020
741
00:36:37,020 –> 00:36:39,750
742
00:36:39,750 –> 00:36:43,080
743
00:36:43,080 –> 00:36:45,030
اکنون آنها را آپلود کنم زیرا در این صورت به نوعی
744
00:36:45,030 –> 00:36:46,830
مردم را به چی تشویق می کند و
745
00:36:46,830 –> 00:36:48,450
اگر کد منبع را نداشته باشید سرگرم کننده تر
746
00:36:48,450 –> 00:36:51,270
است زیرا می دانم که دوست دارم با
747
00:36:51,270 –> 00:36:53,100
من گیر بیاورم و ممکن است
748
00:36:53,100 –> 00:36:55,020
داشته باشم کمی نگاه کردن به کد منبع،
749
00:36:55,020 –> 00:36:57,300
در حالی که اگر اصلاً آن را نداشته باشم،
750
00:36:57,300 –> 00:37:01,350
نمیتوانم این کار را انجام دهم، بنابراین آن را آپلود میکنم،
751
00:37:01,350 –> 00:37:04,020
من قصد دارم تا
752
00:37:04,020 –> 00:37:05,760
بعد از آن صبر کنم، مثل اینکه رشتهها را زمانی آپلود میکنم که
753
00:37:05,760 –> 00:37:07,830
به نظر من قبلاً به
754
00:37:07,830 –> 00:37:09,900
شما نشان دادهام که چگونه همه آنها را انجام دهید، اما برای بقیه
755
00:37:09,900 –> 00:37:11,910
، صبر میکنم تا استریمها را بر
756
00:37:11,910 –> 00:37:15,210
اساس موارد مشابه انجام دهم برنامه در حال حاضر
757
00:37:15,210 –> 00:37:18,330
این است که من احتمالاً یک
758
00:37:18,330 –> 00:37:21,090
استریم معکوس هفتگی یا دوهفتهای انجام
759
00:37:21,090 –> 00:37:23,100
خواهم داد و با اجرای برخی
760
00:37:23,100 –> 00:37:26,430
از چالشهای فنی مردانه از مو شروع
761
00:37:26,430 –> 00:37:28,530
میکنم. اگر واقعاً مقدار دیگری که نیاز دارم داشته باشم. برای
762
00:37:28,530 –> 00:37:30,210
آپلود کردن اما در حال حاضر ما فقط اینها
763
00:37:30,210 –> 00:37:31,950
را در اینجا آورده ایم، بنابراین من می خواهم
764
00:37:31,950 –> 00:37:32,970
در ابتدای هر استریم چند مورد از آنها را بررسی کنم و
765
00:37:32,970 –> 00:37:34,440
سپس به چیز کمی
766
00:37:34,440 –> 00:37:36,210
پیشرفته تر ادامه دهم، مثلاً در این مورد،
767
00:37:36,210 –> 00:37:39,210
نقاط شکست پایتون در موارد دیگر بود.
768
00:37:39,210 –> 00:37:40,650
اگر
769
00:37:40,650 –> 00:37:41,970
پیشنهادی برای آنچه می خواهید
770
00:37:41,970 –> 00:37:43,800
در پایان استریم بعدی پوشش دهم، چیز دیگری است،
771
00:37:43,800 –> 00:37:47,480
می توانم این پیشنهاد
772
00:37:48,610 –> 00:37:51,920
را بپذیرم آیا توصیه ای برای
773
00:37:51,920 –> 00:37:55,130
معکوس کردن مبتنی بر گردن دارم یا فقط
774
00:37:55,130 –> 00:37:58,670
ah مبتنی بر ویندوز را می دانم بنابراین من کمی
775
00:37:58,670 –> 00:38:02,660
کارهای لینوکس را انجام میدهم، وقتی
776
00:38:02,660 –> 00:38:04,160
اسمبلی را تهیه کردید و وقتی
777
00:38:04,160 –> 00:38:05,570
با ابزارها آشنا شدید تقریباً یکسان
778
00:38:05,570 –> 00:38:10,520
است، فقط ظاهر خنککننده
779
00:38:10,520 –> 00:38:12,820
با لینوکس کمی متفاوت است،
780
00:38:12,820 –> 00:38:15,770
یا وقفههایی دارید یا سیسکو در حالی که
781
00:38:15,770 –> 00:38:17,720
ویندوز شما مانند مجموعه عظیمی از
782
00:38:17,720 –> 00:38:20,540
کتابخانه دارید بنابراین
783
00:38:20,540 –> 00:38:22,640
در سطح اسمبلی تفاوت چندانی وجود ندارد، فقط
784
00:38:22,640 –> 00:38:24,710
رابط کاربری جالب
785
00:38:24,710 –> 00:38:27,310
کمی به بررسی
786
00:38:29,470 –> 00:38:32,020
آنچه یاد گرفتید نیاز دارد تا قسمت های داخلی ویندوز را درک کنید.
787
00:38:32,020 –> 00:38:35,140
788
00:38:35,140 –> 00:38:37,240
789
00:38:37,240 –> 00:38:39,190
790
00:38:39,190 –> 00:38:42,220
من فقط از
791
00:38:42,220 –> 00:38:44,710
خراب کردن و وادار کردن کرنل به
792
00:38:44,710 –> 00:38:48,840
کارهایی که نباید انجام دهد لذت می برم، بنابراین
793
00:38:48,840 –> 00:38:51,940
اساساً هسته
794
00:38:51,940 –> 00:38:54,940
ویندوز یا کتابخانه های ویندوز را در Ida باز می کنم و تازه
795
00:38:54,940 –> 00:38:56,500
شروع به حفاری می کنم و
796
00:38:56,500 –> 00:38:58,900
به این ترتیب به اکثر موارد داخلی رسیدم و سپس
797
00:38:58,900 –> 00:39:00,640
بقیه چیزهایی را که از خوش شانسی در بدافزار یاد گرفتم
798
00:39:00,640 –> 00:39:02,700
، میبینید که یک نوع
799
00:39:02,700 –> 00:39:05,020
عملکرد مبهم را که
800
00:39:05,020 –> 00:39:07,590
قبلاً ندیدهاید فراخوانی میکند، میدانم که این چیست و
801
00:39:07,590 –> 00:39:10,180
از نظر واقعاً کمی سختتر است،
802
00:39:10,180 –> 00:39:15,310
بنابراین اگر عملکرد داخلی را در نظر بگیریم. مثال خوبی است
803
00:39:15,310 –> 00:39:17,830
سعی کنید به نمونه ای فکر کنید که
804
00:39:17,830 –> 00:39:20,790
مستند نشده است،
805
00:39:23,780 –> 00:39:26,780
بنابراین اگر حافظه مجازی راست NT را جستجو کنیم
806
00:39:26,780 –> 00:39:29,780
و به صفحه MSDN برویم، در واقع
807
00:39:29,780 –> 00:39:32,210
پنهان است زیرا آنها نمی خواهند که شما
808
00:39:32,210 –> 00:39:33,950
با f داخلی بازی کنید.
809
00:39:33,950 –> 00:39:36,430
بنابراین وقتی صحبت از نگاه واقعی به موارد داخلی غیرمستند مانند NT به میان می آید،
810
00:39:36,430 –> 00:39:39,260
811
00:39:39,260 –> 00:39:42,560
حافظه مجازی راست راست و غیرمستند NT
812
00:39:42,560 –> 00:39:44,390
در شهرها یکی از بهترین دوستان شماست
813
00:39:44,390 –> 00:39:47,660
، اساساً
814
00:39:47,660 –> 00:39:49,520
همه کارکردهایی را که مایکروسافت نمی خواهد شما
815
00:39:49,520 –> 00:39:52,670
را با آنها درگیر
816
00:39:52,670 –> 00:39:54,590
کنید، ثبت می کند. فقط در اصل فقط
817
00:39:54,590 –> 00:39:56,300
گوگل کنید و روی گوگل کلیک کنید تا زمانی
818
00:39:56,300 –> 00:39:59,060
که چیزی پیدا کنید که اطلاعات کافی به شما می دهد
819
00:39:59,060 –> 00:40:01,820
یکی از موارد مورد علاقه من
820
00:40:01,820 –> 00:40:05,600
یک راکتور است که اگر نمی
821
00:40:05,600 –> 00:40:08,120
دانید اساسا یک کلون ویندوز منبع باز است
822
00:40:08,120 –> 00:40:11,780
که در github است، می توانید آن را
823
00:40:11,780 –> 00:40:13,820
باز کنید. در github به s واکنش نشان دهید و
824
00:40:13,820 –> 00:40:17,150
در واقع می توانید کد منبع
825
00:40:17,150 –> 00:40:19,160
توابع داخلی را مشاهده کنید. آنها اساساً
826
00:40:19,160 –> 00:40:21,470
تمام داخلی های ویندوز را مهندسی معکوس کردند
827
00:40:21,470 –> 00:40:24,650
و به نوعی
828
00:40:24,650 –> 00:40:27,020
کد منبع را در C بازنویسی کردند، بنابراین می توانید ببینید که چگونه
829
00:40:27,020 –> 00:40:28,730
آنها در داخل کار می کنند که عامل بسیار
830
00:40:28,730 –> 00:40:30,970
مفید
831
00:40:31,820 –> 00:40:34,040
تسلا است. شاید انجام یک استریم کار سرگرم کننده ای
832
00:40:34,040 –> 00:40:36,560
باشد، اما مثل این است که من
833
00:40:36,560 –> 00:40:38,360
مهندسی معکوس a.net را پیدا نکرده بودم، اما
834
00:40:38,360 –> 00:40:40,040
حدس می زنم مردم باید آن را یاد بگیرند، بنابراین
835
00:40:40,040 –> 00:40:42,610
نمی دانم چرا نه
836
00:40:43,300 –> 00:40:46,520
آیا من آن را در مورد چگونگی راه
837
00:40:46,520 –> 00:40:48,680
اندازی یک VM در حال حاضر برای تجزیه و تحلیل Mauer دارم.
838
00:40:48,680 –> 00:40:52,670
اگر در وبلاگ به خاطر بیاورم