46% o nā pūʻolo Python i loko o ka waihona PyPI i loaʻa i nā code palekana

Ua hoʻopuka kekahi pūʻulu o nā mea noiʻi mai ke Kulanui o Turku (Finland) i nā hopena o ka nānā ʻana i nā pūʻolo i loko o ka waihona PyPI no ka hoʻohana ʻana i nā mea hana ʻino e hiki ai ke alakaʻi i nā nāwaliwali. I ka wā o ka nānā ʻana o 197 tausani pūʻulu, 749 tausani mau pilikia palekana i ʻike ʻia. 46% o nā pūʻolo i loaʻa i hoʻokahi pilikia. Ma waena o nā pilikia maʻamau he mau hemahema e pili ana i ka lawelawe ʻokoʻa a me ka hoʻohana ʻana i nā hiʻohiʻona e hiki ai ke hoʻololi i ke code.

ʻO ka 749 tausani pilikia i ʻike ʻia, 442 tausani (41%) i kapa ʻia he mea liʻiliʻi, 227 tausani (30%) i nā pilikia haʻahaʻa a me 80 tausani (11%) he pilikia. Kū kekahi mau pūʻolo i waho o ka lehulehu a loaʻa i nā kaukani pilikia: no ka laʻana, ua ʻike ʻia ka pōʻai PyGGI i nā pilikia 2589, pili nui i ka hoʻohana ʻana i ka hana "try-except-pass", a ua loaʻa i ka pōʻai appengine-sdk nā pilikia 2356. Aia kekahi helu nui o nā pilikia i loko o nā pūʻolo genie.libs.ops, pbcore a me genie.libs.parser.

Pono e hoʻomaopopo ʻia ua loaʻa nā hopena ma muli o ka loiloi static automated, ʻaʻole i noʻonoʻo i ka pōʻaiapili o ka noi ʻana o kekahi mau hale. ʻO ka mea nāna i hoʻomohala i ka bandit toolkit, i hoʻohana ʻia e nānā i ke code, ua hōʻike i ka manaʻo ma muli o ka helu kiʻekiʻe o nā hopena maikaʻi ʻole, ʻaʻole hiki ke noʻonoʻo pono ʻia nā hopena scan he mau nāwaliwali me ka ʻole o ka loiloi manual o kēlā me kēia pilikia.

No ka laʻana, ua noʻonoʻo ka mea loiloi i ka hoʻohana ʻana i nā mea hoʻoheheʻe helu helu ʻole a me nā hashing algorithms, e like me MD5, he pilikia palekana, ʻoiai ma ke code hiki ke hoʻohana ʻia kēlā mau algorithm no nā kumu ʻaʻole pili i ka palekana. Manaʻo ka mea anamanaʻo i ka hana ʻana o nā ʻikepili waho i nā hana palekana e like me pickle, yaml.load, subprocess a eval he pilikia, akā ʻaʻole pono kēia hoʻohana i kahi nāwaliwali a ʻoiaʻiʻo hiki ke hoʻokō ʻia ka hoʻohana ʻana i kēia mau hana me ka ʻole o ka hoʻoweliweli palekana. .

Ma waena o nā ho'āʻo i hoʻohana ʻia i ka haʻawina:

  • Ke hoʻohana nei i nā hana palekana exec, mktemp, eval, mark_safe, etc.
  • Ka hoʻonohonoho paʻa ʻole o nā kuleana komo no nā faila.
  • Hoʻopili i kahi kumu pūnaewele i nā mea pili pūnaewele āpau.
  • ʻO ka hoʻohana ʻana i nā huaʻōlelo a me nā kī i kuhikuhi ʻia i loko o ke code.
  • Ke hoʻohana nei i kahi papa kuhikuhi no ka manawa pōkole.
  • Ke hoʻohana nei i ka pass a hoʻomau i nā mea hoʻokaʻawale ʻokoʻa kaila hopu;
  • Ke hoʻolana nei i nā noi pūnaewele e pili ana i ka hoʻolālā pūnaewele Flask me ka hoʻohana ʻana i ke ʻano debugging.
  • Ke hoʻohana nei i nā ʻano deserialization ʻikepili palekana.
  • Hoʻohana i nā hana hash MD2, MD4, MD5 a me SHA1.
  • Ka hoʻohana ʻana i nā ciphers DES palekana a me nā ʻano hoʻopunipuni.
  • Ka hoʻohana ʻana i kahi hoʻokō HTTPSConnection insecure i kekahi mau mana o Python.
  • E wehewehe ana i ka faila: // scheme ma urlopen.
  • Ke hoʻohana nei i nā mea hana helu pseudorandom i ka wā e hana ana i nā hana cryptographic.
  • Ke hoʻohana nei i ka protocol Telnet.
  • Ke hoʻohana nei i nā parser XML palekana.

Eia hou, hiki ke hoʻomaopopo ʻia ua ʻike ʻia nā pōʻai ʻino 8 i ka papa kuhikuhi PyPI. Ma mua o ka wehe ʻana, ua hoʻoiho ʻia nā pōʻai pilikia ma mua o 30 tausani mau manawa. No ka hūnā ʻana i ka hana ʻino a me ka ʻalo ʻana i nā ʻōlelo aʻoaʻo mai nā mea loiloi static maʻalahi i nā pūʻolo, ua hoʻopaʻa ʻia nā poloka code me Base64 a hoʻokō ʻia ma hope o ka decoding me ka hoʻohana ʻana i kahi kelepona eval.

ʻO nā noblesse, genesisbot, e ʻeha, noblesse2 a me noblessev2 pūʻolo i loko o ke code e intercept ai i nā helu kāleka hōʻaiʻē a me nā ʻōlelo huna i mālama ʻia ma Chrome a me Edge browsers, a me ka hoʻoili ʻana i nā hōʻailona moʻokāki mai ka noi Discord a hoʻouna i ka ʻikepili ʻōnaehana, me nā kiʻi ʻoniʻoni o ka ʻike maka. ʻO nā pūʻolo pytagora a me pytagora2 ka hiki ke hoʻouka a hoʻokō i nā code executable ʻaoʻao ʻekolu.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka