ื“ื™ ื‘ื™ื™ื–ืข ืคึผืึทืงืึทื“ื–ืฉืึทื– mitmproxy2 ืื•ืŸ mitmproxy-iframe ื–ืขื ืขืŸ ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ ืคื•ืŸ ื“ื™ PyPI ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ

ื“ืขืจ ืžื—ื‘ืจ ืคื•ืŸ ืžื™ื˜ืžืคึผืจืึธืงืกื™, ืึท ื’ืขืฆื™ื™ึทื’ ืคึฟืึทืจ ืึทื ืึทืœื™ื™ื–ื™ื ื’ ื”ื˜ื˜ืคึผ / ื”ื˜ื˜ืคึผืก ืคืึทืจืงืขืจ, ื’ืขืฆื•ื™ื’ืŸ ื•ืคืžืขืจืงื–ืึทืžืงื™ื™ื˜ ืฆื• ื“ื™ ืื•ื™ืกื–ืขืŸ ืคื•ืŸ ืึท ื’ืึธืคึผืœ ืคื•ืŸ ื–ื™ื™ืŸ ืคึผืจื•ื™ืขืงื˜ ืื™ืŸ ื“ื™ PyPI (Python Package Index) Directory ืคื•ืŸ Python ืคึผืึทืงืึทื“ื–ืฉืึทื–. ื“ืขืจ ื’ืึธืคึผืœ ืื™ื– ื’ืขื•ื•ืขืŸ ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ ืขื ืœืขืš ื ืึธืžืขืŸ ืžื™ื˜ืžืคึผืจืึธืงืกื™2 ืื•ืŸ ื“ื™ ื ื™ื˜-ืขื’ื–ื™ืกื˜ืึทื ื˜ ื•ื•ืขืจืกื™ืข 8.0.1 (ืงืจืึทื ื˜ ืžืขืœื“ื•ื ื’ ืžื™ื˜ืžืคึผืจืึธืงืกื™ 7.0.4) ืžื™ื˜ ื“ื™ ื“ืขืจื•ื•ืึทืจื˜ื•ื ื’ ืึทื– ื™ื ืึทื˜ืขื ื˜ื™ื•ื• ื™ื•ื–ืขืจื– ื•ื•ืึธืœื˜ ื–ืข ื“ืขื ืคึผืขืงืœ ื•ื•ื™ ืึท ื ื™ื™ึทืข ืึทื“ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ืคึผืจื•ื™ืขืงื˜ (ื˜ื™ื™ืคึผืกืงื•ื•ืึทื˜ื™ื ื’) ืื•ืŸ ื•ื•ืึธืœื˜ ื•ื•ืขืœืŸ. ืฆื• ืคึผืจื•ื‘ื™ืจืŸ ื“ื™ ื ื™ื™ึทืข ื•ื•ืขืจืกื™ืข.

ืื™ืŸ ื–ื™ื™ืŸ ื–ืึทืฅ, ืžื™ื˜ืžืคึผืจืึธืงืกื™ 2 ืื™ื– ื’ืขื•ื•ืขืŸ ืขื ืœืขืš ืฆื• ืžื™ื˜ืžืคึผืจืึธืงืกื™, ืžื™ื˜ ื“ื™ ื•ื™ืกื ืขื ืคื•ืŸ ืขื ื“ืขืจื•ื ื’ืขืŸ ืžื™ื˜ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื‘ื™ื™ื–ืข ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™. ื“ื™ ืขื ื“ืขืจื•ื ื’ืขืŸ ืงืึธื ืกื™ืกื˜ืขื“ ืคื•ืŸ ืกื˜ืึธืคึผืคึผื™ื ื’ ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ื”ื˜ื˜ืคึผ ื›ืขื“ืขืจ "X-Frame-Options: DENY", ื•ื•ืึธืก ืคึผืจืึธื•ื›ื™ื‘ืึทืฅ ื“ื™ ืคึผืจืึทืกืขืกื™ื ื’ ืคื•ืŸ ืื™ื ื”ืึทืœื˜ ืื™ืŸ ื“ื™ iframe, ื“ื™ืกื™ื™ื‘ืึทืœ ืฉื•ืฅ ืงืขื’ืŸ XSRF ืื ืคืืœืŸ ืื•ืŸ ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ื›ืขื“ืขืจื– "Access-Control-Allow-Origin: *", "Access-Control-Allow-Headers: *" ืื•ืŸ "Access-Control-Allow-Methods: POST, GET, DELETE, OPTIONS".

