Log4Shell، د انټرنیټ زیان منونکي، پدې وروستیو کې په میلیونونو ماشینونه اغیزمن کړي. Log4j، د سافټویر یو ناڅرګند مګر نږدې هر اړخیزه ټوټه، د دې لامل کیږي.
Log4j د کمپیوټر په مختلفو سیسټمونو کې د پردې تر شا د ټولو کړنو د ننوتلو لپاره کارول کیږي.
دا د خلاصې سرچینې لاګنګ کتابتون پراساس دی چې د سوداګرۍ او حتی دولتي سازمانونو لخوا په ډیری غوښتنلیکونو کې کارول کیږي.
یو له ترټولو خراب سایبر امنیت سوري په توګه چې کله هم کشف شوی، دا مهمه ده چې ستاسو سیسټمونه له دې زیانمنونکي څخه خوندي کړئ. خو څنګه؟
راځئ چې د Log4j زیان منونکي په تفصیل سره وپلټو او د دې لپاره ټول ممکنه حل حلونه.
Log4j څه شی دی؟
Log4j یو دی د پرانستې-سرچینې د ننوتلو چوکاټ چې د سافټویر پراختیا کونکو ته وړتیا ورکوي چې د دوی غوښتنلیکونو کې مختلف معلومات ثبت کړي. دا د Apache Logging Services پروژې یوه برخه ده، چې د دې لخوا پرمخ وړل کیږي د اکاپي سافټویر بنسټ.
په سلګونو ویب پاڼې او ایپس Log4j کاروي ترڅو مهم عملیات ترسره کړي لکه د ډیبګ کولو او نورو کارونې لپاره د معلوماتو لاګ کول.
کله چې تاسو په ضعیف آنلاین لینک باندې کلیک وکړئ یا کلیک وکړئ او د 404 خطا خبرتیا ترلاسه کړئ، دا په کار کې د Log4j مکرر مثال دی. هغه ویب سرور چې د ویب لینک ډومین چلوي چې تاسو یې د لاسرسي هڅه کړې تاسو ته خبر ورکوي چې داسې هیڅ ویب پاڼه شتون نلري. دا د سرور سیسټم مدیرانو لپاره په Log4j کې پیښه هم ثبتوي.
د سافټویر پروګرامونو په اوږدو کې، ورته تشخیصي سیګنالونه کارول کیږي. د آنلاین لوبې Minecraft کې، د بیلګې په توګه، سرور د Log4j کاروي د فعالیت ثبتولو لپاره لکه ټول کارول شوي RAM او د کارونکي لارښوونې کنسول ته لیږل شوي.
زیانمنتیا څنګه رامنځته کیږي؟
لوکس یو نوی خصوصیت دی چې په Log4j 2.0 کې معرفي شوی، کوم چې د لاګ ننوتلو کې اضافي معلومات شاملولو کې مرسته کوي. یو له دې لیدونو څخه د JNDI (جاوا نومونې او لارښود انٹرفیس) لټون دی ، کوم چې د لارښود خدمت سره د خبرو اترو لپاره جاوا API دی.
د دې طریقې په کارولو سره، داخلي کارن IDs د اصلي کارن نومونو سره نقشه کیدی شي. دا پوښتنه د RCE نوي کشف شوي زیان منونکي افشا کوي، ځکه چې د LDAP سرور لخوا چمتو شوي ډیټا ډولونو څخه یو یو URI دی چې د جاوا ټولګي ته اشاره کوي، چې بیا په حافظه کې بار کیږي او د Log4j مثال لخوا پرمخ وړل کیږي.
د Log4j کتابتون د ان پټ تایید کې د ضعف له امله، دا ممکنه ده چې د غیر باوري سرچینې څخه د خپل سري LDAP سرور داخل کړئ. ځکه چې پراختیا کونکي ګومان کوي چې لاګونو ته لیږل شوي ډاټا به د ساده متن په توګه اداره شي، د اضافي ان پټ تایید نه ترسره کیږي، او خطرناک کاروونکي ان پټ لاګ ته ننوځي.
د لاګ بیان ممکن داسې ښکاري:
یو ناوړه کارونکي به اوس د JNDI لټون داخل کړي چې د یو آر ایل پیرامیټر کې د غلط LDAP سرور ته اشاره کوي. د JNDI لټون به په لاندې ډول وي:
د Log4j کتابتون بیا د دې LDAP سرور سره په attacker.com کې خبرې کوي ترڅو ډایرکټر معلومات ترلاسه کړي ، پشمول د جاوا فابریکې او جاوا کوډبیس ارزښتونه.
پدې دوه ارزښتونو کې د برید کونکي جاوا ټولګي شامل دي ، کوم چې بیا په حافظه کې بار کیږي او د Log4j مثال لخوا اجرا کیږي ، د کوډ اجرا کول بشپړوي.
څوک په خطر کې دي؟
د Log4j زیانمنتیا خورا پراخه ده، د سوداګرۍ غوښتنلیکونه، سرایت شوي وسایل، او د دوی فرعي سیسټمونه اغیزه کوي. اغیزمن شوي ایپسونه شامل دي Cisco Webex، Minecraft، او FileZilla FTP.
په هرصورت، دا په هیڅ ډول یو بشپړ لیست نه دی. دا نیمګړتیا حتی د Ingenuity Mars 2020 هیلي کاپټر ماموریت اغیزه کوي، کوم چې د پیښې ثبتولو لپاره Apache Log4j کاروي.
امنیتي ټولني د یو د زیان منونکو سیسټمونو لیست. دا مهمه ده چې یادونه وکړو چې دا لیستونه په دوامداره توګه تازه کیږي، نو که چیرې یو ځانګړی پروګرام یا سیسټم مشخص نه وي، نو فکر مه کوئ چې دا اغیزه نلري.
د دې زیان مننې څرګندونه خورا احتمال لري، او حتی که یو مشخص وي ټیک سټیک جاوا نه پلي کیږي، امنیتي اجرایوي باید د جدي عرضه کونکو سیسټمونو، SaaS عرضه کوونکي، د کلاوډ کوربه توب چمتو کونکي، او د ویب سرور چمتو کونکو څخه تمه وکړي چې دا وکړي.
څنګه د Log4j زیانمنتیا چیک کړئ؟
لومړی ګام دا دی چې دا معلومه کړي چې ایا برید دمخه شوی دی. تاسو کولی شئ دا د RCE پایلوډ ټوټې لپاره د سیسټم لاګونو چیک کولو سره ترسره کړئ.
که چیرې د "jndi"، "ldap"، یا "$::" په څیر د اصطلاحاتو لټون کوم لاګ ترلاسه کړي، امنیتي څیړونکي باید نور پلټنه وکړي ترڅو وګوري چې ایا دا یو مشروع برید یا یوازې د ګوتو نښه وه.
په ځنګل کې ډیری بریدونه کشف شوي چې هیڅ زیان رسونکي تادیات یې ندي وړاندې کړي. په هرصورت، دوی د امنیتي متخصصینو لخوا ترسره شوي ترڅو معلومه کړي چې څومره ایپس د دې برید لپاره زیانمن شوي.
بل ګام د ټولو پروژو پیژندلو لپاره د Log4j کتابتون کارول دي. که د 2.0-beta9 او 2.14.1 ترمنځ نسخې وکارول شي، پروژه حساس کیدی شي.
د دې په ټاکلو کې ستونزې ته په پام سره چې دا زیان شتون لري، دا غوره کیدی شي چې پروژه حساسه وي او د کتابتون تازه کول د کوډ اجرا کولو خطر لرې کولو لپاره غوره عمل دی.
پروژه زیانمنه نه ده که کارول شوې نسخه له 2.0-beta 9 څخه کمه وي، که څه هم د Log4j کتابتون باید لاهم لوړ شي ځکه چې د 1.x رینج کې نسخې زاړه دي او نور تازه معلومات نه ترلاسه کوي.
که کومه حساسه پروژه کشف شوې وي، سپارښتنه کیږي چې دا وڅیړل شي چې وګورئ چې د Log4j په کارولو سره کوم معلومات ثبت شوي معلومات لري چې کاروونکي یې بدلولی شي. URLs، د غوښتنې پیرامیټونه، سرلیکونه، او کوکیز د دې ډاټا بیلګې دي. که له دې څخه یو یې لاسلیک شي، پروژه په خطر کې ده.
دا پوهه کولی شي تاسو سره د سیسټم لاګونو ته د لاسرسي په برخه کې مرسته وکړي او دا معلومه کړي چې ایا ستاسو ویب غوښتنلیک دمخه برید شوی.
دلته وړیا آنلاین وسیلې شتون لري چې کولی شي معلومه کړي چې ایا ویب غوښتنلیک زیان منونکی دی. یو له دغو پروګرامونو څخه دی Log4Shell ښکار. دا خلاص سرچینه ده او شتون لري GitHub.
که چیرې په آنلاین غوښتنلیک کې د کوډ زیان منونکې ساحه وموندل شي، د افشا شوي وسیلې لخوا چمتو شوي تادیه د ویب غوښتنلیک ته د انجیکشن لپاره کارول کیدی شي. د ازموینې وسیله به ستاسو د ویب غوښتنلیک او د دوی LDAP سرور تر مینځ رامینځته شوي اړیکې ښکاره کړي که چیرې زیان منونکي ګټه پورته شوې وي.
د Log4j زیانمننې حل کولو لپاره حلونه
لومړی ګام د Log4j تازه کول دي، کوم چې تاسو کولی شئ د عادي کڅوړې مدیرانو په کارولو سره یا په مستقیم ډول له دې څخه ډاونلوډ کړئ مخ.
دا هم ممکنه ده چې د چاپیریال متغیر FORMAT MSG NO LOOKUPS په ریښتیني ترتیب کولو سره د زیان مننې استخراج کم کړئ. په هرصورت، دا ضد اقدامات یوازې د Log4j نسخو لپاره پلي کیږي چې له 2.10 څخه لوی یا مساوي دي.
راځئ چې اوس بدیل انتخابونو ته پام وکړو.
1. د Log4j نسخه 2.17.0 لپاره د حل لارې
دا په کلکه سپارښتنه کیږي چې د Log4j نسخه 2.15.0 د Log4Shell په وړاندې د ساتنې لپاره وکاروئ، په هرصورت، که دا ممکنه نه وي، نورې حلونه شتون لري.
د Log2.7.0j 4 او وروسته نسخې: د کارونکي لخوا چمتو شوي ډیټا لپاره د سلنه m nolookups ترکیب په کارولو سره د ننوتلو پیښو فارمیټ بدلولو سره د هر برید پروړاندې محافظت ممکن دی. دا تازه کول د Log4j تشکیلاتو فایل ترمیم ته اړتیا لري ترڅو د برنامه نوې نسخه رامینځته کړي. د پایلې په توګه، د دې نوې نسخې له مینځه وړلو دمخه، تخنیکي او فعاله تایید پړاوونه باید تکرار شي.
Log4j نسخه 2.10.0 او وروسته: دا هم امکان لري چې د log4j2.formatMsgNoLookups ترتیب کولو پیرامیټر ریښتیني تنظیم کولو سره د هر برید پروړاندې ساتنه وکړئ ، د مثال په توګه ، کله چې د -Dlog4j2 اختیار سره جاوا مجازی ماشین پیل کړئ. formatMsgNoLookups = ریښتیا، بله لاره د کلاسپاټ دلیل څخه د JndiLookup ټولګي لرې کول دي، کوم چې د اصلي برید ویکتور لرې کوي (څیړونکي د بل برید ویکتور احتمال نه ردوي).
د ایمیزون ویب خدمتونه یو هاټ پیچ چمتو کوي چې "باید ستاسو په خپل خطر کې وکارول شي." نور "تخنیکونه"، لکه Logout4Shell، چې "د ځان په وړاندې دا زیانمنونکي کاروي" خپاره شوي. د امنیت کارپوه د دې اقدام قانونيیت تر پوښتنې لاندې راولي، کوم چې "د دې د حل کولو لپاره د ماشین هیک کول" شامل دي.
2. ستونزه په Log4j v2.17.0 کې حل شوې ده.
د 2.10 څخه لویو نسخو لپاره: Log4j2.formatMsgNoLookups باید ریښتیا وي.
د 2.0 څخه تر 2.10.0 نسخو لپاره: د Log4j څخه د LDAP ټولګي لرې کولو لپاره لاندې کمانډ چل کړئ.
Log4j2.formatMsgNoLookups باید د سیسټم په ترتیباتو کې ریښتیا وي.
په JVM کې کمول
د JVM پیرامیټونو سره کمول نور اختیار نلري. د کمولو نورې لارې بریالۍ ته دوام ورکوي. که امکان ولري Log4j نسخه 2.17.0 ته لوړ کړئ. د Log4j v1 لپاره د مهاجرت لارښود شتون لري.
که تازه کول ممکن نه وي، ډاډ ترلاسه کړئ چې د مراجعینو اړخ او د سرور اړخ برخې -Dlog4j2.formatMsgNoLookups = د ریښتینې سیسټم ملکیت سیټ لري.
مهرباني وکړئ په یاد ولرئ چې Log4j v1 د خپل ژوند پای ته رسیدلی (EOL) او نور به د بګ فکسونه ترلاسه نکړي. د RCE نور ویکتورونه هم د Log4j v1 لپاره حساس دي. له همدې امله، موږ غوښتنه کوو چې تاسو ژر تر ژره Log4j 2.17.0 ته لوړ کړئ.
3. د کمولو تدابیر
اوسني کارونې نشي کولی حتی کار وکړي که څه هم Log4j په ځینو مواردو کې حساس وي، لکه که کوربه ماشین د 6u212، 7u202، 8u192، یا 11.0.2 څخه لوړ د جاوا نسخه پرمخ وړي.
دا په اوسني نسخو کې د جاوا نومونې او لارښود انٹرفیس (JNDI) د ریموټ کلاس بار کولو محافظت له امله دی ، کوم چې د برید لپاره اړین دی.
سربیره پردې، د Log4j نسخو سره چې د 2.10 څخه لوی وي، مسله د فارمټMsgNoLookups سیسټم ارزښت ریښتیني ته په ترتیب کولو سره مخنیوی کیدی شي، د JVM دلیل -Dlog4j2.formatMsgNoLookups = ریښتیا چمتو کول، یا د کلاسپاټ څخه د JndiLookup ټولګي حذف کول.
په ورته وخت کې، تر هغه چې زیانمنونکي موارد ثابت شوي نه وي، زیانمنتیا د لاندې تخنیکونو په کارولو سره حل کیدی شي:
- د سیسټم ملکیت log4j2.formatMsgNoLookups د >=2.10 لپاره ریښتیا ته تنظیم کړئ.
- د چاپیریال اختیار د LOG4J فارمیټ MSG NO LOOKUPS د >=2.10 لپاره ریښتیا ته تنظیم کړئ.
- JndiLookup.class له کلاسپاټ څخه د 2.0-beta9 څخه تر 2.10.0 پورې لرې کړئ: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
یو وړاندیز شوی غوره عمل دا دی چې انټرنیټ ته د وتلو ترافیک یوازې مناسب بندرونو ته محدود کړي.
که څه هم په ساحه کې ډیری بریدونه د HTTP له لارې لیږدول کیږي، زیانمنتیا ممکن د هر پروتوکول له لارې وکارول شي چې د Log4j په کارولو سره د کاروونکي ان پټ ډاټا ثبتوي.
په هرصورت، log4j 2.17.0 ته تازه کول غوره درملنه ده ځکه چې څوک کولی شي مسلې ته اضافي طریقه ومومي. سربیره پردې ، ډیری خپرونکو او تولید کونکو د دوی خدماتو یا ایپسونو کې پرمختګونه اعلان کړي.
4. Log4Shell د زیان مننې پیچ
Log4j هر اړخیز دی، په ځانګړې توګه اوس چې زیانمنونکي ګټه اخیستل کیږي. د لنډیز کولو لپاره، ټول هغه څه چې تاسو یې کولو ته اړتیا لرئ د Log4j لخوا معاینه شوي لاګونو کې لاندې حروف شامل کړئ.
او دا به د جاوا فایل ډاونلوډ او اجرا کړي چې د URL په پای کې موقعیت لري. دا دومره مستقیم دی لکه څنګه چې ډراماتیک دی.
لکه څنګه چې تاسو خبر یاست، دا مهمه ده چې د log4j نسخه>= 2.17.0 ته لوړ کړئ ترڅو د دې Log4Shell زیانمننې (CVE-2021-44228).
که دا ممکنه نه وي:
د هغو غوښتنلیکونو لپاره چې د Log4j کتابتون نسخه 2.10.0 او وروسته کاروي، دا هم ممکنه ده چې د ترتیب کولو پیرامیټر log4j2.formatMsgNoLookups په ترتیب سره د هر برید په وړاندې خوندي کړئ، د بیلګې په توګه، د جاوا مجازی ماشین د -Dlog4j2.formatMsgNoLookups = ریښتیا سره پیل کول. اختیار
بله لاره د کلاسپاټ دلیل څخه د JndiLookup ټولګي حذف کول دي، کوم چې به د لومړني برید ویکتور لرې کړي (څیړونکي د بل برید ویکتور شتون نه ردوي).
یادښت
هغه سازمانونه چې په حساس سیسټمونو کې د سمون کولو لپاره زړه نازړه یا نه غواړي (یا څوک چې غواړي اضافي محافظتونه نصب کړي) باید په دې اړه فکر وکړي:
- ډاډ ترلاسه کړئ چې ټول ترافیک د iSensor/ له لارې لیږدول کیږيwaff/IPS. دا کولی شي برید سیسټم ته د لاسرسي څخه وساتي.
- د ټرافیک مقدار محدودول چې حساس سیسټم ته رسیدلی شي که چیرې سیسټم انټرنیټ سره وصل کیدو ته اړتیا نلري، یوازې اړین او باوري IPS او رینجونو ته لاسرسی محدود کړئ.
- د کوربه مجاز بهر تګ راتګ کمول. ځکه چې دا برید د روګ سرور سره وصل کولو سره کار کوي ، نو ټول غیر معمولي IP پتې او بندرونه باید په فایر وال کې بند شي.
- که خدمت نور اړتیا نلري، دا باید غیر فعال شي تر هغه چې یو فکس چمتو نشي.
پایله
د Log4j نیمګړتیاو زموږ ټولنه حیرانه کړه او موږ ټولو ته یې یادونه وکړه چې موږ د خلاصې سرچینې سافټویر باندې څومره تکیه کوو.
Log4j ځانګړی دی. دا نه یو عملیاتي سیسټم دی، نه دا یو براوزر دی، او نه دا یو سافټویر دی. بلکه، دا هغه څه دي چې پروګرام کونکي د کتابتون، کڅوړې، یا د کوډ ماډل په توګه اشاره کوي. دا یوازې یو هدف ترسره کوي، هغه دا چې په سرور کې څه پیښیږي ریکارډ ساتل.
هغه خلک چې کوډ لیکي غوره کوي په هغه څه تمرکز وکړي چې د دوی سافټویر ځانګړی کوي. دوی د څرخ له نوي کولو سره علاقه نلري. د پایلې په توګه، دوی د موجوده کوډ کتابتونونو په پراخه کچه تکیه کوي، لکه Log4j.
د Log4j ماډل د اپاچي څخه اخیستل شوی، د ویب سرور ترټولو پراخه کارول شوي سافټویر. له همدې امله دا په ملیونونو سرورونو کې کشف کیدی شي. له همدې امله امنیتي ګواښونه زیاتیږي.
زه امید لرم چې پورته حلونه تاسو سره ستاسو د وسایلو خوندي ساتلو کې مرسته کوي.
د تخنیکي نړۍ څخه د نورو ګټورو معلوماتو لپاره HashDork سره پاتې شئ.
یو ځواب ورکړئ ووځي