آنالیز لاگ یا Log Analysis فرایندی است که از طریق بررسی و تفسیر لاگهایی که توسط شبکه، سیستمعاملها، برنامههای کاربردی، سرورها و اجزای سختافزار و نرمافزار به عملکرد و سلامت زیرساخت IT و Stackهای برنامه کاربردی قابلیت دید میدهد.Logها معمولاً حاوی دادههای Time-series هستند که یا از طریق Collectorهای Real-Time پخش (Stream) میشوند یا برای بررسی در آینده ذخیره میگردند. آنالیز لاگ یا Log Analysis بینشهایی را به عملکرد سیستم ارائه میدهد و میتواند مشکلات احتمالی مثل نقضهای امنیت یا خرابی سختافزار را نشان دهد.
مزایای آنالیز لاگ یا Log Analysis
- تطبیقپذیری: بسیاری از نهادهای دولتی یا قانونی خواستار این هستند که سازمانها تطبیقپذیری خود را با انواعی از قوانینی که روی تقریباً هر نهادی تأثیر میگذارند، نشان دهند. تجزیهوتحلیل فایل لاگ میتواند نشان دهد که HIPAA، PCI، GDPR یا مقررات دیگر توسط سازمان پاسخ داده میشوند.
- بهبودهای امنیتی: درحالیکه جرایم سایبری روزبهروز منظمتر میشوند، نیاز به اقدامات متقابل قدرتمندتر نیز افزایش پیدا میکند. آنالیز لاگ رخداد، ابزار قدرتمندی را برای انجام اقدامات پیشگیرانه ارائه کرده و همچنین امکان بررسیهای جرمشناسانه را پس از نقض امنیتی یا از دست رفتن داده فراهم میکند. آنالیز لاگ یا Log Analysis میتواند از دادههای مانیتورینگ شبکه استفاده کند تا تلاش برای دسترسی غیرمجاز را کشف کرده و از پیکربندی بهینهی عملیات امنیتی و فایروالها اطمینان حاصل کند.
- کارآمدی: یک چارچوب آنالیز Log به بهبود کارآمدی در سازمان کمک میکند. منابع IT در هر دپارتمان میتوانند یک مخزن لاگ واحد را بهصورت اشتراکی داشته باشند و تجزیهوتحلیل دادههای Log یک سازمان میتواند به شناسایی خطاها یا روندها در هر واحد کسبوکار و دپارتمان کمک کرده و امکان اصلاح سریع را ارائه دهد.
- دسترسپذیری بالا: اقدامات در زمان مناسب که برمبنای اطلاعات کشف شده توسط آنالیز لاگ یا Log Analysis رخ میدهند میتوانند از اینکه مشکلی موجب Downtime شود، پیشگیری کنند. این کار میتواند اطمینان حاصل کند که سازمانها به اهداف کسبوکار خود برسند و سازمان IT به تعهدات خود برای ارائهی خدمات با یک ضمانت Uptime بهخصوص کمک کند.
- پیشگیری از Overprovisioning و Underprovisioning: درحالیکه سازمانها باید برای پاسخ به بالاترین میزان تقاضاها برنامهریزی کنند، آنالیز Log میتواند در مورد اینکه آیا CPU، حافظه، دیسک و پهنای باند شبکه کافی برای پاسخ به تقاضاهای کنونی و روندهای پیشبینیشده وجود دارند یا خیر مفید باشد. Overprovisioning باعث اتلاف هزینه میشود و Underprovisioning میتواند منجر به قطعی شود، زیرا سازمانها بهسختی تلاش میکنند که برای پاسخ به تغییرات در تقاضا، منابع اضافهای را خریداری کنند یا از منابع Cloud استفاده کنند.
- کارآمدی فروش و بازاریابی: با ردیابی معیارهایی مثل حجم ترافیک و صفحاتی که مشتریان به آن رجوع میکنند، آنالیز لاگ میتواند به متخصصان فروش و بازاریابی برای درک اینکه چه برنامههایی کارآمد هستند و چه چیزی نیاز به تغییر دارد، کمک کند. الگوهای ترافیکی همچنین میتواند به تجهیز مجدد وبسایت یک سازمان کمک کند و کار کاربران را برای دستیابی به اطلاعاتی که بیشتر از همه مورد دسترسی قرار گرفتهاند، ساده نماید.
اهمیت آنالیز لاگ
ازآنجاییکه لاگها به عملکرد و سلامت برنامههای کاربردی قابلیت دید میدهند، آنالیز Log به تیمهای عملیات و توسعه امکان میدهد که هر مشکل عملکردی را که ممکن است در طول عملیات کسبوکار رخ دهد، درک و اصلاح کنند.
آنالیز لاگ عملکردهای مهم زیادی را اجرایی میکند که شامل موارد زیر هستند:
- تطبیقپذیری با الزامات دولتی و قانونی و همچنین پالیسیهای داخلی
- ردیابی نقضهای امنیتی و استخراج داده با هدف مشخص کردن افراد مسئول و اقدام به اصلاح نقضهای امنیتی
- کمک در تشخیص و عیبیابی کل Stack
- ردیابی ناهنجاریهای رفتار کاربر برای شناسایی سوءنیتها یا سیستمهای دچار نقض امنیتی
- کمک به بررسیهای جرمشناسانهی حملات بدافزار، استخراج یا سرقت کارمندان
برخی از نهادهای قانونی اصرار برانجام آنالیز لاگ در سازمانها دارند تا امکان تطبیقپذیری بالاتری با آییننامههای آنان فراهم شود. هر سازمانی که بخواهد وضعیت امنیت سایبری خود را بهبود بخشد به تخصص در تجزیهوتحلیل Log نیاز خواهد داشت تا انواع تهدیدات سایبری را شناسایی و اصلاح کند.
نحوهی انجام آنالیز لاگ یا Log Analysis
لاگها اسناد Time-Series از اقدامات و فعالیتهایی هستند که توسط برنامههای کاربردی، شبکهها، دستگاهها (شامل دستگاههای قابلبرنامهریزی و IoT) و سیستمعاملها ایجاد میشوند. آنها معمولاً برای آنالیز لاگ بهصورت Real-Time، در یک فایل یا دیتابیس یا در یک برنامه کاربردی اختصاصی ذخیره میشوند که Log Collector نام دارد.
کار تحلیلگر لاگ این است که به تفسیر گسترهی کامل دادهها و پیامهای لاگ در ساختار کمک کند، که نیازمند عادیسازی یا Normalization دادههای لاگ است تا اطمینان حاصل شود که از مجموعه مشترکی از واژگان استفاده میشود. این امر از سردرگمی جلوگیری میکند، زیرا ممکن است یک عملکرد سیگنال «normal» و عملکرد دیگر سیگنال «green» داشته باشد، درحالیکه هر دو به این معنا هستند که نیاز به هیچ اقدامی نیست.
عموماً دادههای لاگ برای برنامهی آنالیز لاگ جمعآوری میشود، پاکسازی میگردد، ساختار پیدا میکند یا عادیسازی میشود و سپس برای تجزیهوتحلیل به متخصصان ارائه میشود تا الگوهایی در آن شناسایی شده یا ناهنجاریهایی مثل حملهی سایبری یا استخراج داده کشف گردد. در انجام تجزیهوتحلیل فایل Log معمولاً مراحل زیر طی میشود:
- جمعآوری داده: دادهها از کاوشگران سختافزاری و نرمافزاری جمعآوری شده و به یک دیتابیس مرکزی منتقل میشوند.
- ایندکسکردن داده: دادهها از تمام منابع جمع و ایندکس میشوند تا جستجو تسریع شود و توانایی متخصصان IT برای کشف سریع مشکلات یا الگوها بهبود یابد.
- تجزیهوتحلیل: ابزار تجزیهوتحلیل Log شامل عادیسازی، تشخیص الگو، همبستگی و تگ شدن را میتوان یا بهصورت خودکار با استفاده از ابزار یادگیری ماشین یا بهصورت دستی در زمان نیاز انجام داد.
- مانیتورینگ: یک پلتفرم آنالیز لاگ مستقل و Real-Time میتواند در زمان شناسایی ناهنجاریها، هشدارهایی را ایجاد کند. این نوع از آنالیز لاگ خودکارسازیشده زیربنای اکثر مانیتورینگهای مداوم IT Stack کامل است.
- گزارشها: هم گزارشهای قدیمی و هم داشبوردها بخشی از پلتفرم تجزیهوتحلیل Log هستند و نماهای لحظهای یا تاریخی از معیارهای سنجش را برای عملیات، توسعه و سهامداران مدیریت فراهم مینمایند.
بهترین راهکارهای آنالیز لاگ
در ادامه برخی از اجزای یک سیستم تجزیهوتحلیل لاگ کارآمد معرفی میگردند:
عادیسازی: تبدیل کردن دادههای عناصر لاگ مختلف به یک فرمت ثابت میتواند کمک کند اطمینان حاصل کنیم که مقایسههای درستی اتفاق بیفتند و دادهها فارغ از منبع لاگ بهصورت مرکزی ذخیره و ایندکس شوند.
تشخیص الگو: ابزار یادگیری ماشین یا ML مدرن را میتوان اعمال کرد تا الگوهایی در دادههای لاگ کشف شوند که میتوانند به ناهنجاریها اشاره داشته باشند، مثلاً با مقایسهی پیامهای مخفی در یک فهرست خارجی برای مشخص کردن اینکه آیا تهدیدی در الگو وجود دارد یا خیر. این امر میتواند به ما کمک کند که مدخلهای لاگ عادی را فیلتر کنیم تا تجزیه و تحلیل بتواند روی مواردی تمرکز کند که نشانگر نوعی ناهنجاری هستند.
Tagging و دستهبندی: Tagging با کلمات کلیدی و دستهبندی با توجه به نوع، امکان اعمال فیلترها را ایجاد میکند که میتواند کشف دادههای مفید را تسریع کند. برای مثال وقتی ویروسی که به سرورهای ویندوز حمله میکند، ردیابی شود تمام موجودیتهای دسته «LINUX» را میتوان کنار گذاشت.
همبستگی: تحلیلگران میتوانند لاگها را از منابع مختلف با هم ترکیب کنند تا یک رخداد که با دادههای یک لاگ واحد قابلمشاهده نیست، رمزگشایی شود. این امر میتواند بهطور خاص در طول حملهی سایبری و بعد از آنها مفید باشند، جایی که همبستگی بین لاگها از دستگاههای شبکه، سرورها، فایروالها و سیستمهای Storage میتواند دادههای مرتبط با حمله را نشان دهد و الگوهایی را که از یک لاگ واحد مشخص نیستند مشخص کند.
هوش مصنوعی: هوش مصنوعی و ابزار یادگیری ماشین (AI/ML) که در سیستمهای آنالیز لاگ مدرن پیادهسازی شوند میتوانند بهطور خودکار آن مدخلهای Logی که به کشف ناهنجاریها یا نقضهای امنیتی کمک نمیکنند را شناسایی و حذف نمایند. این عملکرد که گاهی اوقات تحت عنوان «جهل مصنوعی» از آن نام برده میشود به آنالیز لاگ این امکان را میدهد که هشدارهایی را در مورد رخدادهای روتین برنامهریزیشده ارسال کند که در زمانی که لازم بود اتفاق نیفتادهاند.
دارای ساختار: برای اینکه بیشتر ارزش ایجاد شود، تمام دادههای لاگ باید در یک مخزن مرکزی باشند و طوری ساختار پیدا کنند که هم برای انسان و هم ماشین قابلدرک باشد. به لطف ابزار آنالیز لاگ پیشرفته میتوان مقدار زیادی از کارها را بهصورت خودکار پیش برد. بنابراین سازمانها باید Full-Stack Logging را در کل اجزای سیستم انجام دهند تا کاملترین نما از فعالیتها و ناهنجاریها به دست بیاید.