لوچیانو آرانگو: OK، بچه ها. نام من لوچیانو آرانگو است. من دانشجوی سال دوم در آدامز خانه هستم. و ما قصد داریم تا در مورد صحبت امنیت وب دفاع فعال است. بنابراین من برای دفتر اطلاعات کار امنیت در SEAS. و در طول تابستان، در توقیف SeguraTec است، که به اطلاعات بود شرکت امنیتی است که خدمت کرده است برای بانک مرکزی کلمبیا. این بیشتر که من یاد گرفتم آن چیزی که یاد گرفته ام. و به این ترتیب برخی از مواد که ما هستیم رفتن به امروز بیش از، ما ندارد واقعا در مورد در کلاس صحبت کردیم. اما ما به زودی. آن را به مانند SQL، جاوا اسکریپت باشد. و ما واقعا بیش از آن نرفته است. بنابراین من ممکن است از پرواز از طریق آن را مرتب و شما ممکن است برخی از چیزهایی را نمی دانند. اما به زودی، شما آن را یاد بگیرند. و آن را خواهید تمام حس. همچنین یکی دیگر از چیزی - اخلاقی باقی بماند. بعضی از چیزهایی که یاد می گیرید، به شما می تواند به روش های غیر اخلاقی استفاده کنید. اگر شما، قطعا امتحان کنید. من قطعا انگیزه شما بچه ها سعی کنید به سرور های خود را، سعی کنید رفتن به داخل آنها. ببینید اگر شما می توانید آنها را نفوذ، اگر شما می توانید در داخل آنها را دریافت کنید. اما نه هر کس دیگری است. پلیس واقعا جوک دوست و در کل، ما این را در اینجا قرار داده است. ما در اطراف خراب شد. آنها واقعا عصبانی. بنابراین به این وب سایت سر. من آن را باز کرد در اینجا ببینید. این یک وب سایت است، و آن را تا به یک دسته از نمونه های. چه اتفاقی می افتد این است که به عنوان مثال اولین است نوعی از رفتن به یک بسیار ساده تر از گذشته به عنوان مثال در یک مفهوم که مثال اول کاملا نا امن است. و آخرین نوع از چه است فرد امنیت وب معمولی را انجام دهد. اما شما هنوز هم می تواند نوعی از اطراف آن دریافت کنید. و ما قصد داریم تا با تمرکز بر یکی و دو، یک نمونه و دو. OK. اجازه دهید با کراس سایت اسکریپت شروع می شود. جاوا اسکریپت اجرا بر روی مرورگر مشتری. این زبان برنامه نویسی که استفاده می کنید را به اجرا در مرورگر کاربر تا شما لازم نیست برای به روز رسانی وب سایت و رفتن به سرور. شما آن را در حال اجرا. به عنوان مثال، فیس بوک، شما لازم نیست برای بارگیری مجدد وب سایت برای وضعیت جدید به روز رسانی آمد تا. این با استفاده از جاوا اسکریپت برای تولید همه این چیزها. بنابراین ما می توانیم مخرب جاوا اسکریپت تزریق به وب سایت. و به این ترتیب، زمانی که ما یک لینک به کسی، ما می تواند نوعی از آن را با ارسال برخی از کد است که ما می خواهیم. است مداوم و غیر مداوم وجود دارد جاوا اسکریپت - مداوم و غیر مداوم کراس سایت برنامه نویسی، منظور من. و تفاوت که ماندگار جاوا اسکریپت است که خواهد بود ذخیره شده بر روی وب سایت. و غیر مداوم خواهد بود جاوا اسکریپت که در واقع فقط یک بار اتفاق می افتد. بنابراین اجازه دهید نگاهی به عنوان مثال سریع واقعی است. OK. بنابراین در این وب سایت، ساده، هیچ چیز در اینجا اتفاق می افتد. و ما قصد داریم به تلاش برای قرار دادن برخی از جاوا اسکریپت. پس راه ما شروع به نوشتن جاوا اسکریپت است ما با خط شروع شروع می شود. و ما آن را با اسکریپت نزدیک است. ما به سادگی می خواهید برای قرار دادن یک پیام - من شما را نشان می دهد - هشدار. هشدار یک تابع است که جاوا اسکریپت استفاده می کند برای نشان دادن چیزی. بنابراین اجازه دهید آن را امتحان کنید سریع واقعی است. من قصد دارم برای رفتن، خوش به حالت آماده باش. خوب، من را فراموش کرده برای قرار دادن - OK. به طوری که ساده است. ما جاوا اسکریپت در یک وب سایت قرار دهید، و آن را به بالا آمد. و این نوع فقط اتفاق می افتد در وب سایت ما، درست است؟ بنابراین به نظر می رسد مانند آن را مشکل، درست است؟ منظورم این است که، چگونه می تواند شما را با استفاده از این بدتر؟ پس راه که هکرها انجام این است که واقعا ساده است. آنها در حال رفتن به آن را گرفتن. آنها می توانند این لینک برای شما ارسال. اگر من این لینک به شما در حال حاضر ارسال، و شما آن را باز کنید، آن را به می گویند، سلام کرد و گفت که به وب سایت من به شما می گوید سلام. و به این ترتیب اگر من به چیزی می گویند کمی دقیق تر، اگر من بالا بکشد جاوا اسکریپت من از نوع در حال حاضر نوشت - اما اگر شما به آن نگاه کنید، من هم خواهم رفت بیش از آن قبل از من آن را نوشتم. بنابراین ما قصد داریم به مجموعه ایست. ما قصد داریم برای صبر یک زن و شوهر ثانیه صورت گرفت. در واقع، ما در حال رفتن به صبر کنید، اگر من اشتباه نیست، پنج ثانیه صورت گرفت. این می رود در میلی ثانیه. و پس از آن چیزی است که ما می خواهیم انجام دهیم این است که ما رفتن به هشدار که ورود به پایان رسیده است برای ورود دوباره وارد و ما قصد داریم به تغییر محل به یک مکان متفاوت است. پس اگر من این وب سایت را به کسی، آنها در حال رفتن به در حال دیدن اطراف، آرام است. هیچ چیز اتفاق می افتد. و در پنج ثانیه، این رفتن می گویند، ورود شما به پایان رسیده است. لطفا وارد سیستم شوید پشت شوید. هنگامی که آنها را کلیک کنید OK، من قصد دارم آنها را به وب سایت دیگر. احتمالا، وب سایت رفتن به شبیه به وب سایت است که آنها در قبل بود. و آنها در حال رفتن به ورود به سیستم خود اعتبار به وب سایت من به جای وب سایت خود را. و بنابراین من می تواند به مردم ارسال ایمیل با این لینک. من می گویم، آه، اینجا یک لینک است. این بانک است، به عنوان مثال. من می گویم، در اینجا، بر روی این لینک بروید. و یک بار آنها را ارسال آن، آنها رفتن به کاربران درحال بازدید از اطراف. من می توانم به مدت 15 ثانیه، 20 ثانیه صبر کنید، و پس از آن پاپ که لطفا دوباره وارد ثبت نام در پشت در. شما بچه ها می توانید آن را با سعی همه چیز خیلی بیشتر. این پیچیده به خاطر شما بچه ها جاوا اسکریپت دیده نمی شود، بنابراین شما ممکن بعضی از توابع را نمی دانند. اما همه شما باید انجام دهید شروع است با اسکریپت، اسکریپت پایان. و شما می توانید هر چیزی را در وسط. هشدار یک تابع است، صبر کنید. محل پنجره شما طول می کشد به محل جدید. اما شما می توانید این کار را انجام خیلی بیشتر. و به این ترتیب ایده این است که ما را که خاموش است. اگر من به عنوان مثال دو برود، و من در این کد همان قرار داده، آن را رفتن به کار می کنند. پس از آن به چاپ همه چیز را به خاطر آنچه در این وب سایت در ابتدا کند است اگر من هر چیزی را در اینجا قرار دهید آن را آن را در اینجا چاپ کنید. پس از آن هر چیزی چاپ نشده است. در این مثال است که در واقع چک برای دیدن اگر اسکریپت است وجود دارد. بنابراین، بله، پیش بروید. از من بپرسید. یک مدعو: آیا ارسال نمی دریافت و یا ارسال درخواست؟ لوچیانو آرانگو: آره. آنها ارسال درخواست دریافت کنید. رسید این است؟ لوچیانو آرانگو: آره. همچنین مرورگرهای استفاده نشده درخواست. اما من در تلاش برای نشان دادن به درخواست های GET به طوری که ما می توانیم ببینیم که چه چیزی است در واقع در رفتن. و به این ترتیب اگر ما به این کد نگاه کنید - پس از آن به کار نمی کنه. و اگر ما نگاهی به این کد، آن را به عنوان مثال دو باشد. چه این شخص در حال انجام است، فرد مسئول این مرورگر - باز کردن، OK - جایگزین اسکریپت کلمه. این PHP می باشد، که شما بچه ها ممکن است را دیده اند، کمی است. او فقط به جای اسکریپت کلمه را با نام. بنابراین با این حال، اگر من به جلو و فقط در قرار داده است - اگر با شتاب I کد من دوباره، و من قصد دارم برای تغییر این فقط یک کمی. به جای اسکریپت، من قصد دارم برای تغییر آن را برای اسکریپت با سرمایه R. و ما قصد داریم برای دیدن در صورتی که این کد کار می کند. پس از آن بود آن را چاپ نشده است، نشانه خوبی است. و امیدوارم در دو ثانیه بیشتر، آن را به ظاهر. ورود شما به پایان رسیده است. OK. که همه درست است. بنابراین چک کردن برای اسکریپت ممکن است نه لزوما کار می کنند. فرد - همچنین می تواند برای بزرگ اسکریپت چک، حروف کوچک اسکریپت، مورد خ مقایسه، مطمئن شوید که آنها با هم فرق داریم. اما هکر هنوز هم می تواند انجام مرتب کردن بر اساس آنچه که ما در Vigenere بود که ما نقل مکان کرد حرف پشت یک زن و شوهر، حرکت رو به جلو. و این می تواند به شکل از چگونه برای قرار دادن اسکریپت پشت در وجود دارد، بنابراین می توان آن را تزریق که اسکریپت. بنابراین آنچه شما می خواهید به استفاده از htmlspecialchars است محافظت از وب سایت شما. و چه می کند این است آن را می سازد اطمینان حاصل کنید که آنچه شما در قرار داده - به عنوان مثال، نقل قول و یا این بزرگتر یا کمتر از - است با چیزی جایگزین که نمی خواهد - اجازه دهید من در اینجا زوم - آن & را داشتند واقعی. آن را جایگزین آن ویژه HTML شخصیت های که خواهیم دید زمانی که ما هستیم صحبت کردن در مورد - آه، این است که تا من رو دوباره به - این کاراکتر در اینجا ببینید. این نشان می دهد که چیزی در راه است. برای HTML، که پایه شروع به ما می گوید که چیزی HTML مربوط به آینده است. و ما می خواهیم از آن خلاص شوید. ما نمی خواهیم برای قرار دادن HTML را به website.k ما نمی خواهیم که کاربر می شود قادر به قرار دادن چیزی در وب سایت خود را است که می تواند وب سایت خود را تحت تاثیر قرار دهد، مانند اسکریپت یا HTML و یا چیزی شبیه به آن. آنچه که مهم است این است که شما مطابق اصول بهداشت کردن ورودی کاربر. بنابراین کاربران می توانند ورودی بسیاری از چیزها. او ورودی می تواند یک دسته از مسائل را امتحان کنید به فوت و فن مرورگر خود را هنوز هم اجرای این کد اسکریپت. آنچه شما می خواهید برای انجام شده است و نه فقط نگاه برای اسکریپت، اما برای همه چیز نگاه است که می تواند مخرب. و htmlspecialchars انجام خواهد داد که برای شما، بنابراین شما لازم نیست در مورد آن نگران باشید. اما سعی نکنید به انجام توسط خودتان مرتب کردن بر اساس با کد خود را. هر کس در XSS روشن؟ OK. اجازه دهید به تزریق SQL بروید. بنابراین تزریق SQL است که احتمالا شماره یک آسیب پذیری در وب سایت های مختلف. منظورم این است که یک مثال خوب - من فقط تحقیق شد دورترین برای این کار. و من این مقاله بسیار جذاب، که در آن من تو را دیدم که هاروارد شکسته شد، هک شد. و من، تعجب بود خوب، چگونه آن را انجام دهد؟ هاروارد عالی ترین، ترین امن دانشگاه همیشه. درست است؟ خوب، برای رخنه به سرور، هکرها با استفاده از یک روش به نام تزریق SQL. بنابراین این اتفاق می افتد در یک روز به روز پایه. مردم را فراموش کرده ام حساب کاربری برای تزریق SQL. هاروارد می کند. من فکر می کنم آن را می گوید در اینجا، پرینستون، استنفورد، دانشگاه کرنل. پس چگونه ما - چه خوب، این SQL است تزریق است که آوردن همه این مردم را؟ OK. بنابراین SQL یک زبان برنامه نویسی است که استفاده می کنیم برای دسترسی به پایگاه های داده. چه کار می کنیم این است که ما را انتخاب کنید - بنابراین آنچه این بار خوانده شده در حال حاضر انتخاب شده است همه چیز از جدول. SQL، آن را به این پایگاه داده را تغییر می که جداول کامل از اطلاعات است. بنابراین همه چیز را از کاربران را انتخاب کنید که در آن نام کاربری است. درست است؟ به اندازه کافی ساده است. ایده تزریق SQL است که ما قرار دادن بعضی از کد های مخرب است که می فریب سرور را در حال اجرا چیزی متفاوت از آنچه در آن در اصل در حال اجرا بود. بنابراین اجازه دهید برای نام کاربری می گویند، ما در قرار داده و 1 برابر است با 1. بنابراین ما در قرار دهید و یا 1 برابر است با 1. راه در حال حاضر آن را می خواند انتخاب خواهد شد از کاربران، همه چیز را از کاربران - همه چیز است - که در آن نام کاربری است، اما نام کاربری یا 1 برابر است با 1. بنابراین نام هیچ چیز یا 1 برابر است با 1. 1 برابر 1 است همیشه درست است. بنابراین این همیشه اطلاعات باز خواهد گشت از کاربران. OK. ما لازم نیست که نام کاربری درست است. ما فقط می تواند هر چیزی که ما می خواهیم داشته باشد، و آن را به اطلاعات بازگشت که ما نیاز داریم. بیایید در یک مثال دیگر نگاه کنید. اگر ما همه چیز را از کاربر را انتخاب کنید، که در آن نام DROP TABLE کاربران است - بنابراین چه چیزی شما فکر می کنم این اراده انجام اگر من در نام کاربری قرار داده به عنوان کاربران DROP TABLE؟ هر کس یک ایده؟ بله. یک مدعو: این رفتن به بگویید آن را به روگرفت تمام جداول. لوچیانو آرانگو: این موضوع به ما بگویید به روگرفت همه چیز را در وب سایت، همه چیز را در پایگاه داده باشد. و آنچه که مردم در استفاده از این - تا من قصد دارم به شما بچه ها را نشان می دهد. من از کار افتاده حذف جداول چرا که من تو را می خواهم نه بچه ها به رها کردن جداول من. بیایید نگاهی به این. پس این به سادگی می کشد تا اطلاعات برای یک فرد خاص. پس چگونه ما می دانیم اگر این است تحت تاثیر تزریق SQL. ما قصد داریم به بررسی سریع واقعی آیا می توان چیزی را - اجازه دهید من این کد را کپی کنید. من قصد دارم بیش از آن در یک ثانیه. من قصد دارم برای قرار دادن ریشه و 1 برابر است با 1. این حق در اینجا، این علامت درصد 23 - آنچه که واقعا هست، اگر من نگاه حق در اینجا در - راه HTML طول می کشد در اعداد، اگر شما نگاهی به زمانی که من در یک فضای قرار داده در اینجا - اگر من به فضا چیزی بود در اینجا، این تغییر به درصد 2. آیا بچه ها از دیدن این حق در اینجا زمانی که من در یک فضای قرار داده است؟ راه کار این است که شما فقط می توانید ارسال مقادیر ASCII از HTML. بنابراین جایگزین آن شده، به عنوان مثال، یک فضای با درصد 20. من نمی دانم اگر شما بچه ها را دیده اند که قبل از. آن را جایگزین hashtag با درصد 23. ما نیاز به یک hashtag در پایان یا بیانیه به طوری که ما می توانیم بگویم پایگاه داده را فراموش کرده ام به نظر از این نقطه و ویرگول گذشته، در پایان. ما می خواهیم آن را به مورد است که فکر می کنم نیست. ما فقط می خواهیم آن را به اجرا همه چیز که ما را از قبل و اظهار نظر که از. اجازه دهید نگاهی به آن. بنابراین اگر من به چیزی اشتباه است - اجازه دهید به عنوان مثال می گویند، I 2 برابر قرار داده 1، آن چه به من هر چیزی را. زمانی که من در نتیجهی 1 برابر 1، و آن را چیزی بازگشت، این به من می گوید که این آسیب پذیر است تزریق SQL. من می دانم که در حال حاضر که هر من بعد از این قرار - و به عنوان مثال، قطره جدول و یا چیزی شبیه به آن قطعا کار خواهد کرد. من می دانم که آن را آسیب پذیر به تزریق SQL زیرا من می دانم که در زیر هود، آن را اجازه من انجام 1 برابر 1 چیزی. OK؟ و اگر ما در این آنهایی که دیگر نگاه کنید، شماره دو و شماره سه، آن را را به انجام کمی بیشتر چک کردن زیر هود از آنچه در آن است. بنابراین هر کسی قادر به رها کردن هر چیزی هنوز و یا تلاش؟ آیا بچه ها مرتب سازی بر اساس دریافت SQL رتبهدهی نشده است؟ از آنجا که من می دانم که شما بچه ها ندارد دیده می شود آن نشده است، پس از آن نوع گیج کننده برای شما بچه ها. بیایید نگاهی به. پس چه راه برای جلوگیری از SQLI است؟ OK. پس این است که واقعا مهم است زیرا شما بچه ها قطعا می خواهید برای جلوگیری از این در وب سایت شما. اگر نه، تمام دوستان خود را در حال رفتن به سرگرم کننده از شما زمانی که آنها رها همه جداول خود را. بنابراین ایده این است که شما تعمیر SQL در یک روش خاص، در حالی که شما مطابقت چه ورودی کاربر با یک رشته خاص. بنابراین راه این کار این است که شما آماده سازی پایگاه داده. شما نام، رنگ، و کالری را انتخاب کنید از یک پایگاه داده به نام میوه. و پس از آن که در آن کالری کمتر از است، و ما با قرار دادن یک علامت سوال وجود دارد گفت: ما در حال رفتن به ورودی چیزی در یک ثانیه. و رنگ برابر است، و ما یک سوال قرار داده علامت گفت: ما قصد داریم به چیزی ورودی در یک ثانیه نیز هست. OK؟ و بعد ما آن را اجرا، قرار دادن در 150 و قرمز است. و این را بررسی خواهد کرد تا اطمینان حاصل کنید که این دو - این آرایه را بررسی می کند که این دو عدد صحیح و که این یک رشته است. پس از آن ما، و ما واکشی همه، ما آن را به رنگ قرمز قرار داده. این بدان معناست که ما واکشی تمام. این بدان معنی است که ما در واقع SQL اجرا بیانیه قرار داده و آن را به عقب به رنگ قرمز. در اینجا ما همین کار را، اما ما همین کار را برای زرد. و ما واکشی تمام. و در این راه، ما کاربر جلوگیری از از قادر بودن به ورودی چیزی این چیزی است که ما مشخص شده، یک رشته نیست و یا یک عدد صحیح، به عنوان مثال. من قبل از صحبت کردن در مورد با تکیه بر دیگران است. هنگامی که شما بچه ها شروع پروژه شما، شما قطعا رفتن به استفاده از خود راه انداز و یا چیزی مشابه آن. آیا شما بچه ها همیشه وردپرس استفاده می شود؟ احتمالا شما بچه ها استفاده کرده اند وردپرس به احتمال زیاد. بنابراین مشکل با استفاده از چیزهایی که افراد دیگر - من فقط رفتن به واقعی سریع گوگل آسیب پذیری وردپرس. اگر من این جلو و تا حال حاضر - من به معنای واقعی کلمه بود دو دوم گوگل. ما می توانید ببینید که وردپرس - این است که به عنوان سپتامبر '12 مورخ. 26 روز شده است. تنظیمات پیش فرض وردپرس قبل از 3.6 می کند این جلوگیری نمی کند برخی از ارسال، که ممکن است آن را آسان تر برای حملات کراس سایت اسکریپت. بنابراین یک داستان سریع، زمانی که ما مشغول به کار بودند با - پس من، در تابستان، کار کارآموزی. و ما با نوع کار شدند مانند شرکت کارت اعتباری بزرگ است. و آنها را بر روی چیزی به نام تکیه - من نمی دانم اگر شما بچه ها تا به حال بازی با یک محصول به نام جوملا. جوملا یک محصول است که به استفاده است کنترل - نوع مشابه وردپرس، مورد استفاده برای ساخت وب سایت. به طوری که آنها وب سایت خود را به حال کار بر روی جوملا. این است که در واقع یک کارت اعتباری شرکت در کلمبیا. من شما را به خود وب سایت سریع واقعی است. به طوری که آنها جوملا استفاده می شود. و به روز رسانی آنها بودند جوملا ندارد به علاوه بر این آخرین. و تا زمانی که ما نگاهی به در نظر گرفتن شد کد خود را، ما قادر به واقع داخل کد خود را و سرقت همه کارت اعتباری اطلاعاتی که آنها به حال، همه شماره کارت اعتباری، نام، آدرس. و این تنها بود - و کد خود را کاملا خوب بود. آنها کد بزرگ بود. این تمام امنیت بود. آنها تمام پایگاه داده بررسی می شود. آنها مطمئن کراس سایت ساخته شده برنامه نویسی خوب بود. اما آنها چیزی بود که مورد استفاده قرار به روز شده، که بود امن نیست. و به طوری که آنها را به - طوری که شما بچه ها قطعا رفتن به استفاده از دیگر کد، چارچوب های افراد دیگر مردم برای ایجاد وب سایت شما. اطمینان حاصل کنید که آنها امن چون گاهی اوقات آن را به شما نیست، که مرتکب اشتباهی می شود. اما شخص دیگری مرتکب اشتباهی می شود، و سپس شما سقوط به دلیل آن است. کلمات عبور و PII. بنابراین کلمه عبور. OK. اجازه دهید نگاهی به کلمات عبور سریع واقعی است. OK. لطفا به من بگویید که هر کس با استفاده از امن - من همه امید در اینجا با استفاده از کلمات عبور امن. من فقط اجازه دادن که به عنوان یک فرض. پس شما بچه ها قطعا رفتن به ذخیره رمز عبور برای وب سایت شما. شما در حال رفتن را به چیزی مانند ورود یا چیزی شبیه به آن. آنچه مهم است برای ذخیره کلمه عبور در متن ساده. این بسیار مهم است. شما نمی خواهید برای ذخیره رمز عبور در متن ساده. و شما قطعا نمی خواهید برای ذخیره آن را در یکی از راه های مخلوط. پس چه یکی از راه های مخلوط است که هنگامی که شما تولید یک کلمه، زمانی که شما از این قرار کلمه را به یک تابع هش، آن را تولید عقب نوعی مرموز پیام و یا مجموعه ای مرموز از کلید. من شما را به عنوان مثال نشان می دهد. من قصد دارم به هش password1 کلمه آنها. مخلوط بنابراین MD5 به من بازگشت نوعی از اطلاعات عجیب و غریب. مشکل این است که مردم از وجود دارد که خواهم برای رفتن به وب سایت ها در حال حاضر نمیفهمد مرتب سازی بر از تمام رشته هش MD5. چه آنها این است که آنها را در نشست خود کامپیوتر، و آنها هر درهم کلمه ممکن است تنها در خارج وجود دارد تا آنها مرتب کردن بر اساس آنچه این کردم. اگر من به این نگاه کردن - من فقط برداشت این مخلوط. اگر من این مخلوط از - اگر من به یک وب سایت، و من این مخلوط به خاطر من به دریافت پایگاه های داده، و من آن را نگاه کردن، کسی در حال حاضر آن را برای من نمیفهمد. آره. بنابراین مردم نشست، و هر MD5 هش که شما را در قرار داده، آنها در حال رفتن به بازگشت به شما چیزی که یک کلمه است. اگر من هش کلمه ای دیگر، مانند - من نمی دانم - trees2. من نمی خواهم نا امید شده توسط جستجوی گوگل من. آن وجود دارد، trees2. بنابراین بسیاری از وب سایت هنوز هم هش MD5 استفاده کنید. آنها می گویند، آه، آن را امن. ما در متن ساده در حال ذخیره سازی نیست. در حال حاضر این هش MD5. و تمام چیزی که باید انجام دهید این است که فقط گوگل تعداد. من حتی به خودم محاسبه. من فقط می توانید آن را گوگل، و کسی در حال حاضر آن را برای من انجام داد. در اینجا یک دسته از آنها است. در اینجا یک دسته از کلمات عبور است. پس قطعا نمی هش MD5 استفاده نمی کند، چرا که همه شما را به انجام گوگل در آن است. بنابراین چه چیزی شما می خواهید استفاده کنید به جای؟ OK. چیزی به نام شور. پس چه شور است - آیا بچه ها به یاد داشته باشید هنگامی که ما بودند صحبت کردن در مورد تصادفی در - من مطمئن هستم که چه pset آن بود نیست - آن pset وجود دارد بود یا چهار؟ ما در مورد پیدا کردن صحبت شد سوزن در انبار کاه. و در pset، از آن گفت که شما می توانید در واقع کشف کردن آنچه تصادفی تولید چرا که کسی در حال فرار تصادفی یک میلیون بار و فقط مرتب کردن بر اساس شکل آنچه را که آنها تولید کند. آنچه شما می خواهید برای انجام شده است در ورودی قرار داده است. بنابراین این چیزی است که نمکی نوع است. آنها در حال حاضر نمیفهمد چه نمکی می گرداند برای هر کار. پس چه شور می کند شما در یک نمک قرار داده است. شما در یک کلمه خاص قرار داده است. و از آن خواهد شد که کلمه هش بسته در مورد آنچه شما را در اینجا. بنابراین اگر من هش یک رمز عبور با این جمله، آن را به هش متفاوت اگر من هش password1 با جمله های مختلف. این نوع از آن را می دهد تا جایی برای شروع برای هش کردن به آغاز خواهد شد. پس از آن سختتر برای محاسبه، اما شما هنوز هم می توانید آن را محاسبه، به خصوص اگر شما استفاده از یک نمک بد است. مردم در حال حاضر نیز نمیفهمد نمکهای معمول و نمیفهمد آنچه که در آن است. نمک تصادفی بسیار بهتر است، اما بهترین راه، استفاده از چیزی به نام دخمه. و چه دخمه اجازه می دهد تا شما را به را - پس از این توابع می باشد در حال حاضر برای شما ساخته شده است. بسیاری از مردم فراموش می کنند که، یا آنها فراموش می کنند تا از آن استفاده کنید. اما اگر من نگاه کردن به دخمه PHP، دخمه در حال حاضر برای من تابع یک رشته هش. و در واقع آن را نمک پاشیده چند بار و چند بار آن را می کردند. بنابراین ما مجبور به انجام این کار. پس همه شما باید انجام دهید این است ارسال آن به دخمه. و آن را به یک مخلوط بزرگ بدون ایجاد شما نیاز به نمک نگران و یا هر چیزی. چرا که اگر شما به نمک بود آن، شما باید به یاد داشته باشید آنچه نمک شما استفاده می شود چرا که اگر نه، شما نمی توانید خود را رمز عبور برگشت بدون نمک که شما استفاده می شود. OK. و همچنین شناسایی شخصی اطلاعات. امنیتی پس اجتماعی، کارت اعتباری - که بسیار واضح است. اما گاهی اوقات مردم راه را فراموش کرده ام آثار است، چه مقدار اطلاعات شما انجام در واقع نیاز به پیدا کردن برخی از یک نفر؟ کسی که یک مطالعه در مورد انجام این راه برگشت. و آن را مانند بود، اگر شما نام و نام خانوادگی، شما می توانید پیدا کنید کسی که به راحتی. اما اگر شما یک نام و نام خانوادگی و تاریخ تولد خود؟ این است که به اندازه کافی برای شناسایی کسی که به طور خاص؟ اگر شما نام و خود را آدرس خیابان که آنها زندگی می کنند؟ این است که به اندازه کافی برای پیدا کردن کسی؟ و این زمانی که آنها سوال، چه چیزی است اطلاعات شخصی قابل شناسایی، و آنچه که باید شما نگران به دور؟ اگر شما را دور قابل شناسایی شخصی اطلاعات که کسی به شما می دهد، شما به طور بالقوه می تواند به شکایت کرد. و ما قطعا نمی خواهید که نیست. بنابراین، هنگامی که شما با قرار دادن وب سایت شما از، و شما واقعا سرد طراحی، امیدوارم شما ساخته شده پروژه نهایی بسیار جذاب است. هر شما نوع می خواهید آن را خارج وجود دارد. شما می خواهید مطمئن شوید که هر چه شما در حال گرفتن از کاربر، اگر آن را اطلاعات شناسایی شخصی، شما خواهید مطمئن شوید که شما که واقعا مراقب آن. تزریق شل. OK. تزریق شل اجازه می دهد تا مزاحم به دسترسی به خط فرمان واقعی خود را در سرور شما. و به این ترتیب او قادر به اجرای کد که شما نمی توانید کنترل کنید. بیایید نگاهی به یک نمونه از این رشته زیبا در اینجا ببینید. اگر ما دوباره به وب سایت بروید، من هستم رفتن به رفتن به تزریق کد. پس چه می کند این است - آن را نیز به آنچه که ما بودند نگاه قبل از. ما اجازه دادن به کاربر در هر قرار او می خواهد، و آن را چاپ کنید هر آنچه که شما می خواهید. من می خواهم برای قرار دادن یک تماس. چه می کند این است - آن را با الحاق آغاز خواهد شد. پس از آن خواهد به من اجازه اجرای هر چه فرمان در حال اجرا شخص قبل و فرمان من. و من در حال اجرا یک دستور سیستم. و این رشته ها گذشته است - به یاد داشته باشید آنچه که من به شما بچه ها در مورد صحبت کردیم، در حالی که شما به رمز آن را در یک روش URL. اگر من در این اجرا در حال حاضر - من شما را در اینجا نشان می دهد - شما خواهید دید که من به پایان رسید تا در حال اجرا یک دستور. این است که در واقع سرور واقعی که به وب سایت من در حال اجرا است. بنابراین ما نمی خواهیم که، زیرا من می توانم اجرا - این سرور از من نیست. پس من به یک ظرف غذا تا می خواهم نه خود خواهر، سرور مارکوس است. اما شما می توانید دستورات بیشتری را اجرا کنید که خطرناک است. و به طور بالقوه، شما می توانید حذف کنید فایل، حذف دایرکتوری. من می توانم یک پوشه خاص در صورت حذف من می خواستم، اما من نمی خواهم برای انجام این کار به مارکوس. او پسر خوبی است. او به من اجازه سرور خود را قرض بگیرند. من می خواهم به او اجازه کردن از یک خوب است. پس چه ما نمی خواهیم که به استفاده از - ما نمی مایل به استفاده از ارزیابی و یا سیستم. اوال و یا سیستم ما اجازه می دهد تا به این تماس سیستم. ابزار اوال ارزیابی. سیستم به معنای چیزی است که من فرار. این چیزی است که در سیستم اجرا شود. اما ما می توانیم این چیزها را در ممنوع PHP به طوری که ما آنها را استفاده نمی کند. و آپلود فایل. من که قرار بود برای انجام عالی چیزی که با آپلود فایل. اما مانند من به شما بچه ها فایل من گفت، چیزی که آپلود کار نمی کند. اگر من به آپلود یک فایل در حال حاضر - اگر من به آپلود فایل، و آن را به یک عکس است - شما یک چیز آپلود فایل که یک عکس است. این خوب است. هیچ چیز اتفاق می افتد. اما اگر شما یک فایل آپلود، برای به عنوان مثال، و کاربر در واقع ارسال یک فایل PHP یا یک فایل exe و یا چیزی مانند آن، و سپس شما می تواند به طور بالقوه یک مشکل. قبل از این کار شد. از بخت بد من، آن را کار نمی کنه. اگر من، به عنوان مثال، این پرونده، من هستم گرفتن مجوز برای آپلود کنید فایل به دلیل سرور بودن من نیست. پس آن مرد واقعا هوشمند. بنابراین ما نمی خواهند - من قصد دارم به شما نشان می دهد بچه ها - OK، از این برخی از ابزار واقعا سرد است. بنابراین این - رفتن به - اگر شما بچه ها فایرفاکس - امیدوارم شما انجام دهد. دو افزودنی به نام SQL تزریق وجود دارد من و کراس سایت اسکریپت من. آنها برای باز کردن سمت به عنوان کوچک میله در سمت. و اگر من برای رفتن به CS60 به عنوان مثال - پس چه می شود؟ است به نظر می رسد تمام اشکال برای - امیدوارم، من نمی خواهد در مشکل برای این. اما OK. در اینجا سیستم پین است. تا زمانی که من شروع به دنبال سوراخ در سیستم، اولین چیزی که من انجام شده است باز کردن این کمی زیبا ابزار در سمت. و من قصد دارم برای تست اشکال با حملات خودکار. و بنابراین آنچه که این کار آن است که به آهستگی باز کردن یک دسته از مرورگر. در اینجا یک دسته از مرورگرها است. و این تلاش هر ترکیبی از کراس سایت اسکریپت وجود دارد که احتمالا این است که اگر شما در طرف را ببینید. و من نتیجه را مرتب کردن بر اساس چه پاسخ است. تمام منتقل می کند. بدیهی است، همه آنها منتقل می کند. منظورم این است که آنها واقعا باهوش مردم وجود دارد. اما اگر من به اجرا - من بار قبل از زمانی که من این اجرا را داشته ام در پروژه های نهایی دانش آموزان. من به سادگی اجرا SQL تزریق من با تمام حملات مختلف. و آن را تلاش برای SQL تزریق این سرور پین. بنابراین اگر ما پایین، برای به عنوان مثال، آن را می گوید - این خوب است اگر آن را برمی گرداند. پس از آن برخی از ارزش های خاص را آزمایش کردند. و سرور بازگشت کد که منفی بود. حذف به طور موقت. این خوب است. این تلاش می کند تمام این آزمون ها. بنابراین شما به سادگی می تواند اجرا - ای کاش می توانستم یک وب سایت واقعی پیدا سریع است که به من اجازه - شاید فروشگاه CS50. عجب، این است که رفتن به را راه بیش از حد طولانی است. من به شما اجازه آزمون اول پایان نیست. پس این شکایت. بنابراین این سه چیز است. این ابزار رایگان می باشد. شما می توانید آنها را دانلود کنید و اجرا کنید و آنها را در وب سایت خود را، و آن را به شما بگویم اگر شما باید کراس سایت اسکریپت، اگر شما SQL، اگر شما چیزی مانند آن. من مرتب کردن بر اساس از دست دادن. آنچه مهم است - OK، بنابراین هرگز کاربر اعتماد. هر چه که ورودی های کاربر برای شما، را مطمئن شوید که شما آن را مطابق اصول بهداشت کردن، آن را به شما تمیز کردن، شما برای همه چیز به درستی بررسی کنید، که به شما دادن آنچه که شما می خواهم او را به شما بدهد. همیشه در به روز شود چه چارچوب که شما در واقع با استفاده از. - اگر شما چیزی مانند خود راه انداز استفاده من می دانم که شما بچه ها در حال رفتن به استفاده از بوت استرپ، زیرا او به به بیش از این به زودی در کلاس - و وردپرس و یا چیزی شبیه به آن، به طور معمول این می تواند هک شود. و پس از آن شما حتی نمی دانند. شما فقط در حال اجرا وب سایت شما. و آن را کاملا امن. و شما را به پایین. پس من ماهیگیری واقعا زود. اما من می خواهم برای تشکر از Pentest آزمایشگاه. من قصد دارم به شما نشان می دهد بچه ها چیزی نام آزمایشگاه Pentest. اگر شما بچه ها واقعا علاقه مند چه امنیتی در واقع، یک وجود دارد وب سایت به نام آزمایشگاه Pentest اگر شما بچه ها رفتن به آن را در حال حاضر. آه، بله، که این نیست. من فقط رفتن به آن را اجرا کنید مثل این. گوگل به من پاسخ می گوید. OK. و می آموزد استفاده می - پس از آن می گوید، یاد نفوذ وب تست راه حق. این به شما می آموزد - امیدوارم، شما یک فرد اخلاقی است. اما آن را به شما می آموزد که چگونه شما می توانید در نگاه چگونه شما می توانید در داخل وب سایت دریافت کنید. و اگر شما یاد بگیرند که چگونه شما می توانید در داخل کنید وب سایت ها، شما می توانند یاد بگیرند که چگونه به محافظت از خود را از گرفتن وب سایت ها در داخل. اجازه بدهید من زوم چرا که شاید شما بچه ها در این راست به دنبال ندارد. از تزریق SQL به پوسته، بنابراین مرتب کردن بر اساس من چگونه می توانم از SQL کنید تزریق به پوسته. و شما دانلود این ماشین مجازی. و ماشین مجازی در حال حاضر می آید با وب سایت است که شما رفتن به آن را امتحان کنید در. شما این PDF دانلود کنید. و آن را به شما خط به خط نشان می دهد چه شما باید انجام دهید، چه چیزی شما را تیک بزنید. این چیزی است که یک مهاجم در واقع می کند به داخل یک وب سایت دریافت کنید. و برخی از این مسائل پیچیده است. ای کاش می توانستم بیش تر همه چیز با شما بچه ها. اما من نگران هستند که شما بچه ها واقعا نمی - این چیزی است که من بیش از با رفت شما بچه ها، آزمایش وب برای تست نفوذ. آیا واقعا نمی دانند چه SQL است و چه - سمینار کارل جکسون عالی است نیز هست. شما بچه ها را مرتب سازی بر نمی دانم از این چیست. اما اگر شما به این وب سایت بروید، و شما دانلود این آموزش و این فایلهای PDF، شما می توانید نگاهی به نوع را چه زمینه امنیت واقعا در تست نفوذ، ببینید که چگونه شما می توانید دریافت وب سایت در داخل و محافظت خود را از آن. بنابراین اگر من یک مرور کلی فوق العاده سریع، آن می شود جلوگیری کراس سایت اسکریپت. شما می خواهید به استفاده از htmlspecialchars هر زمان ورودی کاربر چیزی. جلوگیری از تزریق SQL. اگر شما انجام این کار، شما در حال حاضر بهتر از دانشگاه هاروارد بود زمانی که آنها را نقض کرد. و مطمئن شوید که کلمات عبور شما در متن ساده نیست. مطمئن شوید که شما نه تنها یکی از راه های مخلوط آنها اما شما با استفاده از دخمه، PHP تابع است که من به شما بچه ها را نشان داد. به این ترتیب، شما باید خوب باشد. همچنین، اگر دوستان شما به شما اجازه، اجرا SQL من در وب سایت خود تزریق. اجرای کراس سایت اسکریپت در وب سایت خود. و شما بسیاری از این وب سایت دیدن یک تن از آسیب پذیری. این باور نکردنی است که چگونه مردم بسیار را فراموش کرده ام برای پاکسازی پایگاه داده های خود و یا به مطمئن شوید که چه خواندن شخص است کد اسکریپت نیست. OK. من نوعی واقعا زود به پایان رسید. اما اگر کسی هر گونه سوال در مورد هر چیزی، شما می توانید به من یک سوال شلیک کنید. آره. برو، برو. یک مدعو: من فقط می خواهم بپرسم، می تواند به شما توضیح دهید که چگونه فایل دقیقا آثار را بارگذاری کنید. لوچیانو آرانگو: آره. بنابراین اجازه دهید به شما فایل را نشان می دهد آپلود سریع واقعی است. بنابراین آپلود فایل - مشکل ظ آپلود فایل در حال حاضر این است که - من قصد دارم برای باز کردن کد تا شما بچه ها کد پشت صحنه را ببینید. و آن را ارسال شده است. در اینجا یک کد برای آپلود فایل است. ما در حال تلاش برای رفتن به این دایرکتوری بیش از اینجا. و ما در حال تلاش برای، زمانی که ما ورودی فایل، فایل از Isset - زمانی که این کار وجود دارد فایل در فایل، تصویر، و سپس ما سعی می کنیم آن را به حرکت در اینجا. ما گرفتن فایل اینجا. روش POST، نوع، تصویر، فایل است. و ما از ارسال این فایل. و پس از آن زمانی که ما آن را دریافت کنید، پس یک بار فایل یک تصویر، ما در حال تلاش برای ارسال آن به این شاخه. مشکل این است که وب سایت است اجازه دادن به من به این شاخه بروید، به این دلیل که نمی خواهند من به عقب برگردید. این نمی خواهند من برای رفتن - من برای رفتن - بنابراین در اینجا آپلود کنید. در اینجا تصاویر است. من برای رفتن تمام راه برگشت به آغاز و آن را در وجود دارد و پس از آن بروید و آن را به دایرکتوری. بنابراین اگر من در حال اجرا یک پنجره ترمینال، و من می خواستم به حرکت می کند یک فایل - [نامفهوم] می توانید آن را ببینید. اگر من می خواستم به حرکت می کند یک فایل، من برای قرار دادن نام فایل و سپس مسیر کامل من می خواهم به ارسال آن به. و پس از آن سرور نیست به من اجازه بازگشت. و به این ترتیب آن را اجازه نمی من به آن فایل را دریافت کنید. اما به طور معمول - بنابراین یک کد برای وجود دارد آپلود یک فایل. بنابراین به طور معمول چه اتفاقی خواهد افتاد این است که شخص چک کردن اگر فایل من با. JPEG به پایان می رسد، بنابراین من می خواهید تیک بزنید. اجازه بدهید به عنوان مثال باز کردن بیش از حد سریع واقعی است. OK. این شخص سمت راست - بنابراین به عنوان مثال دو است بررسی اگر preg_match - در اینجا آن را بیش از اینجا است - مطمئن شوید که به پایان می رسد با PHP، که خوب است. این خوب است. اما یک بزرگ واقعی وجود دارد مشکل با این. این خوب است. اما اگر من به قرار دادن یک فایل با نام myfavoritepicture.php.jpeg، من می توانم هنوز هم به طور بالقوه از دست JPEG خلاص شدن از شر و اجرا it.k که PHP خطرناک است. شما نمی خواهید فرد قادر برای اجرای کد در وب سایت شما. اما پس از آن. JPEG اجازه می دهد تا آن را منتقل می کند. ایده این است که آنچه شما واقعا می خواهید انجام دهید است فایل ها، A. اما، OK، را ندارد چه شما واقعا می خواهید انجام دهید این است مطمئن شوید که شما بیش از تمام دنیا به عنوان خوانده شده. و هیچ چیز وجود دارد. پی اچ پی در آن است. هیچ. پی اچ پی در وجود دارد نام فایل کل. رسید اما شما می توانید از قرار داده است. JPEG در پایان. سرور هنوز کد اجرا شود. لوچیانو آرانگو: نه، نه در آغاز اجرا شود. شما باید به عقب برگردید و سعی کنید برای دیدن اگر شما می توانید - یک مدعو: بنابراین ما به - OK، فقط مجموعه ای دیگر است که شامل - لوچیانو آرانگو: آره. تماشاچیان: OK. لوچیانو آرانگو: آره. OK. هر گونه سؤال دیگر؟ OK. من قصد دارم به این ترک کردن و مرتب سازی از امتحان کنید تا ببینید اگر شما بچه ها می تواند - آنهایی که یک کمی بیشتر پیچیده چرا که آنها نیاز بسیار دانش بیشتر از SQL از تنها دانش آغاز از وب SQL است و چه جاوا اسکریپت است. اما من قصد دارم به سعی کنید برای حفظ این رو، و امیدوارم که شما بچه ها یاد خواهند گرفت در این مورد کنید و سعی کنید به زیرچشمی نگاه کردن در آنچه شما می توانید انجام دهید و چگونه بسیاری از نمونه شما می توانید از طریق دریافت کنید. هر کسی هر گونه دیگر سوالات در مورد آن؟ برو جلو. آره، ساقه، ساقه. آره، پیش بروید. برو جلو. تماشاچیان: OK. بنابراین من در مورد شنید که چگونه به نقل از سحر و جادو ایمن کافی نیست. لوچیانو آرانگو: چه - نقل قول سحر و جادو؟ یک مدعو: آره. پس از آن اضافه می کند - تا هر زمان که شما ورودی چیزی، همیشه می افزاید: به نقل از. لوچیانو آرانگو: آره. آره. OK. رسید و پس از آن من هر چند که کار می کرد، اما پس از آن من آن را جستجو کردن. و گفت که خوب نیست. اما من مطمئن هستم که چرا نیستم. لوچیانو آرانگو: آره. یک مدعو: آیا سحر و جادو نقل قول استفاده نمی کند، چرا که آن را امن نیست. لوچیانو آرانگو: OK. نقل قول بنابراین سحر و جادو است که شما را وارد SQL و آن را در حال حاضر می افزاید: از نقل قول برای شما. یک مدعو: همیشه اضافه می کند به نقل از در اطراف هر آنچه که شما قرار داده اید. لوچیانو آرانگو: آره. بنابراین مشکل این است که - من نگاه می گیرم - یک مدعو: چگونه آن را به دست آوردن بیانیه SQL؟ یا من حدس می زنم آن را می تواند مثل نقل قول انتخاب کنید. لوچیانو آرانگو: آره، شما نیاز دارید نقل قول خوب برای SQL. یک مدعو: نه، اما این سرور آن را برای شما. لوچیانو آرانگو: این نقل قول های کوچک حق در اینجا، این نقل قول کمی؟ یک مدعو: آره. لوچیانو آرانگو: آره. مشکل این است که شما می توانید اظهار نظر از گذشته - OK، چه می توانم انجام دهم این است که من می تواند نظر از - پس بیایید نگاهی - به من اجازه باز کردن یک فایل متن ویرایش. اجازه بدهید من این را ویرایش کنید در اینجا به طور مستقیم. OK. آیا می توانم به شما بچه ها می بینیم که به وضوح؟ چه می توانم انجام دهم این است که من می تواند نظر از یکی از آخرین. این اظهار نظر از یکی از آخرین. و پس از آن من در اینجا قرار دهید، قرار دادن همه چیز مخرب است. بنابراین کاربر در واقع خواندن، درست است؟ کاربر خواندن نمی همه چیز، درست است؟ این چیزی است که من قصد دارم به ورودی به عنوان فرد در تلاش برای داخل. من قصد دارم برای قرار دادن در - که یکی از علامت نقل قول است. این فقط پرپیچ وتاب ولول خور به اشتباه. و سپس آنچه را که کد است را به انجام - با عرض پوزش، من قصد دارم این است. چه کد است که برای انجام شده است آن را به اضافه اولین نقل قول نشانه در اینجا. و آن را برای اضافه کردن آخرین علامت نقل قول و همچنین. و آن را نیز رفتن برای اضافه کردن آخرین، آخرین علامت نقل قول. اما من اظهار نظر این نقل قول نشانه کردن، به طوری که آنها را اجرا کنید. و من در پایان با نقل قول علامت گذاری بیش از اینجا. آیا می دانید که؟ آیا شما از دست داده؟ من می توانم آخرین نقل قول نظر علامت، و مراقبت از علامت نقل قول برای اولین بار. رسید و پایان تنها یکی از اولین. لوچیانو آرانگو: آره. و فقط یکی از اولین به پایان برساند. بله، درست است. این چیزی است که من می تواند انجام دهد. آره. هر گونه سؤال دیگر که می خواهم؟ این سئوال خوبی است. نه، بله، شاید. امیدوارم، شما بچه ها مرتب سازی بر اساس موجب خواهد شد حس تر زمانی که شما مطالعه SQL و چیزهایی مانند آن. اما مطمئن شوید که شما - نگه داشتن این ابزار در سازمان دیده بان. با عرض پوزش، این ابزار بیش از اینجا. این ابزار بزرگ است. اگر کسی هر گونه سوال، شما همچنین می توانید به من ایمیل. این ایمیل عادی من است. و این ایمیل کار من است، که زمانی است که من در SEAS کار می کنند. OK، به لطف. با تشکر از بچه ها. شما خوب به آن بروید. شما لازم نیست به ماندن در اینجا. آیا کف زدن نیست. که عجیب و غریب. OK، به لطف، بچه ها.