مقاله خود آگاهی شناختی


در حال بارگذاری
23 اکتبر 2022
فایل ورد و پاورپوینت
2120
3 بازدید
۷۹,۷۰۰ تومان
خرید

توجه : به همراه فایل word این محصول فایل پاورپوینت (PowerPoint) و اسلاید های آن به صورت هدیه ارائه خواهد شد

  مقاله خود آگاهی شناختی دارای ۱۶ صفحه می باشد و دارای تنظیمات در microsoft word می باشد و آماده پرینت یا چاپ است

فایل ورد مقاله خود آگاهی شناختی  کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه  و مراکز دولتی می باشد.

توجه : در صورت  مشاهده  بهم ریختگی احتمالی در متون زیر ،دلیل ان کپی کردن این مطالب از داخل فایل ورد می باشد و در فایل اصلی مقاله خود آگاهی شناختی،به هیچ وجه بهم ریختگی وجود ندارد


بخشی از متن مقاله خود آگاهی شناختی :

خود آگاهی شناختی

سید احسان لواسانی

۱- مقدمه
در این مقاله تلاش ما بر این است تا مفهوم تمایز «خود» از دیگری (ارائه شده در مقالات Forrest و Hoffmeyr) را در راستای مدل محاسباتی آگاهی شناختی (ارائه شده در مقالات Slomon) بسط دهیم.
تحقق این بسط و گسترش، دارای ملزوماتی است که سعی شده است در این مقاله بدان‌ها بپردازیم:
۱- تحلیل مفهوم آگاهی و شرایط تحقق آن.
۲- بررسی روش‌های تحقیق در مورد آگاهی

 

تحلیل مفهوم آگاهی و شرایط تحقق آن: تحلیل مفهوم آگاهی و شرایط تحقق آگاهی از آن رو لازم است که مساله‌ی آگاهی دقیقا به خاطر پیچیدگی و ناشناخته بودن «مفهوم آگاهی» و «شرایط تحقق آگاهی» چنین دور از دسترس مانده است. متدلوژی ما از آگاهی بدین صورت است که ابتدا باید مرادمان را از این مفهوم روشن گردانیم و سپس شرایطی را بررسی نماییم که تحت آن شرایط آگاهی تحقق می‌یابد. اما آگاهی یک مفهوم نظری است و لذا معنای آن را نظریه‌ها و مدل‌های در مورد آن تعیین می‌کنند. لذا برای تحلیل مفهوم آگاهی ناچاریم تا:

اولا انواع دسته‌بندی‌های انجام شده در مورد مفهوم آگاهی را بررسی نماییم.
ثانیا خواص و مستلزمات اصلی آن را مورد بررسی قرار دهیم.
ثالثا فضای طراحی مدل‌های مختلف از آگاهی‌ را بررسی و طبقه‌بندی نماییم.
رابعا مدل‌هایی را در ذیل هر دسته مطرح سازیم.
تا نظریه‌های مختلف در مورد شراییط تحقق آگاهی و پیش‌فرض‌ها و تعریف هر کدام از این مدل‌ها از آگاهی وضوح بیشتری یابد.

روش‌‌های تحقیق در مورد آگاهی: آن چه تحقیق در مورد آگاهی را پیچیده‌تر می‌سازد این است که هر تعریف و هر نظریه در مورد آگاهی، روش خاص خود را برای تحقیق در مورد آگاهی می‌طلبد. از میان روش‌های گوناگونی که برای تحقیق در مورد آگاهی گسترش یافته‌اند، ما دو روش را برگزیده‌ایم: اول روش بیولوژیکی و دوم روش محاسباتی. روش بیولوژیکی را از آن رو انتخاب نمودیم که در مورد یک نمونه‌ی محقق از آگاهی و در سطح کافی از جزئیات (یا به تعبیر آشناتر، در سطح پیاده‌سازی آگاهی در یک بستر ارگانیک) به تحقیق می‌پردازد. گزارشی از فعالیت‌های انجام شده و درجریان این روش در ضمیمه‌ی ب آمده است. روش محاسباتی نیز به نحوه و شیوه‌ی مدل کردن، طراحی و تحقق دادن به آگاه

 

ی در یک بستر محاسباتی و با استفاده از امکانات و شیوه‌های محاسباتی آن می‌پردازد. بررسی این روش درواقع هدف اصلی این مقاله است تا سرآخر بتوانیم از نتیجه‌ی این بررسی، مفهوم خود را بر طبق مدلی از آگاهی گسترش دهیم.

