Forwarded from OS Internals (Abolfazl Kazemi)
مروری بر حافظهی مجازی در ویندوز
وقتی یک برنامه اجرا میشود، برای آن پروسهای ایجاد شده که امکانات مختلفی از جمله دسترسی به حافظه را فراهم میکند. پروسهها مستقیم به حافظهی فیزیکی (همان RAM) دسترسی نداشته و یک لایهی Abstraction توسط سیستمعامل ایجاد میشود که به آن حافظهی مجازی میگویند.
این لایه وظایفی دارد که بخشی از آن به صورت خلاصه عبارتند از:
• مدیریت اینکه داده دقیقا در کدام آدرس RAM قرار دارد و Map کردن آن در فضای مجازی پروسه
• استفاده از Hard Disk در صورت کم بودن RAM بدون اینکه پروسه از آن اطلاع داشته باشد
• جلوگیری از تکرار داده در حافظهی فیزیکی و Map کردن بخشی که بین چند پروسه مشترک است برای آنها
• کنترل دسترسی به اطلاعات خاص و تعیین permission برای داده
• دسترسی به دادهها به صورت یکسری Chunk بجای دسترسی بایت به بایت (تعریف Page)
از طرف دیگر از دید پروسه کل فضای آدرسدهی ممکن (در مدل ۳۲بیتی ۲گیگابایت و در مدل ۶۴بیتی ۱۲۸ترابایت) قابل تخصیص بوده و میتوان از آن استفاده نمود ولی اینکه واقعا چقدر از آن قابل استفاده است بسته به میزان RAM موجود و میزان Hardای دارد که برای استفاده به عنوان حافظه در سیستمعامل تعیین شده است.
وپندوز امکان رزرو کردن کل فضای آدرسدهی ممکن را به پروسهها میدهند ولی برای استفادهی واقعی و قراردادن داده در آن باید آن فضا commit شده و در این مرحله است که امکانپذیر بودن آن با توجه به میزان کل فضای موجود، توسط سیستمعامل چک شده و اگر امکانپذیر بود به پروسه امکان دسترسی داده میشود.
در ابزارهای مختلفی که در ویندوز وجود دارند (مثل Task Manager, Process Explorer) یکسری Counter برای اطلاع پیدا کردن از وضعیت حافظه در سیستم و میزان فضای رزرو یا استفاده شده توسط پروسهها وجود دارد که میتوان به کمک آنها از اتفاقاتی که برای حافظه رخ میدهد اطلاع پیدا کرد.
در این ویدئو مروری بر وظایف حافظهی مجازی در ویندوز انجام گرفته و Counterهای موجود، برای بررسی آن در ابزارهای مختلف شرح داده میشوند.
لینک ویدئو در یوتیوب:
https://youtu.be/x5AnJpGBdW4
لینک ویدئو در آپارات:
https://aparat.com/v/NIsUi
#ShortWinInternals #windows #memory #internals #VirtualMemory #MemoryCounters
وقتی یک برنامه اجرا میشود، برای آن پروسهای ایجاد شده که امکانات مختلفی از جمله دسترسی به حافظه را فراهم میکند. پروسهها مستقیم به حافظهی فیزیکی (همان RAM) دسترسی نداشته و یک لایهی Abstraction توسط سیستمعامل ایجاد میشود که به آن حافظهی مجازی میگویند.
این لایه وظایفی دارد که بخشی از آن به صورت خلاصه عبارتند از:
• مدیریت اینکه داده دقیقا در کدام آدرس RAM قرار دارد و Map کردن آن در فضای مجازی پروسه
• استفاده از Hard Disk در صورت کم بودن RAM بدون اینکه پروسه از آن اطلاع داشته باشد
• جلوگیری از تکرار داده در حافظهی فیزیکی و Map کردن بخشی که بین چند پروسه مشترک است برای آنها
• کنترل دسترسی به اطلاعات خاص و تعیین permission برای داده
• دسترسی به دادهها به صورت یکسری Chunk بجای دسترسی بایت به بایت (تعریف Page)
از طرف دیگر از دید پروسه کل فضای آدرسدهی ممکن (در مدل ۳۲بیتی ۲گیگابایت و در مدل ۶۴بیتی ۱۲۸ترابایت) قابل تخصیص بوده و میتوان از آن استفاده نمود ولی اینکه واقعا چقدر از آن قابل استفاده است بسته به میزان RAM موجود و میزان Hardای دارد که برای استفاده به عنوان حافظه در سیستمعامل تعیین شده است.
وپندوز امکان رزرو کردن کل فضای آدرسدهی ممکن را به پروسهها میدهند ولی برای استفادهی واقعی و قراردادن داده در آن باید آن فضا commit شده و در این مرحله است که امکانپذیر بودن آن با توجه به میزان کل فضای موجود، توسط سیستمعامل چک شده و اگر امکانپذیر بود به پروسه امکان دسترسی داده میشود.
در ابزارهای مختلفی که در ویندوز وجود دارند (مثل Task Manager, Process Explorer) یکسری Counter برای اطلاع پیدا کردن از وضعیت حافظه در سیستم و میزان فضای رزرو یا استفاده شده توسط پروسهها وجود دارد که میتوان به کمک آنها از اتفاقاتی که برای حافظه رخ میدهد اطلاع پیدا کرد.
در این ویدئو مروری بر وظایف حافظهی مجازی در ویندوز انجام گرفته و Counterهای موجود، برای بررسی آن در ابزارهای مختلف شرح داده میشوند.
لینک ویدئو در یوتیوب:
https://youtu.be/x5AnJpGBdW4
لینک ویدئو در آپارات:
https://aparat.com/v/NIsUi
#ShortWinInternals #windows #memory #internals #VirtualMemory #MemoryCounters
Forwarded from کافه ریاضی
ویدئوهای درس «ریاضی برای علوم کامپیوتر» دانشگاه MIT:
https://www.youtube.com/playlist?list=PLB7540DEDD482705B
تمرینها و سایر محتوای این درس رو هم میتونید اینجا پیدا کنید: https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-fall-2010/
سوال اخیر ما بر اساس یکی از تمرینهای این درس بود.
https://www.youtube.com/playlist?list=PLB7540DEDD482705B
تمرینها و سایر محتوای این درس رو هم میتونید اینجا پیدا کنید: https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-fall-2010/
سوال اخیر ما بر اساس یکی از تمرینهای این درس بود.
MIT OpenCourseWare
Mathematics for Computer Science | Electrical Engineering and Computer Science | MIT OpenCourseWare
This course covers elementary discrete mathematics for computer science and engineering. It emphasizes mathematical definitions and proofs as well as applicable methods. Topics include formal logic notation, proof methods; induction, well-ordering; sets,…
The Windows Concept Journey - v3.0 - March 2024.pdf
1.8 MB
Forwarded from white2hack 📚
Certified Ethical Hacker Exam Preparation_CEH12_PDF.pdf
1.5 MB
Certified Ethical Hacker (CEH v.12) Exam Preparation. Sample Questions with Answers by Mohammad Alkhudari
(Green Circle Co), 2023
(Green Circle Co), 2023
اگر دنبال یادگیری زبونهای مختلف برنامه نویسی به شکل پروژه محور هستید، این مخزن github احتمالا بتونه به شکل رایگان کمک زیادی بکنه بهتون.
#programming
#project
#programming
#project
GitHub
GitHub - practical-tutorials/project-based-learning: Curated list of project-based tutorials
Curated list of project-based tutorials. Contribute to practical-tutorials/project-based-learning development by creating an account on GitHub.
آیا میدانید reinterpret cast در cpp چیست؟
شاید براتون پیش اومده باشه که خواسته باشین یه دیتای خامی مثلا یه آرایه از بایت یا اینت رو تبدیل کنین به یه استراکچر یا کلاس
مثلا فرض کنین که کد زیر رو داریم:
چجوری میتونیم این raw_data رو کست کنیم و به پوینتر به MyStruct تبدیلش کنیم؟
توی سی اینجوری میشه:
دو مدل کست دیگه هم داریم، static_cast و dynamic_cast که ایشالا بعدا میگمشون
شاید براتون پیش اومده باشه که خواسته باشین یه دیتای خامی مثلا یه آرایه از بایت یا اینت رو تبدیل کنین به یه استراکچر یا کلاس
مثلا فرض کنین که کد زیر رو داریم:
struct MySteuct{
int a;
string b;
}
char* raw_data;
حالا فرض کنین که اومدیم و از یه جایی این raw_data رو پر کردیم مثلا از فایل خوندیم.چجوری میتونیم این raw_data رو کست کنیم و به پوینتر به MyStruct تبدیلش کنیم؟
توی سی اینجوری میشه:
MyStruct * casted_data= (MyStruct*)raw_data;ولی اگه خواسته باشیم توی سی پلاس پلاس بزنیم، میتونیم کد زیر رو بزنیم. البته کد بالا هم کاملا کار میکنه و عملا این دوتا هیچ فرقی با هم ندارن!
MyStruct * casted_data=reinterpret_cast<MyStruct*> raw_data;تمام👍
دو مدل کست دیگه هم داریم، static_cast و dynamic_cast که ایشالا بعدا میگمشون
Heap exploitation writeup:
https://infosecwriteups.com/the-toddlers-introduction-to-dynamic-memory-allocation-300f312cd2db
https://infosecwriteups.com/the-toddlers-introduction-to-dynamic-memory-allocation-300f312cd2db
Medium
The toddler’s introduction to Dynamic Memory Allocation
Heap vulnerabilities have dominated the interest of the security research community for quite long time due to their potential of finding…
Forwarded from OnHex
🔴 قسمت دهم : حافظه (تئوری)
در این ویدیو نگاهی به سلسله مراتب حافظه انداختیم، واحدهای اندازه گیری Bit ، Byte ، Word ، Dword و Qword رو بررسی کردیم . همچنین نگاهی به بحث Big Endian و Little Endian انداختیم.
دسترسی به کل محتوای دوره
دسترسی به اسلاید این جلسه
#ReverseEngineering #مهندسی_معکوس
🆔 @onhex_ir
➡️ ALL Link
در این ویدیو نگاهی به سلسله مراتب حافظه انداختیم، واحدهای اندازه گیری Bit ، Byte ، Word ، Dword و Qword رو بررسی کردیم . همچنین نگاهی به بحث Big Endian و Little Endian انداختیم.
دسترسی به کل محتوای دوره
دسترسی به اسلاید این جلسه
#ReverseEngineering #مهندسی_معکوس
🆔 @onhex_ir
➡️ ALL Link
YouTube
قسمت دهم : حافظه (تئوری)
در این ویدیو نگاهی به سلسله مراتب حافظه انداختیم، واحدهای اندازه گیری Bit ، Byte ، Word ، Dword و Qword بررسی کردیم . همچنین نگاهی به بحث Big Endian و Little Endian انداختیم.
دسترسی به سیلابس دوره :
https://onhexgroup.ir/software-reverse-engineering-tutorials/…
دسترسی به سیلابس دوره :
https://onhexgroup.ir/software-reverse-engineering-tutorials/…
Forwarded from Nettrain کانال آموزش شبکه (Amirhossein Mortazavi)
با برخی از بهترین ابزارهای نفوذ و تست نفوذ کالی
ابزارهائی نظیر
nmap, metasploit, Aircrack-ng, Empire, ...
ویرایش سوم
چاپ 2024
انتشارات Packt
کانال آموزش شبکه
🆔 instagram.com/network.train
🌐 https://t.iss.one/nettrain
ابزارهائی نظیر
nmap, metasploit, Aircrack-ng, Empire, ...
ویرایش سوم
چاپ 2024
انتشارات Packt
کانال آموزش شبکه
🆔 instagram.com/network.train
🌐 https://t.iss.one/nettrain
Forwarded from Nettrain کانال آموزش شبکه (Amirhossein Mortazavi)
[email protected]
40.4 MB
Forwarded from کانال بایت امن
#Tutorial
Real-world Android Malware Analysis
Part1 - Part2 - Part3 - Part4
تو این آموزش 4 قسمتی، نحوه تحلیل بدافزارهای اندروید رو با نمونه های واقعی یاد میگیرید
🦅 کانال بایت امن | گروه بایت امن
_
Real-world Android Malware Analysis
Part1 - Part2 - Part3 - Part4
تو این آموزش 4 قسمتی، نحوه تحلیل بدافزارهای اندروید رو با نمونه های واقعی یاد میگیرید
_
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Python BackendHub (Mani)
سلام. ما داخل تیممون داخل شرکت Noah Labs به دنبال یک بک اند دولوپر پایتون هستیم. این پوزیشن visa sponsership داره ولی به دلیل نیاز سریع به نیرو, فقط میتونیم کسانی رو اسپانسر کنیم که کارشون رو زودتر حتی ریموت شروع کنند. به همین دلیل اگه داخل ایران هستین و یا اجازه کار ندارین حتما لینک زیر رو بخونید.
شرایط کار کردن قانونی به صورت ریموت
میتونید با آیدی تلگرام من در تماس باشین برای ریفر کردتون. لطفا رزومه تون رو داخل پیامتون بفرستین.
@mani_nikou
At Noah Labs, we are guided by the vision to develop software that understands, treats, and ultimately prevents cardiovascular diseases. Our mission is to help people with heart diseases live longer and happier lives. We are building a Machine Learning based Health Analytics platform that combines connected medical devices, smart algorithms and a mobile application for patients. Such an application involves storing and serving data for multiple frontends, integrating with 3rd party systems, processing and analyzing health data and much more…
Tasks:
- You'll strengthen our backend: Storing, processing and reliably serving our customers' sensitive health data.
- You'll keep an eye on code quality and best practices: Making sure our code is well tested doesn't mean you'll be writing tests 24/7. More importantly you are pushing for a high quality codebase within the team, worthy of a medical product.
- You'll work autonomously and as part of a team: Agile, owning some things and sharing others.
Requirements:
- You have at least 2 years of backend developer experience.
- You have experience with FastAPI, SQLAlchemy, PostgreSQL, Pytest and Playwright.
- You can communicate a deep understanding of programming fundamentals: Why is one abstraction good and another bad?
- You know how to write solid, consistent, meaningful tests. Testing only what needs to be tested, at the right level of abstraction.
- You can give constructive code reviews, helping your teammates to write better code.
Benefits
💔 The chance to solve a problem that affects millions of people
🚀 A highly talented and ambitious team
☮️ A good environment practice your craftsmanship, we care about quality and DX
💸 Competitive compensation & an Urban Sports Club membership
🏡 A beautiful office in Berlin (Mitte) or Potsdam (Babelsberg)
🍺 Team drinks every Friday!
لینک اپلای
@PyBackendHub
شرایط کار کردن قانونی به صورت ریموت
میتونید با آیدی تلگرام من در تماس باشین برای ریفر کردتون. لطفا رزومه تون رو داخل پیامتون بفرستین.
@mani_nikou
At Noah Labs, we are guided by the vision to develop software that understands, treats, and ultimately prevents cardiovascular diseases. Our mission is to help people with heart diseases live longer and happier lives. We are building a Machine Learning based Health Analytics platform that combines connected medical devices, smart algorithms and a mobile application for patients. Such an application involves storing and serving data for multiple frontends, integrating with 3rd party systems, processing and analyzing health data and much more…
Tasks:
- You'll strengthen our backend: Storing, processing and reliably serving our customers' sensitive health data.
- You'll keep an eye on code quality and best practices: Making sure our code is well tested doesn't mean you'll be writing tests 24/7. More importantly you are pushing for a high quality codebase within the team, worthy of a medical product.
- You'll work autonomously and as part of a team: Agile, owning some things and sharing others.
Requirements:
- You have at least 2 years of backend developer experience.
- You have experience with FastAPI, SQLAlchemy, PostgreSQL, Pytest and Playwright.
- You can communicate a deep understanding of programming fundamentals: Why is one abstraction good and another bad?
- You know how to write solid, consistent, meaningful tests. Testing only what needs to be tested, at the right level of abstraction.
- You can give constructive code reviews, helping your teammates to write better code.
Benefits
💔 The chance to solve a problem that affects millions of people
🚀 A highly talented and ambitious team
☮️ A good environment practice your craftsmanship, we care about quality and DX
💸 Competitive compensation & an Urban Sports Club membership
🏡 A beautiful office in Berlin (Mitte) or Potsdam (Babelsberg)
🍺 Team drinks every Friday!
لینک اپلای
@PyBackendHub
Telegram
Python BackendHub
من چند وقت پیش یک آگهی ریموت تو شرکتی که تو برلین دارم توش کار میکنم گذاشتم.. چند نفر تماس گرفتن. وقتی صحبت از حقوق شد هیچ اطلاعی نداشتن که invoice چیه و چطوری میتونن قانونی کار کنند.
اگه میخواین ریموت کار کنید باید یک سری مراحلی رو طی کنید تا واجد شرایط…
اگه میخواین ریموت کار کنید باید یک سری مراحلی رو طی کنید تا واجد شرایط…
❤1
آشنایی با شبکه های اتوبوسی یا Bus Networks
احتمالا توپولوژی bus را شنیده و دیدهاید. این توپولوژی که دیگر مورد استفاده قرار نمیگیرد، از یک باس که معمولا یک کابل کواکسیال است و چندین node که توسط کانکتورهایی به اسم «کانکتورT» به این باس متصل میشوند، تشکیل میشود.
کابلهای کواکسیال(Coaxial) که به کابلهای rg-62 نیز معروف هستند، از یک مغزی و یک شیلد که با یک لایه عایق از هم جدا شدهاند تشکیل میشوند. کابل آنتن یک نمونهٔ رایج از این مدل است.
خصوصیت کلیدی این کابلها نویز کم بدلیل وجود شیلد، پهنای باند زیاد و فرکانس کاری بالای آنهاست که منجربه استفاده آنها به عنوان خطوط انتقال دیتا شده است. مثلا برای انتقال تصاویر دوربین های مداربسته به ریکوردر تصاویر معمولا از این مدل کابلها استفاده میشود (نویز بسیار کم در انتقال تصویر و پهنای باند زیاد برای انتقال آن در این مثال کاملا مشهود است)
بزرگترین اشکال توپولوژی اتوبوسی، این است که درصورت خراب شدن باس(مثلا خراب شدن کابل کواکسیال)، کل شبکه مختل میشود.
احتمالا توپولوژی bus را شنیده و دیدهاید. این توپولوژی که دیگر مورد استفاده قرار نمیگیرد، از یک باس که معمولا یک کابل کواکسیال است و چندین node که توسط کانکتورهایی به اسم «کانکتورT» به این باس متصل میشوند، تشکیل میشود.
کابلهای کواکسیال(Coaxial) که به کابلهای rg-62 نیز معروف هستند، از یک مغزی و یک شیلد که با یک لایه عایق از هم جدا شدهاند تشکیل میشوند. کابل آنتن یک نمونهٔ رایج از این مدل است.
خصوصیت کلیدی این کابلها نویز کم بدلیل وجود شیلد، پهنای باند زیاد و فرکانس کاری بالای آنهاست که منجربه استفاده آنها به عنوان خطوط انتقال دیتا شده است. مثلا برای انتقال تصاویر دوربین های مداربسته به ریکوردر تصاویر معمولا از این مدل کابلها استفاده میشود (نویز بسیار کم در انتقال تصویر و پهنای باند زیاد برای انتقال آن در این مثال کاملا مشهود است)
بزرگترین اشکال توپولوژی اتوبوسی، این است که درصورت خراب شدن باس(مثلا خراب شدن کابل کواکسیال)، کل شبکه مختل میشود.
Forwarded from iDeFense
Medium
Manual Indirect Syscalls and Obfuscation for Shellcode Execution
Manual Indirect Syscalls and Obfuscation for Shellcode Execution DISCLAIMER: Using these tools and methods against hosts that you do not have explicit permission to test is illegal. You are …
🔺bypass signature analysis from AV using obfuscation and NT API inspection from EDR using indirect syscalls with a shellcode loader PE
🛑 This Methods will get past some AV and EDR that only does on-disk inspection of the PE (signature based) and inspects the system call return address (not the full stack), respectively.
🔱 https://medium.com/@sam.rothlisberger/manual-indirect-syscalls-and-obfuscation-for-shellcode-execution-bb589148e56f
@iDeFense
🛑 This Methods will get past some AV and EDR that only does on-disk inspection of the PE (signature based) and inspects the system call return address (not the full stack), respectively.
🔱 https://medium.com/@sam.rothlisberger/manual-indirect-syscalls-and-obfuscation-for-shellcode-execution-bb589148e56f
@iDeFense