ื“ื™ ืขื ื“ืขืจื•ื ื’ืขืŸ ื”ืึธื‘ืŸ ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ ืจื™ืกื˜ืจื™ืงืฉืึทื ื– ืื•ื™ืฃ ืึทืงืกืขืก ืฆื• ื“ื™ HTTP API ื’ืขื ื™ืฆื˜ ืฆื• ืคื™ืจืŸ ืžื™ื˜ืžืคึผืจืึธืงืกื™ ื“ื•ืจืš ื“ื™ ื•ื•ืขื‘ ืฆื•ื‘ื™ื ื“, ื•ื•ืึธืก ืขืจืœื•ื™ื‘ื˜ ืงื™ื™ืŸ ืึทื˜ืึทืงืขืจ ืœืึธื•ืงื™ื™ื˜ืึทื“ ืื•ื™ืฃ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ื”ื™ื’ืข ื ืขืฅ ืฆื• ืึธืจื’ืึทื ื™ื–ื™ืจืŸ ื“ื™ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคื•ืŸ ื–ื™ื™ืขืจ ืงืึธื“ ืื•ื™ืฃ ื“ื™ ื‘ืึทื ื™ืฆืขืจ 'ืก ืกื™ืกื˜ืขื ื“ื•ืจืš ืฉื™ืงืŸ ืึทืŸ HTTP ื‘ืขื˜ืŸ.

ื“ื™ ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ ืึทื“ืžื™ื ื™ืกื˜ืจืึทืฆื™ืข ื”ืึธื˜ ืžืกื›ื™ื ื’ืขื•ื•ืขืŸ ืึทื– ื“ื™ ืขื ื“ืขืจื•ื ื’ืขืŸ ื•ื•ืึธืก ื–ืขื ืขืŸ ื’ืขืžืื›ื˜ ืงืขืŸ ื–ื™ื™ืŸ ื™ื ื˜ืขืจืคึผืจืึทื˜ืึทื“ ื•ื•ื™ ื‘ื™ื™ื–ืข, ืื•ืŸ ื“ืขืจ ืคึผืขืงืœ ื–ื™ืš ื•ื•ื™ ืึทืŸ ืคึผืจื•ื•ื•ืŸ ืฆื• ื”ืขื›ืขืจืŸ ืืŸ ืื ื“ืขืจ ืคึผืจืึธื“ื•ืงื˜ ืื•ื ื˜ืขืจ ื“ื™ ื’ื™ื™ื– ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ืคึผืจื•ื™ืขืงื˜ (ื“ื™ ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ื“ื™ ืคึผืขืงืœ ืกื˜ื™ื™ื˜ื™ื“ ืึทื– ื“ืึธืก ืื™ื– ืึท ื ื™ื™ึทืข ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ืžื™ื˜ืžืคึผืจืึธืงืกื™, ื ื™ืฉื˜ ืึท ื’ืึธืคึผืœ). ื ืึธืš ืจื™ืžื•ื•ื•ื™ื ื’ ื“ืขื ืคึผืขืงืœ ืคื•ืŸ ื“ืขื ืงืึทื˜ืึทืœืึธื’, ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ื˜ืึธื’ ืึท ื ื™ื™ึทืข ืคึผืขืงืœ, mitmproxy-iframe, ืื™ื– ื’ืขื•ื•ืขืŸ ืคึผืึธืกื˜ืขื“ ืฆื• PyPI, ื“ื™ ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ื•ื•ืึธืก ืื•ื™ืš ื’ืึธืจ ืžืึทื˜ืฉื˜ ื“ื™ ื‘ืึทืึทืžื˜ืขืจ ืคึผืขืงืœ. ื“ื™ ืžื™ื˜mproxy-iframe ืคึผืขืงืœ ืื™ื– ืื•ื™ืš ืื™ืฆื˜ ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ ืคื•ืŸ ื“ื™ PyPI ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’