۲-‌ بسط مدل آگاهی برای تشخیص خود از دیگری
در این کاربست تلاش ما بر این است که مجموعه‌ای از رفتارها و نشانه‌های محاسباتی را در بستر مدل محاسباتی آگاهی، به یک مفهوم سطح بالا پیوند دهیم: خود بودن و نه دیگری بودن. با استفاده از این ارتباط تلاش می‌نماییم تا برنامه‌های مورد تهاجم قرارگرفته را تشخیص دهیم و لذا در سطح میزبان، به یک سیستم امنیتی کامپیوتری دست یابیم.
هر مفهوم سطح بالای به کار رفته در مدل‌های محاسباتیِ آگاهی، پیوسته با صفت و ارزشی همراه است و در کاربست نیز: فراخوان‌های سیستم‌عامل با خود امن یا خودِ خود یا Well-Self

 

۲-۱-‌ تشخیص تهاجم در میزبان
برای تشخیص پویای تهاجم در میزبان، به مکانیزمی برای تشخیص رفتارهای ناهنجار از رفتارهای هنجار نیاز است. پس دنبال خصوصیتی با صفات ذیل هستیم که هویت یک برنامه را بازنماید:
۱- مختصر
۲- کلی

۳- حساس نسبت به رفتارهای ناهنجار
اکثر سیستم‌های تشخیص تهاجم بر اساس رفتار کاربران عمل می‌کنند ولی ما در سطح فرایند‌های سیستم و بر رفتار برنامه نظارت خواهیم کرد.

ایمنی‌شناسان بدن مساله‌ی سیستم‌های ایمنی را به صورت تشخیص خود از غیرخود تعریف کرده‌اند. به کاربردن این تعریف از امنیت در سیستم‌های کامپیوتری، تصویر غنی‌تری از هویت و ایمنی به دست خواهد داد.
اجزای این متامدیر:

۱- تعریف استواری از خود هر برنامه
۲- تشخیص فعالیت‌های مضر برای هر برنامه یادگیری بر اساس اجراهای پیشین
ایده‌ی اصلی این است که پایگاه‌داده‌ی رفتار بهنجار هر برنامه‌ را بر اساس اجراهای پیشین آن ایجاد نماییم. این پایگاه داده (حافظه بلند مدت آن). هرگاه توانستیم این پایگاه‌داده را بسازیم، می‌توانیم از آن برای نظارت بر رفتارهای بعدی آن فرایند استفاده نماییم.

این تعریف از ”خود” یا رفتار بهنجار، بسیاری از جنبه‌های رفتار یک فرایند را نادیده می‌گیرد. اما فلسفه‌ی ما این است که ببینیم با یک فرض ساده تا کجا می‌توانیم پیش رویم.

۲-۲-‌ کارهای مشابه
دو روش کلان در تشخیص تجاوز وجود دارد: الف) تشخیص تجاوز‌های از پیش‌معلوم: در این روش با استفاده از الگوهای شناخته شده‌ی تجاوز، خرابکاری‌ها کشف می‌گردند. ب) تشخیص تجاوزهای از پیش‌نامعلوم: ماهیت تجاوز بر ما نامعلوم است ولی می‌دانیم تجاوز باعث تغییر در رفتار بهنجار سیستم می‌شود. در این پروژه ما بر اساس نوع پیش‌ رفته‌ایم، یعنی تشخیص تهاجم به صورت پویا.
در پروژه‌هایی که از نوع دوم بوده‌اند، چارچوبی برای رفتار بهنجار یک ”کاربر” تعریف می‌کرده‌اند. فرض نیز بر این است که اگر رفتار کاربری خارج از آن چارچوب بود، تجاوزی رخ داده است. این چارچوب‌ها یا از طریق آماری، یا به کمک الگوهای استنتاجی و یا شبکه‌های عصبی ایجاد می‌شده‌اند. اما لازمه‌ی این رویکرد، نظارت بر فعالیت‌های هر کاربر بوده است. این رویکرد در تطبیق خود با تغییر رفتار کاربران و تغییر خود کاربران، بسیار کند است.

اما یک روش جایگزین این بوده است که به جای توجه به رفتار کاربر، بر روی رفتار فرایند‌هایی متمرکز شویم که اجازه‌ی اجرای ف.س. دارند. در این روش خود کد برنامه مورد مطالعه قرار می‌گرفت (ف.س.های آن و مقدار هرکدام) تا الگوی رفتاری آن به صورت صوری و به زبان خاصی مشخص گردد. این روش که توسط Forrest و Hoffmeyr طراحی شده است، با الگو گرفتن از سیستم ایمنی بدن مدل شده است. جزئیات این مدل در پیوست آمده است و در آن جا تشریح شده است که چگونه این

