Forwarded from نوشتههای ترمینالی
https://sourcelevel.io/blog/what-is-a-linter-and-why-your-team-should-use-it
ابزار linter چیست و چرا باید سورس کد خودمان را به دست ابزاری غرغرو مثل linter بسپاریم و چرا باید به حرفش گوش کنیم؟
ابزار linter چیست و چرا باید سورس کد خودمان را به دست ابزاری غرغرو مثل linter بسپاریم و چرا باید به حرفش گوش کنیم؟
SourceLevel
What is a linter and why your team should use it? – SourceLevel
Linter is a tool that analyzes source code. Linters can look for security issues, typos, code smells and suggest changes to comply with a style guides.
Forwarded from OnHex
🔴 ویدیوهای کنفرانس HexaCon 2023 که 13 و 14 اکتبر در پاریس برگزار شده بود، از طریق یوتیوب قابل دسترس هستش.
تمرکز اصلی این کنفرانس روی امنیت تهاجمی یا Offensive Security هستش و امسال 15 ارائه داشت.
➡️ @onhex_ir
➡️ onhexgroup.ir
تمرکز اصلی این کنفرانس روی امنیت تهاجمی یا Offensive Security هستش و امسال 15 ارائه داشت.
➡️ @onhex_ir
➡️ onhexgroup.ir
یه کانال یوتیوب عالی برای برنامه نویسی سی و اسمبلی و کلا کارای low level:
https://www.youtube.com/@LowLevelLearning
https://www.youtube.com/@LowLevelLearning
📌 اطلاعیه استفاده از دوره های آموزشی:
به اطلاع اعضای محترم می رساند، سایت 365datascience.com به مدت 14 روز، دسترسی به تمامی دوره های آموزشی خودش را به صورت 100% رایگان آغاز کرده است که با ساخت یک اکانت ساده و ثبت نام به تمامی محتوا دسترسی خواهید داشت.
فیلم های آن مربوط به حوزه علوم دیتا و در 5 گروه زیر است:
Course Library
1 Data Science Fundamentals
2 Programming for Data Science
3 Machine and Deep Learning
4 Advanced Specialization
5 Business Specialization
فرصت مناسبی برای علاقه مندان به این حوزه می باشد.
به اطلاع اعضای محترم می رساند، سایت 365datascience.com به مدت 14 روز، دسترسی به تمامی دوره های آموزشی خودش را به صورت 100% رایگان آغاز کرده است که با ساخت یک اکانت ساده و ثبت نام به تمامی محتوا دسترسی خواهید داشت.
فیلم های آن مربوط به حوزه علوم دیتا و در 5 گروه زیر است:
Course Library
1 Data Science Fundamentals
2 Programming for Data Science
3 Machine and Deep Learning
4 Advanced Specialization
5 Business Specialization
فرصت مناسبی برای علاقه مندان به این حوزه می باشد.
365 Data Science
Online AI and Data Courses for Career Growth. Learn AI and Data with Certification. – 365 Data Science
Change careers in 12 months with our online AI training. Get top AI and data science courses for self-prep. Start now.
Forwarded from Security Analysis (Adel)
This media is not supported in your browser
VIEW IN TELEGRAM
⭕️ افزونه ی مرورگر AI nuclei
قبلا سرویس Nuclei AI رو در کانال معرفی کرده بودیم.
حال، افزونه Nuclei AI میتواند با انتخاب کردن متن CVE های جدید در توییتر (یا صفحات وب دیگر) از سرویس Nuclei AI استفاده کند و تمپلیت nuclei مورد نظر را بسازد.
اپشن های این افزونه عبارتند از:
- تبدیل گزارش باگ بانتی HackerOne به تمپلیت Nuclei ( همچنین پشتیبانی برای پلتفرم های دیگر مانند BugCrowd / Intigriti / Synack نیز اضافه میشود )
- تبدیل اکسپلویت های ExploitDB به تمپلیت Nuclei
لینک افزونه:
🔗 https://github.com/projectdiscovery/nuclei-ai-extension
#nuclei #automation
@securation
قبلا سرویس Nuclei AI رو در کانال معرفی کرده بودیم.
حال، افزونه Nuclei AI میتواند با انتخاب کردن متن CVE های جدید در توییتر (یا صفحات وب دیگر) از سرویس Nuclei AI استفاده کند و تمپلیت nuclei مورد نظر را بسازد.
اپشن های این افزونه عبارتند از:
- تبدیل گزارش باگ بانتی HackerOne به تمپلیت Nuclei ( همچنین پشتیبانی برای پلتفرم های دیگر مانند BugCrowd / Intigriti / Synack نیز اضافه میشود )
- تبدیل اکسپلویت های ExploitDB به تمپلیت Nuclei
لینک افزونه:
🔗 https://github.com/projectdiscovery/nuclei-ai-extension
#nuclei #automation
@securation
گایز اگه کسی جای مطمئن سراغ داره که اکانت mondly بفروشه ممنون میشم بگه
@Therbhm
@Therbhm
آموزش کامل و عالی mmap در لینوکس:
https://www.youtube.com/watch?v=sFYFuBzu9Ow&t=1499s
https://www.youtube.com/watch?v=sFYFuBzu9Ow&t=1499s
YouTube
Why Linux Has This Syscall?!
Source Code: https://github.com/tsoding/mmap
Here is another lecture style video similar to the previous one. I'm not sure if these kinda videos are watchable, but they liberate me from the chore of video editing which I can't stand anymore, I really apologize…
Here is another lecture style video similar to the previous one. I'm not sure if these kinda videos are watchable, but they liberate me from the chore of video editing which I can't stand anymore, I really apologize…
❤1
آموزش کامل و عالی syscall:
https://www.youtube.com/watch?v=UW7a1n3VEFg&t=146s
https://www.youtube.com/watch?v=UW7a1n3VEFg&t=146s
YouTube
System calls at the assembly level
We're going to take a quick look at the system calls (in a Linux-centric way) and answer the following questions: what syscalls are, motivation behind syscalls, slow and fast syscall mechanisms. We'll be using assembly to see what's happening at the lowest…
❤1
Reverse Engineering and binary exploitation full course:
https://www.youtube.com/watch?v=iyAyN3GFM7A&list=PLhixgUqwRTjxglIswKp9mpkfPNfHkzyeN
#Reverse
https://www.youtube.com/watch?v=iyAyN3GFM7A&list=PLhixgUqwRTjxglIswKp9mpkfPNfHkzyeN
#Reverse
YouTube
LiveOverflow Channel Introduction and Backstory - bin 0x00
A little bit of background why I created this channel and what you can expect.
-=[ ❤️ Support ]=-
→ per Video: https://www.patreon.com/join/liveoverflow
→ per Month: https://www.youtube.com/channel/UClcE-kVhqyiHCcjYwcpfj9w/join
-=[ 🐕 Social ]=-
→ Twitter:…
-=[ ❤️ Support ]=-
→ per Video: https://www.patreon.com/join/liveoverflow
→ per Month: https://www.youtube.com/channel/UClcE-kVhqyiHCcjYwcpfj9w/join
-=[ 🐕 Social ]=-
→ Twitter:…
Forwarded from OS Internals (Abolfazl Kazemi)
اجرای تابع به کمک اندیس منفی در آرایههای زبان سی در لینوکس
بازهی معتبر اندیس آرایهها در اکثر زبانهای برنامهنویسی چک شده و با ارسال اندیس نامتعبر استثنایی تولید شده و از تغییر حافظه جلوگیری میشود. (مثلArrayIndexOutOfBoundException در جاوا یا IndexError در پایتون)
این موضوع در زبانهای C/Cpp صادق نبوده و دست برنامهنویس برای اینکه گلولهای در پای خودش شلیک کند بازبوده و برای آرایهها میتوان اندیسهای منفی یا مثبت بیشتر از مرز آرایه ارسال کرده و به بخشهای دیگر حافظه دسترسی پیدا کرد. (از این موضوع میتوان به کمک AddressSanitizer و با تحمل کمی افت Performance جلوگیری کرد)
اهمیت این موضوع این است که اگر آرایه بر روی Heap تعریف شده باشد امکان دستکاری Heap-Metadata (و یا دادهی مربوط به شی دیگر) وجود داشته و اگر آرایه بر روی Stack تعریف شده باشد به دلیل ذخیرهی ReturnAdress بر روی Stack امکان دستکاری آن و اجرای کد وجود دارد.
در این ویدئو که بخشی از یکی از کلاسهایم است این موارد توضیح داده شده و در یک مثال ساده PoCای از تغییر آدرس بازگشت تابع با ارسال اندیس منفی برای آرایه و اجرای تابعی دلخواه و سپس تاثیر فعال کردن AddressSanitizer نمایش داده میشود.
لینک ویدئو در یوتیوب:
https://youtu.be/4LBiyGrcO3E
لینک ویدئو در آپارات:
https://aparat.com/v/jR38x
#ShortLinuxInternals #linux #internals #gdb #x86 #exploitation #gcc #AddressSanitizer
بازهی معتبر اندیس آرایهها در اکثر زبانهای برنامهنویسی چک شده و با ارسال اندیس نامتعبر استثنایی تولید شده و از تغییر حافظه جلوگیری میشود. (مثلArrayIndexOutOfBoundException در جاوا یا IndexError در پایتون)
این موضوع در زبانهای C/Cpp صادق نبوده و دست برنامهنویس برای اینکه گلولهای در پای خودش شلیک کند بازبوده و برای آرایهها میتوان اندیسهای منفی یا مثبت بیشتر از مرز آرایه ارسال کرده و به بخشهای دیگر حافظه دسترسی پیدا کرد. (از این موضوع میتوان به کمک AddressSanitizer و با تحمل کمی افت Performance جلوگیری کرد)
اهمیت این موضوع این است که اگر آرایه بر روی Heap تعریف شده باشد امکان دستکاری Heap-Metadata (و یا دادهی مربوط به شی دیگر) وجود داشته و اگر آرایه بر روی Stack تعریف شده باشد به دلیل ذخیرهی ReturnAdress بر روی Stack امکان دستکاری آن و اجرای کد وجود دارد.
در این ویدئو که بخشی از یکی از کلاسهایم است این موارد توضیح داده شده و در یک مثال ساده PoCای از تغییر آدرس بازگشت تابع با ارسال اندیس منفی برای آرایه و اجرای تابعی دلخواه و سپس تاثیر فعال کردن AddressSanitizer نمایش داده میشود.
لینک ویدئو در یوتیوب:
https://youtu.be/4LBiyGrcO3E
لینک ویدئو در آپارات:
https://aparat.com/v/jR38x
#ShortLinuxInternals #linux #internals #gdb #x86 #exploitation #gcc #AddressSanitizer
YouTube
Exploiting Array-Out-of-Bounds Accesses on Linux [PER]
بازهی معتبر اندیس آرایهها در اکثر زبانهای برنامهنویسی چک شده و با ارسال اندیس نامتعبر استثنایی تولید شده و از تغییر حافظه جلوگیری میشود. (مثلArrayIndexOutOfBoundException در جاوا یا IndexError در پایتون)
این موضوع در زبانهای C/Cpp صادق نبوده و…
این موضوع در زبانهای C/Cpp صادق نبوده و…
OS Internals
اجرای تابع به کمک اندیس منفی در آرایههای زبان سی در لینوکس بازهی معتبر اندیس آرایهها در اکثر زبانهای برنامهنویسی چک شده و با ارسال اندیس نامتعبر استثنایی تولید شده و از تغییر حافظه جلوگیری میشود. (مثلArrayIndexOutOfBoundException در جاوا یا IndexError…
ایشون توی کانال آپارات و احتمالا یوتیوبشون یه دورهٔ کامل ویندوز اینترنالز هم دارن که فارسی هست و برای ویندوز هفته
Stuff for Geeks
خروجی عکس بالا:
درمورد این سوال باید بگم که قضیه ازین قراره که با باز کردن و بستن آکولاد، درسته که یه scope جدید برای تعریف متغیر درست میشه ولی کامپایلرا(حداقل gcc) این متغیر رو آزاد نمیکنن و توی استک باقی میمونه
اینجا هم ما با یدونه اضافه کردن به آدرس متغیر a (چون خود a اینته طبق pointer's arithmetic یدونه یعنی چهار بایت) به آدرس متغیر t میرسیم که یعنی بهش دسترسی میگیریم
پس باز و بسته کردن آکولاد توی توابع از نظر مموری هیچ بهینگی ای ایجاد نمیکنه
اینجا هم ما با یدونه اضافه کردن به آدرس متغیر a (چون خود a اینته طبق pointer's arithmetic یدونه یعنی چهار بایت) به آدرس متغیر t میرسیم که یعنی بهش دسترسی میگیریم
پس باز و بسته کردن آکولاد توی توابع از نظر مموری هیچ بهینگی ای ایجاد نمیکنه
Forwarded from Woland's Linux Journal (Woland)
بشیسم چیست؟
در زمینه اسکریپتنویسی شل، عبارت "بشیسم" به ویژگیها، ساختارها یا نحوه نوشتاری اشاره دارد که به شل بش مرتبط است، اما جزء استاندارد POSIX نیستند. در حالی که بش قابلیتها و ویژگیهای قدرتمندی برای اسکریپتنویسی فراهم میکند، استفاده از بشیسمها ممکن است قابلیت هماهنگی اسکریپتها را با شلهای دیگر با استاندارد POSIX محدود کند.
بیایید برخی از بشیسمهای متداول را همراه با نظیرهای سازگار با POSIX بررسی کنیم.
Arithmetic Expansion
در بش، توسعه حسابی با استفاده از ((expression))$ امکانپذیر است. به عنوان مثال:
بش از آرایههای نسبی پشتیبانی میکند که یک ویژگی در شل بش میباشد.
Process Substitution
بش از جایگزینی فرآیند با
عبارات داخل آکولات مانند
باش از
بش از
بش از
بش اجازه تنظیم ویژگیهای متغیر با استفاده از
👉 🔗 Bash Reference Manual
👉 🔗 POSIX Programmer's Manual
برای اطلاعات بیشتر
#لینوکس
#نکته
#بش
#آموزش
#bash
اگر این پست براتون مفید بود با به اشتراک گذاری اون به کانال کمک کنید.
در زمینه اسکریپتنویسی شل، عبارت "بشیسم" به ویژگیها، ساختارها یا نحوه نوشتاری اشاره دارد که به شل بش مرتبط است، اما جزء استاندارد POSIX نیستند. در حالی که بش قابلیتها و ویژگیهای قدرتمندی برای اسکریپتنویسی فراهم میکند، استفاده از بشیسمها ممکن است قابلیت هماهنگی اسکریپتها را با شلهای دیگر با استاندارد POSIX محدود کند.
بیایید برخی از بشیسمهای متداول را همراه با نظیرهای سازگار با POSIX بررسی کنیم.
Arithmetic Expansion
در بش، توسعه حسابی با استفاده از ((expression))$ امکانپذیر است. به عنوان مثال:
result=$((5 + 3))در شل بورن، از
expr یا ساختارهای دیگر استفاده کنید:result=$(expr 5 + 3)
Associative Arraysبش از آرایههای نسبی پشتیبانی میکند که یک ویژگی در شل بش میباشد.
declare -A fruit_colorدر اسکریپتهای POSIX و شل بورن، ممکن است نیاز به استفاده از آرایههای با شاخص یا ساختارهای دیگر برای دستیابی به عملکرد مشابه باشد
fruit_color["apple"]="red"
fruit_color["banana"]="yellow"
fruit_color["grape"]="purple"
echo "Color of apple: ${fruit_color["apple"]}"
echo "Color of banana: ${fruit_color["banana"]}"
echo "Color of grape: ${fruit_color["grape"]}"
Process Substitution
بش از جایگزینی فرآیند با
(...)> پشتیبانی میکند. به عنوان مثال:command <(echo "Hello")در شل بورن از فایلهای موقت یا
pipes به عنوان جایگزین استفاده کنیدecho "Hello" > temp_fileBrace Expansion
command < temp_file
عبارات داخل آکولات مانند
{1..5} یک ویژگی خاص بش است. در شل بورن از دستور seq استفاده کنید:seq 1 5String Comparison
باش از
== در [[ ... ]] برای مقایسه رشتهها استفاده میکند:if [[ $str1 == $str2 ]]; thenدر شل بورن از مساوی تک
(=) در [ ... ] استفاده کنید:if [ "$str1" = "$str2" ]; thenLogical AND in Conditions
بش از
[[ ... && ... ]] برای AND منطقی استفاده میکند:if [[ $a -eq 1 && $b -eq 2 ]]; thenدر شل بورن از
a- برای AND منطقی در [ ... ] استفاده کنید:if [ "$a" -eq 1 -a "$b" -eq 2 ]; thenArithmetic Conditions
بش از
(( ... )) برای شرایط حسابی استفاده میکند:if (( a == b )); thenدر شل بورن از
eq- برای مقایسه اعداد صحیح در [ ... ] استفاده کنید:if [ "$a" -eq "$b" ]; thenVariable Attributes:
بش اجازه تنظیم ویژگیهای متغیر با استفاده از
declare را دارد، مانند تعریف یک متغیر صحیح:declare -i integer_var=5در شل بورن از تعریف متغیر بدون استفاده از
declare برای ویژگیهای متغیر استفاده کنید:integer_var=5~~~~
👉 🔗 Bash Reference Manual
👉 🔗 POSIX Programmer's Manual
برای اطلاعات بیشتر
man bash و man sh را ببینید.#لینوکس
#نکته
#بش
#آموزش
#bash
اگر این پست براتون مفید بود با به اشتراک گذاری اون به کانال کمک کنید.
woland👍3👎1