{"id":100875,"date":"2021-07-30T16:22:41","date_gmt":"2021-07-30T14:22:41","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod"},"modified":"2021-07-30T16:22:41","modified_gmt":"2021-07-30T14:22:41","slug":"46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/news\/46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod","title":{"rendered":"46% Python bal\u00ed\u010dkov v repozit\u00e1ri PyPI obsahuje potenci\u00e1lne nebezpe\u010dn\u00fd k\u00f3d","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Skupina v\u00fdskumn\u00edkov z Univerzity v Turku (F\u00ednsko) zverejnila v\u00fdsledky anal\u00fdzy bal\u00edkov v repozit\u00e1ri PyPI z h\u013eadiska pou\u017e\u00edvania potenci\u00e1lne nebezpe\u010dn\u00fdch kon\u0161trukci\u00ed, ktor\u00e9 m\u00f4\u017eu vies\u0165 k vzniku zranite\u013enost\u00ed. Po\u010das anal\u00fdzy 197 tis\u00edc bal\u00edkov bolo zisten\u00fdch 749 tis\u00edc potenci\u00e1lnych bezpe\u010dnostn\u00fdch probl\u00e9mov. V 46 % bal\u00edkov sa nach\u00e1dza aspo\u0148 jeden tak\u00fdto probl\u00e9m. Medzi naj\u010dastej\u0161ie sa vyskytuj\u00facimi probl\u00e9mami s\u00fa nedostatky s\u00favisiace s spracovan\u00edm v\u00fdnimiek a pou\u017e\u00edvan\u00edm funkcional\u00edt, ktor\u00e9 umo\u017e\u0148uj\u00fa zasahovanie k\u00f3du.    <\/p>\n<p>Z 749 tis\u00edc zisten\u00fdch probl\u00e9mov je 442 tis\u00edc (41 %) ozna\u010den\u00fdch ako nev\u00fdznamn\u00e9, 227 tis\u00edc (30 %) ako probl\u00e9my s miernym rizikom a 80 tis\u00edc (11 %) ako nebezpe\u010dn\u00e9. Niektor\u00e9 bal\u00edky sa vy\u010dle\u0148uj\u00fa zo zvy\u0161ku a obsahuj\u00fa tis\u00edce probl\u00e9mov: napr\u00edklad v bal\u00edku PyGGI bolo objaven\u00fdch 2589 probl\u00e9mov, preva\u017ene s\u00favisiacich s pou\u017eit\u00edm kon\u0161trukcie &#171;try-except-pass&#187;, v bal\u00edku appengine-sdk bolo n\u00e1jden\u00fdch 2356 probl\u00e9mov. V zna\u010dnom po\u010dte probl\u00e9mov sa tie\u017e nach\u00e1dzaj\u00fa v bal\u00edkoch genie.libs.ops, pbcore a genie.libs.parser.      <\/p>\n<p>Je potrebn\u00e9 poznamena\u0165, \u017ee v\u00fdsledky boli z\u00edskan\u00e9 na z\u00e1klade automatizovanej statickej anal\u00fdzy, ktor\u00e1 nezoh\u013ead\u0148uje kontext pou\u017eitia t\u00fdchto kon\u0161trukci\u00ed. V\u00fdvoj\u00e1r n\u00e1stroja bandit, ktor\u00fd bol pou\u017eit\u00fd na skenovanie k\u00f3du, vyjadril n\u00e1zor, \u017ee vzh\u013eadom na vysok\u00fd po\u010det falo\u0161n\u00fdch pozit\u00edvnych v\u00fdsledkov nemo\u017eno v\u00fdsledky kontroly pova\u017eova\u0165 za zranite\u013enosti bez dodato\u010dn\u00e9ho ru\u010dn\u00e9ho presk\u00famania ka\u017ed\u00e9ho probl\u00e9mu.      <\/p>\n<p>Napr\u00edklad analyz\u00e1tor pova\u017euje za bezpe\u010dnostn\u00fd probl\u00e9m pou\u017e\u00edvanie nespolehliv\u00fdch gener\u00e1torov n\u00e1hodn\u00fdch \u010d\u00edsel a hashovac\u00edch algoritmov, ako je MD5, pri\u010dom rovnak\u00e9 algoritmy m\u00f4\u017eu by\u0165 v k\u00f3de pou\u017eit\u00e9 na \u00fa\u010dely, ktor\u00e9 neovplyv\u0148uj\u00fa bezpe\u010dnos\u0165. Analyz\u00e1tor tie\u017e pova\u017euje za probl\u00e9m ak\u00fako\u013evek manipul\u00e1ciu s extern\u00fdmi d\u00e1tami v nezabezpe\u010den\u00fdch funkci\u00e1ch, ako s\u00fa pickle, yaml.load, subprocess a eval, no tak\u00e9to pou\u017eitie nemus\u00ed nevyhnutne s\u00favisie\u0165 s vznikom zranite\u013enosti a v skuto\u010dnosti m\u00f4\u017ee by\u0165 aplik\u00e1cia uveden\u00fdch funkci\u00ed realizovan\u00e1 bez bezpe\u010dnostn\u00e9ho rizika.       <\/p>\n<p>Medzi kontrolami pou\u017eit\u00fdmi v \u0161t\u00fadii:  <\/p>\n<ul>\n<li class=\"l\"> Pou\u017e\u00edvanie potenci\u00e1lne nebezpe\u010dn\u00fdch funkci\u00ed exec, mktemp, eval, mark_safe a podobne.\n<li class=\"l\"> Nezabezpe\u010den\u00e9 nastavenie pr\u00edstupov\u00fdch pr\u00e1v pre s\u00fabory.\n<li class=\"l\"> Pripojenie sie\u0165ov\u00e9ho soketu ku v\u0161etk\u00fdm sie\u0165ov\u00fdm rozhraniam.\n<li class=\"l\"> Pou\u017e\u00edvanie tvrdo zadan\u00fdch hesiel a k\u013e\u00fa\u010dov v k\u00f3de.\n<li class=\"l\"> Pou\u017e\u00edvanie preddefinovan\u00e9ho do\u010dasn\u00e9ho adres\u00e1ra.\n<li class=\"l\"> Pou\u017e\u00edvanie pass a continue v spracovate\u013eoch v\u00fdnimiek typu catch-all.\n<li class=\"l\">  Sp\u00fa\u0161\u0165anie webov\u00fdch aplik\u00e1ci\u00ed na b\u00e1ze webov\u00e9ho frameworku Flask s povolen\u00fdm re\u017eimom ladenia.\n<li class=\"l\"> Pou\u017e\u00edvanie nebezpe\u010dn\u00fdch met\u00f3d deserializ\u00e1cie \u00fadajov.\n<li class=\"l\"> Pou\u017e\u00edvanie hashovac\u00edch funkci\u00ed MD2, MD4, MD5 a SHA1.\n<li class=\"l\"> Pou\u017e\u00edvanie nebezpe\u010dn\u00fdch \u0161ifrovac\u00edch met\u00f3d DES a re\u017eimov \u0161ifrovania.\n<li class=\"l\"> Pou\u017e\u00edvanie nebezpe\u010dnej implement\u00e1cie HTTPSConnection v niektor\u00fdch verzi\u00e1ch Pythonu.\n<li class=\"l\"> Ur\u010denie sch\u00e9my file:\/\/ v urlopen.\n<li class=\"l\"> Pou\u017e\u00edvanie gener\u00e1torov pseudon\u00e1hodn\u00fdch \u010d\u00edsel pri vykon\u00e1van\u00ed kryptografick\u00fdch \u00faloh.\n<li class=\"l\"> Pou\u017e\u00edvanie protokolu Telnet.\n<li class=\"l\"> Pou\u017e\u00edvanie nebezpe\u010dn\u00fdch XML parserov.  <\/ul>\n<p>\u010eal\u0161ie mo\u017en\u00e9 pozn\u00e1mky, objavenie 8 \u0161kodliv\u00fdch bal\u00ed\u010dkov v adres\u00e1ri PyPI. Pred odstr\u00e1nen\u00edm stihli probl\u00e9my bal\u00edky stiahnu\u0165 viac ako 30-tis\u00edc kr\u00e1t. Na skrytie \u0161kodlivej aktivity a ob\u00eddenie varovan\u00ed jednoduch\u00fdch statick\u00fdch analyz\u00e1torov bolo v bal\u00ed\u010dkoch pou\u017eit\u00e9 k\u00f3dovanie blokov k\u00f3du pomocou Base64 a organiz\u00e1cia z vykonania po dek\u00f3dovan\u00ed cez volanie eval.    <\/p>\n<p>V bal\u00ed\u010dkoch noblesse, genesisbot, are, suffer, noblesse2 a noblessev2 bol odhalen\u00fd k\u00f3d na zachyt\u00e1vanie \u010d\u00edsel kreditn\u00fdch kariet a hesiel ulo\u017een\u00fdch v prehliada\u010doch Chrome a Edge, ako aj na prenos tokenov \u00fa\u010dtov z aplik\u00e1cie Discord a odosielanie \u00fadajov o syst\u00e9me, vr\u00e1tane sn\u00edmok obrazovky obsahu. V bal\u00ed\u010dkoch pytagora a pytagora2 bola pr\u00edtomn\u00e1 mo\u017enos\u0165 na\u010d\u00edtania a vykonania extern\u00e9ho spustite\u013en\u00e9ho k\u00f3du.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=55565\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0413\u0440\u0443\u043f\u043f\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438\u0437 \u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 \u0422\u0443\u0440\u043a\u0443 (\u0424\u0438\u043d\u043b\u044f\u043d\u0434\u0438\u044f) \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u0412 \u0445\u043e\u0434\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 197 \u0442\u044b\u0441\u044f\u0447 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043e 749 \u0442\u044b\u0441\u044f\u0447 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e. \u0412 46% \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043e\u0434\u043d\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432\u044b\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u0435\u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-100875","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0413\u0440\u0443\u043f\u043f\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438\u0437 \u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 \u0422\u0443\u0440\u043a\u0443 (\u0424\u0438\u043d\u043b\u044f\u043d\u0434\u0438\u044f) \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/news\/46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd4746% Python-\u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439 \u043a\u043e\u0434 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0413\u0440\u0443\u043f\u043f\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438\u0437 \u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 \u0422\u0443\u0440\u043a\u0443 (\u0424\u0438\u043d\u043b\u044f\u043d\u0434\u0438\u044f) \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/news\/46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-07-30T14:22:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-07-30T14:22:41+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd4746% Python bal\u00ed\u010dkov v repozit\u00e1ri PyPI obsahuje potenci\u00e1lne nebezpe\u010dn\u00fd k\u00f3d | ProHoster","description":"Skupina v\u00fdskumn\u00edkov z Univerzity Turku (F\u00ednsko) zverejnila v\u00fdsledky anal\u00fdzy bal\u00ed\u010dkov v repozit\u00e1ri PyPI na h\u013eadanie potenci\u00e1lne nebezpe\u010dn\u00fdch kon\u0161trukci\u00ed, ktor\u00e9 m\u00f4\u017eu vies\u0165 k zranite\u013enostiam.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/news\/46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd4746% Python-\u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439 \u043a\u043e\u0434 | ProHoster","og:description":"\u0413\u0440\u0443\u043f\u043f\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438\u0437 \u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 \u0422\u0443\u0440\u043a\u0443 (\u0424\u0438\u043d\u043b\u044f\u043d\u0434\u0438\u044f) \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439.","og:url":"https:\/\/prohoster.info\/sk\/blog\/news\/46-python-paketov-v-repozitorii-pypi-soderzhat-potenczialno-nebezopasnyj-kod","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-07-30T14:22:41+00:00","article:modified_time":"2021-07-30T14:22:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"100875","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-07-30 15:23:30","updated":"2022-09-29 23:44:18","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/100875","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=100875"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/100875\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=100875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=100875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=100875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}