مدل با گرایش به توزیع زیرسیستم‌های امنیتی در یک شبکه، خود را به ایجاد ایمنی در سیستم‌های کامپیوتری نزدیک کرده است. در این روش لایه‌ای به نام متامدیریت وجود ندارد که رفتار برنامه را بررسی نماید و آن را بر اساس معیار یا ارزشی به نام امنیت بسنجد، بلکه با به کارگیری «انتخاب منفی» و تربیت تشخیص‌دهنده‌ها، این کار را به صورت توزیع‌شده انجام می‌دهد.

روش ما نیز شبیه به این روش جایگزین است. ما نیز با پروسه‌های مجاز به اجرای ف.س.های سروکار داریم؛ ولی ما از روش بسیار ساده‌تری برای ”ارائه”‌ی رفتارهای بهنجار استفاده کرده‌ایم. ما برای استخراج رفتار بهنجار هر فرایند و ایجاد یک هویت و ”خود” برای آن، به عوض بررسی خود کد، نمونه‌های اجرا شده‌ای از آن را مطالعه می‌کنیم. همچنین رویکرد ما، چنانکه در مقدمه آمده است، در جهت بسط نظارت بر رفتار یک برنامه و تعریف «خود» آن برنامه در جهت یک مدل‌ محاسباتی آگاهی بر اساس مقالات Slomon است. در واقع این پروژه، همان لایه‌ی متامدیریت برای یک برنامه است که رفتار آن را (این رفتار به صورت ف.س.‌ها به لایه‌ی متامدیریت ارائه می‌شود) بر اساس ملاک «خودِ برنامه بودن» ارزیابی می‌کند.

نتایج کارهای Forrest و Hoffmeyr نشان می‌دهد که به کار بستن یک روش توزیع‌شده در ایمنی‌سازی سیستم‌های امنیتی، در ایجاد یک سیستم امن با خصوصیات لازم آن (استواری، لایه لایه بودن خاکریزها، انعطاف‌پذیری، پویایی و غیره) بسیار موثر خواهد بود.

 

۲-۳-‌ متامدیریت امنیت
تشبیه متامدیریت امنیت مانند مدیر ضرابخانه است که بعد از رفت آمد هر کارمند به خزانه، بدان‌جا سر می‌زند تا مطمئن شود همه‌ی شمش‌ها سرجای‌شان هستند.

