PyPI ගබඩාවේ ඇති Python පැකේජවලින් 46%ක අනාරක්ෂිත කේතයක් අඩංගු වේ

ටර්කු විශ්ව විද්‍යාලයේ (ෆින්ලන්තයේ) පර්යේෂකයන් කණ්ඩායමක් විසින් PyPI ගබඩාවේ ඇති පැකේජ විශ්ලේෂණයක ප්‍රතිඵල ප්‍රකාශයට පත් කර ඇත. පැකේජ 197 දහසක් විශ්ලේෂණය කිරීමේදී විභව ආරක්ෂක ගැටළු 749 දහසක් හඳුනාගෙන ඇත. පැකේජවලින් 46%කට අඩුම තරමින් එවැනි ගැටලුවක් තිබේ. වඩාත් පොදු ගැටළු අතර ව්යතිරේක හැසිරවීම සම්බන්ධ අඩුපාඩු සහ කේත ආදේශනයට ඉඩ සලසන විශේෂාංග භාවිතය වේ.

හඳුනාගත් ගැටළු 749 න් 442 (41%) සුළු ගැටළු ලෙසත්, 227 (30%) මධ්‍යස්ථ ගැටළු ලෙසත්, 80 (11%) භයානක ලෙසත් ලේබල් කර ඇත. සමහර පැකේජ සමූහයාගෙන් කැපී පෙනෙන අතර ගැටළු දහස් ගණනක් අඩංගු වේ: නිදසුනක් ලෙස, PyGGI පැකේජය ගැටළු 2589 ක් හඳුනාගෙන ඇත, ප්‍රධාන වශයෙන් "try-except-pass" ගොඩනැගීමේ භාවිතය හා සම්බන්ධ වන අතර appengine-sdk පැකේජය ගැටළු 2356 ක් සොයාගෙන ඇත. genie.libs.ops, pbcore සහ genie.libs.parser පැකේජවල ද ගැටලු විශාල සංඛ්‍යාවක් පවතී.

ඇතැම් ව්යුහයන් යෙදීමේ සන්දර්භය සැලකිල්ලට නොගන්නා ස්වයංක්රීය ස්ථිතික විශ්ලේෂණය මත පදනම්ව ප්රතිඵල ලබා ගත් බව සැලකිල්ලට ගත යුතුය. කේතය පරිලෝකනය කිරීම සඳහා භාවිතා කරන ලද bandit මෙවලම් කට්ටලයේ සංවර්ධකයා, සාවද්‍ය ධනාත්මක ප්‍රමාණය තරමක් ඉහළ බැවින්, එක් එක් නිකුතුවේ අතිරේක අතින් සමාලෝචනයකින් තොරව ස්කෑන් ප්‍රතිඵල සෘජුව දුර්වලතා ලෙස සැලකිය නොහැකි බව ප්‍රකාශ කළේය.

උදාහරණයක් ලෙස, විශ්ලේෂකය විශ්වාස කළ නොහැකි අහඹු සංඛ්‍යා උත්පාදක සහ MD5 වැනි හැෂිං ඇල්ගොරිතම භාවිතා කිරීම ආරක්ෂක ගැටළුවක් ලෙස සලකයි, කේතයේ එවැනි ඇල්ගොරිතම ආරක්ෂාවට බලපාන්නේ නැති අරමුණු සඳහා භාවිතා කළ හැකිය. විශ්ලේෂකය අච්චාරු, yaml.load, subprocess සහ eval වැනි අනාරක්ෂිත ක්‍රියාවන්හි බාහිර දත්ත සැකසීම ද සලකා බලයි, නමුත් මෙම භාවිතය අනිවාර්යයෙන්ම අවදානමක් ඇති නොවන අතර ඇත්ත වශයෙන්ම මෙම කාර්යයන් භාවිතා කිරීම ආරක්ෂක තර්ජනයකින් තොරව ක්‍රියාත්මක කළ හැකිය. .

අධ්යයනයේ භාවිතා කරන පරීක්ෂණ අතර:

  • විභව අනාරක්ෂිත කාර්යයන් භාවිතා කිරීම exec, mktemp, eval, mark_safe, ආදිය.
  • ගොනු සඳහා ප්රවේශ හිමිකම් අනාරක්ෂිතව සැකසීම.
  • සියලුම ජාල අතුරුමුහුණත් වලට ජාල සොකට් ඇමිණීම.
  • කේතයේ දැඩි ලෙස දක්වා ඇති මුරපද සහ යතුරු භාවිතය.
  • පූර්ව නිශ්චිත තාවකාලික නාමාවලියක් භාවිතා කිරීම.
  • Catch-all-style ව්‍යතිරේක හසුරුවන්නෙහි අවසර පත්‍රය භාවිතා කිරීම සහ දිගටම කරගෙන යාම;
  • දෝශ නිරාකරණ මාදිලිය සබල කර ඇති Flask වෙබ් රාමුව මත පදනම්ව වෙබ් යෙදුම් දියත් කිරීම.
  • අනාරක්ෂිත දත්ත ඉවත් කිරීමේ ක්‍රම භාවිතා කිරීම.
  • MD2, MD4, MD5 සහ SHA1 හැෂ් ශ්‍රිත භාවිතා කරයි.
  • අනාරක්ෂිත DES කේතාංක සහ සංකේතාංකන මාදිලි භාවිතය.
  • Python හි සමහර අනුවාද වල අනාරක්ෂිත HTTPSC සම්බන්ධක ක්‍රියාත්මක කිරීමක් භාවිතා කිරීම.
  • urlopen හි ගොනුව: // යෝජනා ක්‍රමය සඳහන් කිරීම.
  • ගුප්ත ලේඛන කාර්යයන් සිදු කිරීමේදී ව්‍යාජ සංඛ්‍යා උත්පාදක යන්ත්‍ර භාවිතා කිරීම.
  • Telnet ප්‍රොටෝකෝලය භාවිතා කිරීම.
  • අනාරක්ෂිත XML parsers භාවිතා කිරීම.

මීට අමතරව, PyPI බහලුම තුළ අනිෂ්ට පැකේජ 8 ක් අනාවරණය වී ඇති බව සටහන් කළ හැකිය. ඉවත් කිරීමට පෙර, ගැටළු සහගත පැකේජ 30 දහසකට වඩා බාගත කර ඇත. ද්වේෂසහගත ක්‍රියාකාරකම් සැඟවීමට සහ පැකේජවල ඇති සරල ස්ථිතික විශ්ලේෂකවලින් අනතුරු ඇඟවීම් මඟ හැරීමට, කේත කුට්ටි Base64 භාවිතයෙන් කේතනය කර eval ඇමතුමක් භාවිතයෙන් විකේතනයෙන් පසුව ක්‍රියාත්මක කරන ලදී.

noblesse, genesisbot, are, දුක්, noblesse2 සහ noblessev2 පැකේජ වල ක්‍රෙඩිට් කාඩ් අංක සහ ක්‍රෝම් සහ එජ් බ්‍රව්සර් වල ගබඩා කර ඇති මුරපද වලට බාධා කිරීමට මෙන්ම Discord යෙදුමෙන් ගිණුම් ටෝකන මාරු කිරීමට සහ තිර අන්තර්ගතයේ තිරපිටපත් ඇතුළු පද්ධති දත්ත යැවීමට කේතය අඩංගු වේ. pytagora සහ pytagora2 පැකේජවල තෙවන පාර්ශවීය ක්‍රියාත්මක කළ හැකි කේතය පැටවීමේ සහ ක්‍රියාත්මක කිරීමේ හැකියාව ඇතුළත් විය.

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

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