Grails වෙබ් රාමුවේ සහ TZInfo Ruby මොඩියුලයේ ඇති දුර්වලතා

JVM සඳහා ජාවා, Groovy සහ වෙනත් භාෂා වල MVC සුසමාදර්ශයට අනුකූලව වෙබ් යෙදුම් සංවර්ධනය කිරීම සඳහා නිර්මාණය කර ඇති Grails වෙබ් රාමුව තුළ, වෙබ් අඩවිය පවතින පරිසරය තුළ ඔබේ කේතය දුරස්ථව ක්‍රියාත්මක කිරීමට ඔබට ඉඩ සලසන අවදානමක් හඳුනාගෙන ඇත. යෙදුම ක්රියාත්මක වේ. ප්‍රහාරකයාට ClassLoader වෙත ප්‍රවේශය ලබා දෙන විෙශේෂෙයන් සකස් කරන ලද ඉල්ලීමක් යැවීමෙන් අවදානම සූරාකෑමට ලක්වේ. වස්තු සෑදීමේදී සහ bindData භාවිතයෙන් අතින් බන්ධනය කිරීමේදී භාවිතා වන දත්ත-බන්ධන තර්කනයේ දෝෂයක් නිසා ගැටළුව ඇතිවේ. 3.3.15, 4.1.1, 5.1.9, සහ 5.2.1 නිකුතු වල ගැටළුව විසඳා ඇත.

මීට අමතරව, අපට Ruby මොඩියුලයේ tzinfo හි අවදානමක් සටහන් කළ හැකිය, එය ප්‍රහාරයට ලක් වූ යෙදුමේ ප්‍රවේශ අයිතිවාසිකම්වලට ඉඩ දෙන තාක් දුරට ඕනෑම ගොනුවක අන්තර්ගතය බාගත කිරීමට ඔබට ඉඩ සලසයි. TZInfo::Timezone.get ක්‍රමයේ නිශ්චිතව දක්වා ඇති කාල කලාපයේ නමෙහි විශේෂ අක්ෂර භාවිතය සඳහා නිසි පරීක්ෂාවක් නොමැතිකම හේතුවෙන් අවදානමට ලක් වේ. TZInfo::Timezone.get වෙත වලංගු නොවන බාහිර දත්ත ලබා දෙන යෙදුම් වලට මෙම ගැටළුව බලපායි. උදාහරණයක් ලෙස, /tmp/payload ගොනුව කියවීමට, ඔබට "foo\n/../../../tmp/payload" වැනි අගයක් නියම කළ හැක.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න