متامدیریت و برنامه، جمعا سیستم مورد نظر ما را تشکیل می‌دهند: متامدیریت با استفاده از اطلاعات دریافتی از محیط (سیستم‌عامل)، احساس خود را از برنامه شکل می‌دهد (پایگاه‌داده‌ای از رشته‌های ف.س مجاز. خود برنامه به عنوان لایه‌ی عکس‌العملی و قصدی (یا برنامه‌ای که صرفا یک لایه دارد). سیستم‌عامل نیز محیط این سیستم است.

۲-۴-‌ در جستجوی تعریف خود
برای تعریف خود توجه ما به فراخوان‌های سیستم‌عامل (ف.س) در برنامه‌های با اجازه‌های ممتاز است، دلیل این امر نیز عبارتست از:
۱- خرابکاری‌های سیستمی، با اجرای برنامه‌هایی رخ می‌دهند که تقاضاهای مکرر و نامعمول ف.س می‌کنند.
۲- برنامه‌های root از فرایندهای کاربران خطرناک‌تراند چون به قسمت‌های بیشتری از کامپیوتر دسترسی دارند.
۳- این گونه برنامه‌ها محدوده‌ی رفتارشان تنگ‌تر است و در طول زمان نیز پایدارتر.
در هر برنامه‌ای مجموعه‌ی ترتیب‌های ممکنِ اجرای ف.س.های آن به صورت ضمنی مشخص شده است. براساس ترتیب‌های ممکن اجرای کد آن،‌ترتیب ف.س.های آن به دست می‌آیند. در هر اجرای بهنجار یکی از این اعضای این مجموعه تولید می‌شود. لذا اگر ما بتوانیم درخت اجرایی برنامه را تماما پیمایش نماییم می‌توانیم از این درخت برای تعریف خود استفاده نماییم. این درخت در واقع مجموعه‌ی سری‌های کوتاهی از این ف.س.ها است که از سازگاری بالایی برخوردارند. ما رفتار بهنجار یا ”خود” (هویت ) یک برنامه را به صورت سری کوتاهی از ف.س.هایی تعریف می‌کنیم که در حین اجرای آن بوجود آمده‌اند.

۲-۵-‌ ‌ اسلوب رفتاری و اندازه‌ی پایگاه‌داده
اما مفید بودن این تعریف بسته به پاسخ این سوال‌ها دارد:

اندازه‌ی پایگاه‌داده‌ی رفتارهای بهنجار چقدر است؟ چند درصد سری‌هایِ ممکنِ ف.س.ها را به عنوان بهنجار شناخته‌ایم؟ آیا این تعریف برنامه‌های متفاوت را از هم متمایز می‌کند؟ آیا این تعریف، رفتارهای نابهنجار را تشخیص می‌دهد؟
آزمایش‌های ما نشان داده‌اند که جواب این سوال‌ها رضایت‌بخش است.
اما اندازه‌ی پایگاه‌داده مهم است چون:

۱- اگر کوچک باشد به تعریف جامع و مانعی از هویت یک فرایند‌ دست یافته‌ایم و می‌توانیم از آن به صورت بلادرنگ استفاده نماییم.

۲- اندازه‌ی آن مقدار گونه‌گونی رفتار بهنجار یک فرایند را نشان می‌دهد. یعنی اگر گونه‌گونی آن بسیار باشد، پس تشخیص رفتار نابهنجار مشکل می‌شود. یعنی اگر پایگاه‌داده حجم زیادی از ترکیب‌های ممکن ف.س.ها را بپوشاند، عملا گویی هر رفتاری بهنجار است.

با داشتن پایگاه‌داده‌ای از هویت‌های شناخته شده‌ی مهاجمان، متامدیر امنیت می‌تواند هر از چند گاهی تشخیص‌های خود را بسنجد تا اسلوب رفتاری خود را انتخاب نماید: پارامترهای تطابق تقریبی، طول پایگاه‌داده و طول رشته‌های ف.س.
اگر تشخیص‌های او عموما درست بودند، وارد اسلوب رفتاری خوش‌بینانه می‌شود و طول رشته‌ها و حجم پایگاه داده را کاهش می‌دهد. اما اگر false negativeهای زیادی بوجود آمدند، وارد اسلوب رفتاری محتاطانه می‌شود و حجم بیشتری از رفتار برنامه را بررسی می‌کند.

 

۲-۶-‌ پیاده‌سازی
الگوریتم پیشنهادی دارای دو مرحله است:
۱- رفتارهای بهنجار برنامه را مطالعه می‌کنیم و از روی آن پایگاه‌داده‌ی الگوهای بهنجار آن را می‌سازیم.
برای ساختن پایگاه‌داده،‌ پنجره‌ای به طول k (K متغیری است که طول پنجره را نشان می‌دهد) را بر روی سری‌های کوتاهی از ف.س‌ها می‌لغزانیم. با این کار، تمام ترتیب‌های مجاز ف.س‌ها را استخراج خواهیم نمود و خواهیم دانست که هر ف.س‌ می‌تواند بعد از کدام ف.س‌ دیگر بیاید و در کدام موقعیت. باید توجه داشت که ما به پارامترهای ف.س. توجهی نداریم.
حال رفتارهای بعدی آن را با استفاده از این پایگاه‌داده بررسی می‌کنیم تا ببینیم آیا آن رفتار بهنجار هست یا خیر. اگر بهنجار نبود، آن را به پایگاه‌داده اضافه می‌نماییم.
۲- در قدم بعدی سری‌های جدید را به کمک همین مکانیزم با پایگاه‌داده می‌سنجیم: خیلی ساده؛ آیا جزو الگوهای مجاز هست یا خیر. هر عدم هم‌خوانی را ثبت می‌کنیم.
تعداد ناهم‌خوانی‌های الگوی ترتیب ف.س‌ها با الگوهایِ مجاز ثبت شد ه، تنها ملاک تمایز ”خود” از ”دیگری” است.
اما برای ساختن خود پایگاه‌داده باید چند تصمیم اتخاذ گردد:
۱- آیا باید یک مجموعه‌ی مصنوعی از ورودی‌ها تولید کنیم تا تمام رفتارهای بهنجار تولید گردد؟ یا که ورودی‌هایی از کاربران واقعی؟ تصمیم ما: اولی. ولی احتمالا ترکیبی از هر دو مفیدتر خواهد بود.
۲- رفتارهای جدید را چگونه با پایگاه‌داده بسنجیم؟ ‌جواب: به سادگی تعداد عدم تطابق‌ها را بشماریم و انتظار داریم که این عدد صفر باشد (یا لااقل از حدی کمتر باشد).
شیوه‌ی تطبیع رشته‌ها: برای تطبیق رشته‌ها ما از روش تطبیق تقریبی استفاده نموده‌ایم. به این ترتیب که هر ف.س. هر یک از رشته‌های به دست آمده از log file برنامه، با ف.س. متناظر آن (از نظر موقعیت در رشته) مقایسه می‌شود. اگر تعداد عدم تطابق‌ها از حدی بیشتر بود، عدم تطبیق اعلام می‌شود. اگر تعداد این عدم تطبیق‌ها از حد دیگری تجاوز نمود، اعلام تهاجم می‌شود. برای مثال فرض کنید که رشته‌ی ذیل در دوره‌ی آموزش برنامه، زیر رشته‌ای از log file برنامه است.
open read mmap mmap open close …

با لغزاندن پنجره‌ای به طول ۳، رشته‌های ف.س. ذیل به دست می‌آیند:
open read mmap
read mmap mmap

mmap mmap open
mmap open close
چنین تعاقب‌هایی نشان می‌دهند که بعد از ف.س. open و در موقعیت اول بعد از آن ف.س. read و close مجاز هستند و در موقعیت دوم بعد از آن نیز mmap. حال اگر در دوره‌ی کاری آن، چنین رشته‌ای را دریافت کند:
open close read mmap open mmap …

با لغزاندن پنجره‌ای به طول ۳، رشته‌های ف.س. ذیل به دست می‌آیند:
open close read
close read mmap
read mmap open
mmap open mmap

با تلاش برای تطبیق دادن رشته‌ی اول با پایگاه داده‌ی خود، اولین عدم تطابق با همان اولین رشته‌ی درون پایگاه داده به دست می‌آید چراکه نه close و نه readدر جای خود قرار ندارند و اگر آستانه‌ی عدم تطبیق در مقایسه‌ی دو رشته، دو باشد، عدم تطابق اعلام می‌شود. اگر شماره‌ی این عدم تطابق‌ها از آستانه‌ی دومی تجاوز کند (برای مثال ۲۰ شمارش) اعلام خطر خواهد شد.

۲-۷-‌ نتایج
آزمایش‌های ما عموما بر روی sendmail بوده است، به دو دلیل: اول آن‌که این فرایند به اندازه‌ی کافی پیچیده است و نیز رفتارهای آن گونه‌گونی لازم را دارا می‌باشند و ثانیا تهاجم‌های مستند شده ی بسیاری درمورد آن وجود دارد. نتایج به دست آمده از آزمایش‌های گوناگونی که با نرم‌افزار پیاده شده بر روی sendmail انجام شده است به شرح ذیل می‌باشند:
اول؛ تمایز یک برنامه از برنامه‌های دیگر:
برای آن‌که دریابیم رفتار sendmail در نسبت با برنامه‌های دیگر چه تغییراتی می‌کند، آن را نسبت به چند برنامه‌ی متداول دیگر آزمودیم. جدول شماره‌ی یک نتایج این مقایسه‌ها را نشان می‌دهد. همان طور که در این جدول دیده می‌شود ما بر اساس سه طول رشته آزمایش‌ها را انجام دادیم. همچنین این جدول نشان می‌دهد که به راحتی می‌توان sendmail را با استفاده از توالی‌های کوتاه ف.س.‌ها از دیگر برنامه‌ها تمایز داد.

جدول یک: تمایز sendmail از دیگر فرایندها

دوم؛ تشخیص تهاجم:
در این نوع آزمایش‌ها ما به دنبال تولید رفتارهایی مشابه با رفتار sendmail ولی همچنان متفاوت از آن بوده‌ایم و لذا دو تهاجمی را انتخاب نمودیم که در رخنه کردن موفق بوده‌اند:
Sunsendmailcp: این برنامه با استفاده از دستور مخصوصی sendmail را وادار می‌نماید تا فایلی را به یک نامه متصل گرداند. لذا اگر این اتفاق برای فایلی چون /.rhosts بیفتد، آن کاربر می‌تواند دسترسی root پیدا کند.
Syslog: این حمله با استفاده از رابط syslog موجب می‌شود که بافری در sendmail پر شود. این کار با فرستادن نوع خاصی نامه به sendmail صورت می‌گیرد که sendmail را مجبور می‌سازد تا یک پیغام خطای فوق‌العاده طولانی را ثبت کند. چنین کاری باعث خواهد شد که قسمتی از کد ماشین شخص حمله کننده، جایگزین کد sendmail گردد. این کد نیز باعث می‌گردد که یک پورت با دسترسی root در اختیار حمله‌کننده قرار گیرد تا هر هنگام که خواست از آن استفاده کند.

  راهنمای خرید:
  • در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با ما تماس بگیرید.