გადაუდებელი პატჩი სამარცხვინო დაუცველობისთვის Java ბიბლიოთეკაში Log4j არ არის უგუნური. Apache Software Foundation ავრცელებს ახალ ვერსიას დაუცველობის ერთხელ და სამუდამოდ გამოსასწორებლად.
ჯავის უაღრესად პოპულარულ ბიბლიოთეკაში დაუცველობა არყევს გლობალურ IT ლანდშაფტს. დადგენილია, რომ ბიბლიოთეკა არსებობს უმეტეს კორპორატიულ გარემოში.
Log4j ძირითადად გამოიყენება ჭრისთვის. აპლიკაციებში მოვლენების რეგისტრაცია შესაძლებელია შენიშვნებით. იფიქრეთ შესვლის დეტალების ამობეჭდვაზე შესვლის მცდელობის შემდეგ. ან, Java-ში ვებ აპლიკაციის შემთხვევაში, ბრაუზერის სახელი, რომელსაც მომხმარებელი ცდილობს დაკავშირება.
ეს უკანასკნელი მაგალითები ხშირია. ორივე შემთხვევაში, გარე მომხმარებელი გავლენას ახდენს ჟურნალზე, რომელსაც Log4j გამოაქვს. შესაძლებელია ამ გავლენის ბოროტად გამოყენება. Log4j-ის ნებისმიერი ვერსიის ჟურნალებს 13 წლის 2013 სექტემბრიდან 5 წლის 2021 დეკემბრამდე შეუძლიათ Java-ს აპლიკაციებს დაავალონ, გაუშვან კოდი დისტანციური სერვერიდან ადგილობრივ მოწყობილობაზე.
2013 წლიდან Log4j ამუშავებს API-ს: JNDI, ანუ Java Naming და Directory Interface. JNDI-ის დამატება ჯავის აპლიკაციას საშუალებას აძლევს, გაუშვას კოდი დისტანციური სერვერიდან ლოკალურ მოწყობილობაზე. პროგრამისტები ავალებენ აპლიკაციაში დისტანციური სერვერის შესახებ დეტალების ერთი ხაზის დამატებით.
პრობლემა ის არის, რომ არა მხოლოდ პროგრამისტებს შეუძლიათ დაამატონ ეს წესი აპლიკაციებში. დავუშვათ, Log4j აღრიცხავს შესვლის მცდელობის მომხმარებლის სახელებს. როდესაც ვინმე შემოდის ზემოხსენებულ ხაზში მომხმარებლის სახელის ველში, Log4j აწარმოებს ხაზს და Java აპლიკაცია განმარტავს ბრძანებას კოდის მითითებულ სერვერზე გასაშვებად. იგივე ეხება შემთხვევებს, როდესაც Log4j აღრიცხავს HTTPS მოთხოვნას. თუ თქვენ შეცვლით ბრაუზერის სახელს ხაზად, Log4j აწარმოებს ხაზს და არაპირდაპირ ავალებს მას სასურველი კოდის გაშვებას.
გადაუდებელი პატჩი ასევე შეიძლება იყოს სახიფათო
9 დეკემბერს მოწყვლადობა ფართო მასშტაბით გამოიკვეთა. Apache Software Foundation-მა, Log4j-ის შემქმნელმა, გამოუშვა გადაუდებელი პაჩი (2.15) დაუცველობის გამოსასწორებლად. მას შემდეგ, პროგრამული უზრუნველყოფის გამყიდველებისთვის მთავარი პრიორიტეტი იყო 2.15 ვერსიის დამუშავება და ორგანიზაციებისთვის პაჩის მიწოდება.
თუმცა, უსაფრთხოების ორგანიზაცია LunaSec აცხადებს, რომ პატჩი არ არის მთლიანად წყალგაუმტარი. შესაძლებელია პარამეტრის დარეგულირება და შესული JNDI ბრძანებების შესრულება.
გთხოვთ გაითვალისწინოთ: შესაბამისი პარამეტრი ხელით უნდა დაარეგულიროთ, რათა 2.15-ის შეუცვლილი ვარიანტები მართლაც უსაფრთხო იყოს. მიუხედავად ამისა, Luna Sec რეკომენდაციას უწევს მომწოდებლებსა და ორგანიზაციებს განაახლონ Log4j 2.16. 2.16 გამოქვეყნდა Apache Software Foundation-ის მიერ LunaSec-ის საპასუხოდ. ახალი ვერსია მთლიანად ხსნის დაუცველ პარამეტრს, რაც შეუძლებელს ხდის ბოროტად გამოყენების პირობების შექმნას.