{"id":30312,"date":"2019-10-31T21:34:49","date_gmt":"2019-10-31T18:34:49","guid":{"rendered":"https:\/\/prohoster.info\/blog\/lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij\/"},"modified":"2019-10-31T21:34:49","modified_gmt":"2019-10-31T18:34:49","slug":"lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij","title":{"rendered":"Slazds (tarpits) ien\u0101ko\u0161ajiem SSH savienojumiem","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Nav nosl\u0113pums, ka internets ir \u013coti vardarb\u012bga vide. Tikl\u012bdz j\u016bs uzs\u0101kat serveri, tas acumirkl\u012b tiek pak\u013cauts masveida uzbrukumiem un daudziem sken\u0113\u0161anas m\u0113\u0123in\u0101jumiem. Piem\u0113rs ir <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/436076\/\">hunipots no dro\u0161\u012bbas speci\u0101listiem<\/a><\/noindex> , kas \u013cauj nov\u0113rt\u0113t \u0161\u012b atkritumu trafika apm\u0113rus. Paties\u012bb\u0101 vid\u0113j\u0101 server\u012b 99% trafika var b\u016bt kait\u012bgs.<\/p>\n<p>Tarpits ir porta slazds, ko izmanto ien\u0101ko\u0161o savienojumu pal\u0113nin\u0101\u0161anai. Ja tre\u0161\u0101 puse piesl\u0113dzas \u0161im portam, \u0101tri izsl\u0113gt savienojumu neizdosies. Tai vajadz\u0113s t\u0113r\u0113t savus sist\u0113mas resursus un gaid\u012bt, kam\u0113r savienojums tiks p\u0101rtraukts p\u0113c laika ierobe\u017eojuma, vai manu\u0101li to p\u0101rtraukt.<\/p>\n<p>Visbie\u017e\u0101k tarpiti tiek izmantoti aizsardz\u012bbai. \u0160\u012b tehnika pirmo reizi tika izstr\u0101d\u0101ta, lai aizsarg\u0101tu pret datoru t\u0101rpiem. Pa\u0161laik to var izmantot, lai sare\u017e\u0123\u012btu dz\u012bvi surog\u0101tpasta s\u016bt\u012bt\u0101jiem un p\u0113t\u012bt\u0101jiem, kas pla\u0161i sken\u0113 visus IP adreses (piem\u0113ri uz \u0425\u0430\u0431\u0440\u0435: <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.haschek.at\/2019\/i-scanned-austria.html\">Austrija<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/444490\/\">Ukraina<\/a><\/noindex>).<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nVienam no sist\u0113mas administratoriem v\u0101rd\u0101 Kriss Velons, iesp\u0113jams, apnicis v\u0113rot \u0161o nek\u0101rt\u012bbu - un vi\u0146\u0161 uzrakst\u012bja mazu programmu <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/skeeto\/endlessh\">Endlessh<\/a><\/noindex>, tarpits SSH, kas pal\u0113nina ien\u0101ko\u0161os savienojumus. Programme atver portu (noklus\u0113jum\u0101 test\u0113\u0161anai nor\u0101d\u012bts ports 2222) un izlikties par SSH serveri, bet paties\u012bb\u0101 izveido bezgal\u012bgu savienojumu ar ien\u0101ko\u0161o klientu, kam\u0113r tas nepadodas. Tas var turpin\u0101ties vair\u0101kas dienas vai ilg\u0101k, l\u012bdz klients atsl\u0113gsies.<\/p>\n<p>Uzt\u012b\u0161anas r\u012bka uzst\u0101d\u012b\u0161ana:<\/p>\n<pre><code class=\"bash\">$ make\n$ .\/endlessh &amp;\n$ ssh -p2222 localhost<\/code><\/pre>\n<p>\nPareizi ieviests tarpits at\u0146ems uzbruc\u0113jam vair\u0101k resursu nek\u0101 jums. Bet runa nav tikai par resursiem. Autors <noindex><a rel=\"nofollow\" href=\"https:\/\/nullprogram.com\/blog\/2019\/03\/22\/\">raksta<\/a><\/noindex>, ka programma rada atkar\u012bbu. Tie\u0161i tagad vi\u0146a slazd\u0101 ir 27 klienti, da\u017ei no vi\u0146iem piesl\u0113gu\u0161ies vair\u0101kas ned\u0113\u013cas. Aktivit\u0101tes kulmin\u0101cij\u0101 slazd\u0101 uztur\u0113j\u0101s 1378 klienti 20 stundu laik\u0101!<\/p>\n<p>Izmanto\u0161anas laik\u0101 Endlessh serveri j\u0101uzst\u0101da parastaj\u0101 port\u0101 22, kur masveid\u0101 uzbr\u016bk hulig\u0101ni. Standarta dro\u0161\u012bbas ieteikumi vienm\u0113r iesaka p\u0101rvietot SSH uz citu portu, kas iev\u0113rojami samazina \u017eurn\u0101lu apjomu.<\/p>\n<p>Kriss Velons saka, ka vi\u0146a programma izmanto vienu rindkopu no spesifik\u0101cijas <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc4253#section-4.2\">RFC 4253<\/a><\/noindex> par SSH protokolu. Tikko p\u0113c TCP savienojuma izveides, bet pirms \u0161ifr\u0113\u0161anas lieto\u0161anas ab\u0101m pus\u0113m j\u0101nos\u016bta identifik\u0101cijas virknes. Un turpat piez\u012bme: <i>\u00abServer VAR var\u0113tu nos\u016bt\u012bt citus datu virknes pirms versijas virknes nos\u016bt\u012b\u0161anas\u00bb<\/i>. Un <b>nav ierobe\u017eojumu<\/b> \u0161iem datiem, vienk\u0101r\u0161i katra virkne j\u0101uzs\u0101k ar <code>SSH-<\/code>.<\/p>\n<p>Tie\u0161i ar to nodarbojas programma Endlessh: t\u0101 <b>nos\u016bta <i>bezgal\u012bgu<\/i> nejau\u0161i \u0123ener\u0113tu datu pl\u016bsmu<\/b>, kas atbilst RFC 4253, tas ir, nos\u016bt\u012b\u0161ana pirms identifik\u0101cijas, un katra virkne s\u0101kas ar <code>SSH-<\/code> un nep\u0101rsniedz 255 simbolus, ieskaitot rindi\u0146as beigu simbolu. Kopum\u0101 viss p\u0113c standarta.<\/p>\n<p>P\u0113c noklus\u0113juma programma gaida 10 sekundes starp pakot\u0146u nos\u016bt\u012b\u0161anu. Tas nov\u0113r\u0161 atvieno\u0161anu laika ierobe\u017eojuma d\u0113\u013c, t\u0101d\u0113j\u0101di klients var palikt iesprostots ilgsto\u0161i.<\/p>\n<p>T\u0101 k\u0101 datu nos\u016bt\u012b\u0161ana notiek pirms kriptogr\u0101fijas pielieto\u0161anas, programma ir \u0101rk\u0101rt\u012bgi vienk\u0101r\u0161a. Taj\u0101 nav nepiecie\u0161ams ieviest nek\u0101dus \u0161ifr\u0113jumus un atbalst\u012bt daudzus protokolus.<\/p>\n<p>Autors ir centies, lai r\u012bks pat\u0113r\u0113tu minim\u0101las resursus un darbotos absol\u016bti neman\u0101mi uz datora. At\u0161\u0137ir\u012bb\u0101 no m\u016bsdienu antiv\u012brusiem un citiem \u00abdro\u0161\u012bbas sist\u0113m\u0101m\u00bb, tam nevajadz\u0113tu pal\u0113nin\u0101t datoru. Vi\u0146am izdev\u0101s minimiz\u0113t gan trafiku, gan atmi\u0146as pat\u0113ri\u0146u ar nedaudz izsmalcin\u0101t\u0101ku programmat\u016bras realiz\u0101ciju. Ja vi\u0146\u0161 vienk\u0101r\u0161i palaistu atsevi\u0161\u0137u procesu uz jaunu savienojumu, potenci\u0101lie \u013caunpr\u0101t\u012bgie lietot\u0101ji var\u0113tu veikt DDoS uzbrukumu, atverot daudzus savienojumus, lai izs\u012bktu resursus uz datora. Pa vienai pl\u016bsmai uz savienojumu \u2014 ar\u012b nav lab\u0101kais variants, jo kodols izt\u0113r\u0113s resursus pl\u016bsmu p\u0101rvald\u012b\u0161anai.<\/p>\n<p>T\u0101p\u0113c Kriss Velons izv\u0113l\u0113j\u0101s Endlessh visviegl\u0101ko variantu: vienas pl\u016bsmas serveri <code>poll(2)<\/code>, kur klienti iesprost\u0101 praktiski pat\u0113r\u0113 liekus resursus, neieskaitot saskarni kodol\u0101 un v\u0113l 78 baitus uzraudz\u012bbai Endlessh. Lai nerad\u012btu sa\u0146em\u0161anas un nos\u016bt\u012b\u0161anas buferus katram klientam, Endlessh atver tie\u0161a piek\u013cuves saskarni un tie\u0161i p\u0101rraida TCP pakotnes, ignor\u0113jot gandr\u012bz visu TCP\/IP oper\u0113t\u0101jsist\u0113mas steku. Ien\u0101ko\u0161ais buferis visp\u0101r nav nepiecie\u0161ams, jo ien\u0101ko\u0161ie dati m\u016bs neinteres\u0113.<\/p>\n<p>Autors saka, ka programmas izstr\u0101des laik\u0101 <noindex><a rel=\"nofollow\" href=\"https:\/\/nullprogram.com\/blog\/2019\/03\/10\/\">nezin\u0101ja<\/a><\/noindex> par Python asycio un citiem trauc\u0113jumiem. Ja vi\u0146\u0161 b\u016btu zin\u0101jis par asycio, tad savu util\u012btu var\u0113tu realiz\u0113t tikai 18 rindi\u0146\u0101s Python:<\/p>\n<pre><code class=\"python\">import asyncio\nimport random\n\nasync def handler(_reader, writer):\ntry:\nwhile True:\nawait asyncio.sleep(10)\nwriter.write(b'%xrn' % random.randint(0, 2**32))\nawait writer.drain()\nexcept ConnectionResetError:\npass\n\nasync def main():\nserver = await asyncio.start_server(handler, '0.0.0.0', 2222)\nasync with server:\nawait server.serve_forever()\n\nasyncio.run(main())<\/code><\/pre>\n<p>\nAsyncio ir ide\u0101li piem\u0113rots tarpit\u012brakstu rakst\u012b\u0161anai. Piem\u0113ram, \u0161\u0101ds tarpit var uz d\u016b\u0161\u012bgiem stund\u0101m padar\u012bt Firefox, Chrome vai citu klientu, kas m\u0113\u0123ina savienoties ar j\u016bsu HTTP serveri, neizl\u0101pjoties:<\/p>\n<pre><code class=\"python\">import asyncio\nimport random\n\nasync def handler(_reader, writer):\nwriter.write(b'HTTP\\\/1.1 200 OKrn')\ntry:\nwhile True:\nawait asyncio.sleep(5)\nheader = random.randint(0, 2**32)\nvalue = random.randint(0, 2**32)\nwriter.write(b'X-%x: %xrn' % (header, value))\nawait writer.drain()\nexcept ConnectionResetError:\npass\n\nasync def main():\nserver = await asyncio.start_server(handler, '0.0.0.0', 8080)\nasync with server:\nawait server.serve_forever()\n\nasyncio.run(main())<\/code><\/pre>\n<p>\nTarpit ir lieliska ier\u012bce, lai sod\u012btu interneta hulig\u0101nus. Paties\u012bb\u0101 ir zin\u0101ms risks tie\u0161i piesaist\u012bt vi\u0146u uzman\u012bbu ar konkr\u0113ta servera neparasto uzved\u012bbu. K\u0101ds <noindex><a rel=\"nofollow\" href=\"https:\/\/news.ycombinator.com\/item?id=19466867\">var\u0113tu dom\u0101t par atrieb\u012bbu<\/a><\/noindex> un m\u0113r\u0137tiec\u012bgu DDoS uzbrukumu j\u016bsu IP. Tom\u0113r l\u012bdz \u0161im nav biju\u0161as \u0161\u0101das situ\u0101cijas, un tarpit labi darbojas.<\/p>\n<p>Hubi:<br \/>\nPython, Inform\u0101cijas dro\u0161\u012bba, Softs, Sistem\u0101tisk\u0101 administr\u0101cija<\/p>\n<p>M\u0113r\u0137i:<br \/>\nSSH, Endlessh, tarpit, tarpit, slazds, asyncio<br \/>\nSlazds (tarpits) ien\u0101ko\u0161ajiem SSH savienojumiem<\/p>\n<p>Nav nosl\u0113pums, ka internets ir \u013coti vardarb\u012bga vide. Tikl\u012bdz j\u016bs uzs\u0101kat serveri, tas acumirkl\u012b tiek pak\u013cauts masveida uzbrukumiem un daudziem sken\u0113\u0161anas m\u0113\u0123in\u0101jumiem. Piem\u0113rs ir <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/436076\/\">hunipots no dro\u0161\u012bbas speci\u0101listiem<\/a><\/noindex> , kas \u013cauj nov\u0113rt\u0113t \u0161\u012b atkritumu trafika apm\u0113rus. Paties\u012bb\u0101 vid\u0113j\u0101 server\u012b 99% trafika var b\u016bt kait\u012bgs.<\/p>\n<p>Tarpits ir porta slazds, ko izmanto ien\u0101ko\u0161o savienojumu pal\u0113nin\u0101\u0161anai. Ja tre\u0161\u0101 puse piesl\u0113dzas \u0161im portam, \u0101tri izsl\u0113gt savienojumu neizdosies. Tai vajadz\u0113s t\u0113r\u0113t savus sist\u0113mas resursus un gaid\u012bt, kam\u0113r savienojums tiks p\u0101rtraukts p\u0113c laika ierobe\u017eojuma, vai manu\u0101li to p\u0101rtraukt.<\/p>\n<p>Visbie\u017e\u0101k tarpiti tiek izmantoti aizsardz\u012bbai. \u0160\u012b tehnika pirmo reizi tika izstr\u0101d\u0101ta, lai aizsarg\u0101tu pret datoru t\u0101rpiem. Pa\u0161laik to var izmantot, lai sare\u017e\u0123\u012btu dz\u012bvi surog\u0101tpasta s\u016bt\u012bt\u0101jiem un p\u0113t\u012bt\u0101jiem, kas pla\u0161i sken\u0113 visus IP adreses (piem\u0113ri uz \u0425\u0430\u0431\u0440\u0435: <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.haschek.at\/2019\/i-scanned-austria.html\">Austrija<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/444490\/\">Ukraina<\/a><\/noindex>).<\/p>\n<p>Vienam no sist\u0113mas administratoriem v\u0101rd\u0101 Kriss Velons, iesp\u0113jams, apnicis v\u0113rot \u0161o nek\u0101rt\u012bbu - un vi\u0146\u0161 uzrakst\u012bja mazu programmu <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/skeeto\/endlessh\">Endlessh<\/a><\/noindex>, tarpits SSH, kas pal\u0113nina ien\u0101ko\u0161os savienojumus. Programme atver portu (noklus\u0113jum\u0101 test\u0113\u0161anai nor\u0101d\u012bts ports 2222) un izlikties par SSH serveri, bet paties\u012bb\u0101 izveido bezgal\u012bgu savienojumu ar ien\u0101ko\u0161o klientu, kam\u0113r tas nepadodas. Tas var turpin\u0101ties vair\u0101kas dienas vai ilg\u0101k, l\u012bdz klients atsl\u0113gsies.<\/p>\n<p>Uzt\u012b\u0161anas r\u012bka uzst\u0101d\u012b\u0161ana:<\/p>\n<pre><code class=\"bash\">$ make\n$ .\/endlessh &amp;\n$ ssh -p2222 localhost<\/code><\/pre>\n<p>\nPareizi ieviests tarpits at\u0146ems uzbruc\u0113jam vair\u0101k resursu nek\u0101 jums. Bet runa nav tikai par resursiem. Autors <noindex><a rel=\"nofollow\" href=\"https:\/\/nullprogram.com\/blog\/2019\/03\/22\/\">raksta<\/a><\/noindex>, ka programma rada atkar\u012bbu. Tie\u0161i tagad vi\u0146a slazd\u0101 ir 27 klienti, da\u017ei no vi\u0146iem piesl\u0113gu\u0161ies vair\u0101kas ned\u0113\u013cas. Aktivit\u0101tes kulmin\u0101cij\u0101 slazd\u0101 uztur\u0113j\u0101s 1378 klienti 20 stundu laik\u0101!<\/p>\n<p>Izmanto\u0161anas laik\u0101 Endlessh serveri j\u0101uzst\u0101da parastaj\u0101 port\u0101 22, kur masveid\u0101 uzbr\u016bk hulig\u0101ni. Standarta dro\u0161\u012bbas ieteikumi vienm\u0113r iesaka p\u0101rvietot SSH uz citu portu, kas iev\u0113rojami samazina \u017eurn\u0101lu apjomu.<\/p>\n<p>Kriss Velons saka, ka vi\u0146a programma izmanto vienu rindkopu no spesifik\u0101cijas <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc4253#section-4.2\">RFC 4253<\/a><\/noindex> par SSH protokolu. Tikko p\u0113c TCP savienojuma izveides, bet pirms \u0161ifr\u0113\u0161anas lieto\u0161anas ab\u0101m pus\u0113m j\u0101nos\u016bta identifik\u0101cijas virknes. Un turpat piez\u012bme: <i>\u00abServer VAR var\u0113tu nos\u016bt\u012bt citus datu virknes pirms versijas virknes nos\u016bt\u012b\u0161anas\u00bb<\/i>. Un <b>nav ierobe\u017eojumu<\/b> \u0161iem datiem, vienk\u0101r\u0161i katra virkne j\u0101uzs\u0101k ar <code>SSH-<\/code>.<\/p>\n<p>Tie\u0161i ar to nodarbojas programma Endlessh: t\u0101 <b>nos\u016bta <i>bezgal\u012bgu<\/i> nejau\u0161i \u0123ener\u0113tu datu pl\u016bsmu<\/b>, kas atbilst RFC 4253, tas ir, nos\u016bt\u012b\u0161ana pirms identifik\u0101cijas, un katra virkne s\u0101kas ar <code>SSH-<\/code> un nep\u0101rsniedz 255 simbolus, ieskaitot rindi\u0146as beigu simbolu. Kopum\u0101 viss p\u0113c standarta.<\/p>\n<p>P\u0113c noklus\u0113juma programma gaida 10 sekundes starp pakot\u0146u nos\u016bt\u012b\u0161anu. Tas nov\u0113r\u0161 atvieno\u0161anu laika ierobe\u017eojuma d\u0113\u013c, t\u0101d\u0113j\u0101di klients var palikt iesprostots ilgsto\u0161i.<\/p>\n<p>T\u0101 k\u0101 datu nos\u016bt\u012b\u0161ana notiek pirms kriptogr\u0101fijas pielieto\u0161anas, programma ir \u0101rk\u0101rt\u012bgi vienk\u0101r\u0161a. Taj\u0101 nav nepiecie\u0161ams ieviest nek\u0101dus \u0161ifr\u0113jumus un atbalst\u012bt daudzus protokolus.<\/p>\n<p>Autors ir centies, lai r\u012bks pat\u0113r\u0113tu minim\u0101las resursus un darbotos absol\u016bti neman\u0101mi uz datora. At\u0161\u0137ir\u012bb\u0101 no m\u016bsdienu antiv\u012brusiem un citiem \u00abdro\u0161\u012bbas sist\u0113m\u0101m\u00bb, tam nevajadz\u0113tu pal\u0113nin\u0101t datoru. Vi\u0146am izdev\u0101s minimiz\u0113t gan trafiku, gan atmi\u0146as pat\u0113ri\u0146u ar nedaudz izsmalcin\u0101t\u0101ku programmat\u016bras realiz\u0101ciju. Ja vi\u0146\u0161 vienk\u0101r\u0161i palaistu atsevi\u0161\u0137u procesu uz jaunu savienojumu, potenci\u0101lie \u013caunpr\u0101t\u012bgie lietot\u0101ji var\u0113tu veikt DDoS uzbrukumu, atverot daudzus savienojumus, lai izs\u012bktu resursus uz datora. Pa vienai pl\u016bsmai uz savienojumu \u2014 ar\u012b nav lab\u0101kais variants, jo kodols izt\u0113r\u0113s resursus pl\u016bsmu p\u0101rvald\u012b\u0161anai.<\/p>\n<p>T\u0101p\u0113c Kriss Velons izv\u0113l\u0113j\u0101s Endlessh visviegl\u0101ko variantu: vienas pl\u016bsmas serveri <code>poll(2)<\/code>, kur klienti iesprost\u0101 praktiski pat\u0113r\u0113 liekus resursus, neieskaitot saskarni kodol\u0101 un v\u0113l 78 baitus uzraudz\u012bbai Endlessh. Lai nerad\u012btu sa\u0146em\u0161anas un nos\u016bt\u012b\u0161anas buferus katram klientam, Endlessh atver tie\u0161a piek\u013cuves saskarni un tie\u0161i p\u0101rraida TCP pakotnes, ignor\u0113jot gandr\u012bz visu TCP\/IP oper\u0113t\u0101jsist\u0113mas steku. Ien\u0101ko\u0161ais buferis visp\u0101r nav nepiecie\u0161ams, jo ien\u0101ko\u0161ie dati m\u016bs neinteres\u0113.<\/p>\n<p>Autors saka, ka programmas izstr\u0101des laik\u0101 <noindex><a rel=\"nofollow\" href=\"https:\/\/nullprogram.com\/blog\/2019\/03\/10\/\">nezin\u0101ja<\/a><\/noindex> par Python asycio un citiem trauc\u0113jumiem. Ja vi\u0146\u0161 b\u016btu zin\u0101jis par asycio, tad savu util\u012btu var\u0113tu realiz\u0113t tikai 18 rindi\u0146\u0101s Python:<\/p>\n<pre><code class=\"python\">import asyncio\nimport random\n\nasync def handler(_reader, writer):\n    try:\n        while True:\n            await asyncio.sleep(10)\n            writer.write(b'%xrn' % random.randint(0, 2**32))\n            await writer.drain()\n    except ConnectionResetError:\n        pass\n\nasync def main():\n    server = await asyncio.start_server(handler, '0.0.0.0', 2222)\n    async with server:\n        await server.serve_forever()\n\nasyncio.run(main())<\/code><\/pre>\n<p>\nAsyncio ir ide\u0101li piem\u0113rots tarpit\u012brakstu rakst\u012b\u0161anai. Piem\u0113ram, \u0161\u0101ds tarpit var uz d\u016b\u0161\u012bgiem stund\u0101m padar\u012bt Firefox, Chrome vai citu klientu, kas m\u0113\u0123ina savienoties ar j\u016bsu HTTP serveri, neizl\u0101pjoties:<\/p>\n<pre><code class=\"python\">import asyncio\nimport random\n\nasync def handler(_reader, writer):\n    writer.write(b'HTTP\\\/1.1 200 OKrn')\n    try:\n        while True:\n            await asyncio.sleep(5)\n            header = random.randint(0, 2**32)\n            value = random.randint(0, 2**32)\n            writer.write(b'X-%x: %xrn' % (header, value))\n            await writer.drain()\n    except ConnectionResetError:\n        pass\n\nasync def main():\n    server = await asyncio.start_server(handler, '0.0.0.0', 8080)\n    async with server:\n        await server.serve_forever()\n\nasyncio.run(main())<\/code><\/pre>\n<p>\nTarpit ir lieliska ier\u012bce, lai sod\u012btu interneta hulig\u0101nus. Paties\u012bb\u0101 ir zin\u0101ms risks tie\u0161i piesaist\u012bt vi\u0146u uzman\u012bbu ar konkr\u0113ta servera neparasto uzved\u012bbu. K\u0101ds <noindex><a rel=\"nofollow\" href=\"https:\/\/news.ycombinator.com\/item?id=19466867\">var\u0113tu dom\u0101t par atrieb\u012bbu<\/a><\/noindex> un m\u0113r\u0137tiec\u012bgu DDoS uzbrukumu j\u016bsu IP. Tom\u0113r l\u012bdz \u0161im nav biju\u0161as \u0161\u0101das situ\u0101cijas, un tarpit labi darbojas.<\/p>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/clck.ru\/EWJHw\"><img decoding=\"async\" alt=\"Slazds (tarpits) ien\u0101ko\u0161ajiem SSH savienojumiem\" src=\"\/wp-content\/uploads\/2019\/03\/a1656e1e4a2ae612eaa58451579a488f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<br \/>Avots: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/globalsign\/blog\/445318\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u2014 \u043e\u0447\u0435\u043d\u044c \u0432\u0440\u0430\u0436\u0434\u0435\u0431\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440, \u043e\u043d \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u0432\u0435\u0440\u0433\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0430\u0442\u0430\u043a\u0430\u043c \u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043c. \u041d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0445\u0430\u043d\u0438\u043f\u043e\u0442\u0430 \u043e\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u0438\u043a\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0448\u0442\u0430\u0431 \u044d\u0442\u043e\u0433\u043e \u043c\u0443\u0441\u043e\u0440\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430. \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 99% \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u044b\u043c. Tarpit \u2014 \u044d\u0442\u043e \u043f\u043e\u0440\u0442-\u043b\u043e\u0432\u0443\u0448\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0437\u0430\u043c\u0435\u0434\u043b\u0435\u043d\u0438\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439. \u0415\u0441\u043b\u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044f\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f [&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":[],"tags":[],"class_list":["post-30312","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u2014 \u043e\u0447\u0435\u043d\u044c \u0432\u0440\u0430\u0436\u0434\u0435\u0431\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440, \u043e\u043d \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u0432\u0435\u0440\u0433\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0430\u0442\u0430\u043a\u0430\u043c \u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043c.\" \/>\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\/lv\/blog\/lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\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\udd47\u041b\u043e\u0432\u0443\u0448\u043a\u0430 (\u0442\u0430\u0440\u043f\u0438\u0442) \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 SSH-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u2014 \u043e\u0447\u0435\u043d\u044c \u0432\u0440\u0430\u0436\u0434\u0435\u0431\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440, \u043e\u043d \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u0432\u0435\u0440\u0433\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0430\u0442\u0430\u043a\u0430\u043c \u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij\" \/>\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=\"2019-10-31T18:34:49+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:34:49+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\udd47Tarpits (tarpit) ien\u0101ko\u0161ajiem SSH savienojumiem | ProHoster","description":"Nav nosl\u0113pums, ka internets ir \u013coti naid\u012bga vide. Tikl\u012bdz j\u016bs uzs\u0101kat serveri, tas nekav\u0113joties tiek pak\u013cauts masveida uzbrukumiem un daudziem sken\u0113jumiem.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","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\udd47\u041b\u043e\u0432\u0443\u0448\u043a\u0430 (\u0442\u0430\u0440\u043f\u0438\u0442) \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 SSH-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 | ProHoster","og:description":"\u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u2014 \u043e\u0447\u0435\u043d\u044c \u0432\u0440\u0430\u0436\u0434\u0435\u0431\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440, \u043e\u043d \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u0432\u0435\u0440\u0433\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0430\u0442\u0430\u043a\u0430\u043c \u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043c.","og:url":"https:\/\/prohoster.info\/lv\/blog\/lovushka-tarpit-dlya-vhodyashhih-ssh-soedinenij","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":"2019-10-31T18:34:49+00:00","article:modified_time":"2019-10-31T18:34:49+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30312","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":"Article","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":"2026-01-21 00:38:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:37:27","updated":"2026-01-21 00:38:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/30312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=30312"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/30312\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=30312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=30312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=30312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}