{"id":40151,"date":"2020-01-31T20:49:28","date_gmt":"2020-01-31T17:49:28","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/bitva-koderov-ya-protiv-togo-parnya-s-vnc"},"modified":"2020-01-31T20:49:28","modified_gmt":"2020-01-31T17:49:28","slug":"bitva-koderov-ya-protiv-togo-parnya-s-vnc","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc","title":{"rendered":"Koderkamp: mig imod den fyr med VNC","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>I <noindex><a rel=\"nofollow\" href=\"https:\/\/martinrue.com\/\">denne blog<\/a><\/noindex> Der er blevet offentliggjort mange programmeringshistorier. Jeg kan godt lide at mindes mine gamle dumheder. N\u00e5, her er endnu en s\u00e5dan historie.<\/p>\n<p>Jeg blev f\u00f8rst interesseret i computere, is\u00e6r programmering, da jeg var omkring 11 \u00e5r gammel. I starten af \u200b\u200bmellemskolen brugte jeg<b>fleste af<\/b>det meste af min fritid p\u00e5 at lege med min C64 og skrive i BASIC, og s\u00e5 klippede jeg d\u00e5rlig kode ud med saks. <noindex><a rel=\"nofollow\" href=\"https:\/\/martinrue.com\/give-yourself-more-playtime\/\">Jeg sp\u00f8ger ikke, med saks.<\/a><\/noindex>.<\/p>\n<p>Efter skolen (i alderen omkring 16 \u00e5r) g\u00e5r britiske b\u00f8rn normalt p\u00e5 college, hvor de v\u00e6lger tre til fire fag at studere, inden de g\u00e5r p\u00e5 universitetet. Givet min k\u00e6rlighed til den beige kasse og b\u00e5ndoptageren derhjemme, besluttede jeg, at 'informatik' i college var det rigtige valg.<\/p>\n<p>Kursus var sjovere, end jeg havde forventet; der introducerede jeg for f\u00f8rste gang Pascal og Delphi.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nI pauserne mellem lektionerne kunne studerende arbejde ved enhver ledig maskine i computerhallen. Forestil dig: et k\u00e6mpe rum, der var designet til omkring hundrede personer, med r\u00e6kker af borde d\u00e6kket med maskiner, som dem, hvor sk\u00e6rmen st\u00e5r oven p\u00e5 systemboksen. Den konstante summen af bl\u00e6sere, musens kugler der ruller over bordene, uden pause. Luften havde en m\u00e6rkelig lugt, som om 50-100 hormonudskillende teenagere skiftedes til at k\u00f8le hundrede Pentium III chips.<\/p>\n<p>P\u00e5 trods af sundhedsrisiciene kunne jeg godt lide at sidde ved computeren, n\u00e5r der endelig var et minut ledigt.<\/p>\n<p>Der var en administrator tilstede, en lav mellemaldrene mand, der var blevet valgt til denne rolle p\u00e5 grund af sin ukuelige trang til at blive en ond diktator. Det mener jeg. Tilstedev\u00e6rende er n\u00e6sten en underdrivelse, fyren elskede virkelig sit arbejde. Han havde ansvaret for at s\u00f8rge for, at ingen brugte undervisningscomputeren til noget upassende.<\/p>\n<p>Og selv i dag fort\u00e6ller min intuition mig, at administratorens bonus direkte afh\u00e6nger af antallet af studerende, han fanger og smider ud af computerhallen. Jeg er n\u00e6sten sikker p\u00e5, at denne fyr forh\u00e5ndsbetalte sit realkreditl\u00e5n.<\/p>\n<p>Han sad i det fjerne hj\u00f8rne af computerlaben ved et hj\u00f8rnebord. Og man kunne med sikkerhed antage, at hans frugtbare sk\u00e6rme havde fundet en m\u00e5de at reproducere sig p\u00e5 med en imponerende kort graviditetsperiode \u2014 der var s\u00e5 mange af dem. Det var kun tilbage at g\u00e6tte p\u00e5, om han virkelig kunne f\u00f8lge med dem alle. Selvf\u00f8lgelig, jeg sp\u00f8ger... n\u00e6vnte jeg ikke, at han tog sit arbejde meget alvorligt?<\/p>\n<p>P\u00e5 det tidspunkt k\u00f8rte computerens netv\u00e6rk under Windows 2000. Snart opdagede jeg, at der blev k\u00f8rt et script ved hver indlogning, som startede VNC-serveren med administratorkontoen til fjernadgang til skrivebordet. Hver gang denne fyr ville holde \u00f8je med dig, tilsluttede han sig direkte til din maskine og observerede. Det var creepy, og hvis man t\u00e6nker over det nu, var det nok ulovligt.<\/p>\n<p>Efter at have sk\u00e6rpet mine f\u00e6rdigheder p\u00e5 Basic og C64, skrev jeg nu i C og endda lidt i C++. P\u00e5 det tidspunkt var jeg ogs\u00e5 meget begejstret for D-sproget, som rettede nogle af C++\u2019s mangler, som jeg s\u00e5 dem dengang.<\/p>\n<p>Jeg bes\u00f8gte normalt computerlabben for at l\u00e6se noget nyt om D eller lege med Digital Mars D-kompilatoren. Nogle gange, n\u00e5r jeg blev distraheret fra tankerne om D's store fremtid, skrev jeg kode i C for at hacke andre Win32-programmer via deres vinduesbeskrivelser.<\/p>\n<p>I de gode gamle dage med programmering i Win32 var det at finde vinduesbeskrivelsen den nemmeste metode til at hacke andre programmer. Ganske vist havde alle programmer med grafisk brugerflade i Windows et vindue, selvom det ikke blev vist p\u00e5 sk\u00e6rmen. Ved at skrive et program til at udtr\u00e6kke beskrivelsen af en anden proces (i bund og grund en reference til den) kunne du sende den beskeder. Det gjorde det muligt at udf\u00f8re nogle grundl\u00e6ggende operationer, som at skjule\/udvise et programvindue, samt virkelig seje ting, som at f\u00e5 processen til at indl\u00e6se en vilk\u00e5rlig DLL i dens hukommelsesrum og begynde at k\u00f8re kode. Efter DLL-injektionen begyndte det virkelig sp\u00e6ndende.<\/p>\n<p>I de f\u00f8rste halvanden m\u00e5ned voldte denne detektiv mig ikke s\u00e6rligt mange problemer, han tilsluttede sig VNC-serveren p\u00e5 min maskine kun en eller to gange. Men en bestemt session v\u00e6kkede sandsynligvis hans interesse. Jeg skrev noget kode i C for at skjule vinduerne i Minesweeper (uden at lukke dem), s\u00e5 det ville v\u00e6re lettere at spille i klassen, og pludselig bem\u00e6rkede jeg, at det hvide VNC-ikon i systembakken var blevet sort. Det bet\u00f8d, at han nu overv\u00e5gede mig.<\/p>\n<p>Jeg fortsatte med at kode som s\u00e6dvanligt og pr\u00f8vede at ignorere ham. Imens begyndte maskinen at hakke helt vildt, mens den fors\u00f8gte at sende den maksimale billedfrekvens til en af de utallige sk\u00e6rme i hj\u00f8rnet af rummet. Windows reagerede n\u00e6sten ikke, og da min t\u00e5lmodighed brast, loggede jeg ud og afsluttede for dagen.<\/p>\n<p>Under de f\u00f8lgende bes\u00f8g i computerlabben viste Columbo n\u00e6sten hver gang levende interesse for, hvad jeg lavede. Omkring fjerde gang besluttede jeg, at der m\u00e5tte g\u00f8res noget ved det.<\/p>\n<p>Jeg forestiller mig, at en fornuftig og rationel person kunne have rejst dette sp\u00f8rgsm\u00e5l direkte med ham eller hans chef. Men jeg gav altid efter for fristelsen og hurtigt overbeviste mig selv om at v\u00e6lge en helt anden strategi.<\/p>\n<p>\"Du kan ikke g\u00f8re noget uden denne VNC-server!\" sagde jeg koldt og beslutsomt til mig selv flere gange.<\/p>\n<p>Jeg var n\u00f8dt til at dr\u00e6be VNC.<\/p>\n<p>Jeg begyndte at g\u00e5 ind i computerlabben med store grupper af studerende og satte mig s\u00e5 langt v\u00e6k fra hj\u00f8rnet med sk\u00e6rmene som muligt. I noget tid fungerede det, og det gav mig lidt tid til at teste mine id\u00e9er.<\/p>\n<p>Mit f\u00f8rste fors\u00f8g, vil jeg mene, var rimeligt svagt. Jeg h\u00f8jreklikkede p\u00e5 VNC-ikonet i systembakken og s\u00e5 en menu med de magiske bogstaver E-X-I-T. Desv\u00e6rre var bogstaverne skrevet i gr\u00e5 konturstil. Administratoren havde deaktiveret \"Log ud\"-menuen gennem gruppepolitikseditoren. Jeg fors\u00f8gte at dr\u00e6be processen fra Jobliste, men selvf\u00f8lgelig var den usynlig for mig, da den k\u00f8rte under en anden, mere privilegeret konto. Intet fungerede.<\/p>\n<p>VNC-serveren k\u00f8rer p\u00e5 TCP-port 5900, mindedes jeg. Min n\u00e6ste plan var at sende korrupte pakker til denne port for at f\u00e5 den til at h\u00e6nge.<\/p>\n<p>I spent at least a few days analyzing the protocol, sending various forms of well-structured data to port 5900 and hoping it would crash. In the end, that didn't work either.<\/p>\n<p>I had already started to think that I wouldn't be able to get rid of this thing when it suddenly struck me: there must be a window! I need to display it. Maybe there will be a nice juicy 'Turn Off' button in there that I can put to good use!<\/p>\n<p>I launched my nearly perfect C code to find the handle of the main window of another process \u2014 and I actually found VNC. I felt elated when my fingers typed <code>WM_SHOWWINDOW<\/code>. Can you guess what I saw in front of me?<\/p>\n<p>Nothing!<\/p>\n<p>Now I was curious\u2026 it had a window, but it ignored my messages. I double-checked my code to ensure it was working. I tested it on several other processes, and it worked great. I tried sending other messages to the VNC window, and still nothing.<\/p>\n<p>And then it struck me again!<\/p>\n<p>Thanks to the very thick <noindex><a rel=\"nofollow\" href=\"https:\/\/www.amazon.co.uk\/Programming-Windows%C2%AE-Microsoft-Charles-Petzold\/dp\/157231995X\">the book<\/a><\/noindex> Charles Petzold, I studied how Win32 processes work within the system. Every Win32 application has a window, as well as a 'message queue'. Messages triggered by user interactions, as well as messages sent by Windows itself, go into the queue, and the application decides how to handle them.<\/p>\n<p>Not too interesting in itself. But when I realized that a sufficiently large unprocessed message queue serves as a heuristic for intervening in a hung process from the Window Process Manager, I was drenched in pure serotonin.<\/p>\n<p>Without wasting a second, I returned to my C code, ready to send another message to the main VNC window <code>WM_SHOWWINDOW<\/code>. In a loop. Forever. So, many messages <code>WM_SHOWWINDOW<\/code>, which I now knew would be completely ignored by VNC\u2026 at its own risk.<\/p>\n<p>I compiled and ran 4 KB of the most freedom-loving code of my life. About three seconds later, Windows reported that the process <code>vncserver.exe<\/code> was not responding, and made a suggestion I simply couldn't refuse:<\/p>\n<blockquote><p><i><b>Do you want to end this process?<\/b><\/i><\/p><\/blockquote>\n<p>\nHell yes, I do!<\/p>\n<p>Let me confess, I was insufferably pleased with myself for the rest of the day.<\/p>\n<p>Efter flere timers bearbejdning af min nye superkraft besluttede jeg, hvordan jeg ville bruge den. Bare at dr\u00e6be sessionen lige foran ham var for let. Jeg havde en bedre id\u00e9 \u2013 at forsvinde helt.<\/p>\n<p>Efter <noindex><a rel=\"nofollow\" href=\"https:\/\/martinrue.com\/zzuy-a-lesson-in-perseverance\">kampe med socket-programmering<\/a><\/noindex> Jeg inds\u00e5, at jeg kunne skrive kode, der ville g\u00f8re to ting. F\u00f8rst ville den tage en nyligt frigivet TCP-port 5900, der tidligere var optaget af en uvidende VNC-serverproces. Derefter ville den oprette en ny TCP-forbindelse til VNC-serveren p\u00e5 den givne maskine. Koden ville blot proxy alle data mellem de to sockets, og Columbo ville tro, at han forbindelse til mig, mens han i virkeligheden ville forbinde til en helt anden VNC-server.<\/p>\n<p>Min kode ville fungere som en hemmelig bro mellem mig og en anden stakkels sj\u00e6l, jeg valgte. Det var vidunderligt.<\/p>\n<p>Jeg begyndte straks at skrive min falske VNC-bro. Columbo tilsluttede sig mig flere gange, men jeg fortsatte med at programmere foran ham. Jeg kom til den konklusion, at han overhovedet ikke havde nogen anelse om mine handlinger, selvom jeg skrev \u00e5benlyse ting som portnumre og kommentarer som <code>\/\/ \u041f\u0440\u043e\u0449\u0430\u0439, \u0436\u0443\u0442\u043a\u0438\u0439 \u0448\u043f\u0438\u043e\u043d VNC<\/code>.<\/p>\n<p>Efter et par dage kunne jeg p\u00e5 ingen m\u00e5de f\u00e5 koden til at fungere korrekt. Hvad v\u00e6rre var, jeg arbejdede n\u00e6sten uafbrudt med det sorte VNC-ikon i systembakken. S\u00e5 l\u00e6nge det var tilsluttet, kunne jeg ikke frigive porten for at teste min kode.<\/p>\n<p>Hvis jeg dengang havde kendt om <code>netcat<\/code>!<\/p>\n<p>Til sidst fik mine nerver ikke, jeg var trods alt en ut\u00e5lmodig 17-\u00e5rig dreng. Mens jeg igen s\u00e5, hvordan det hvide VNC-serverikon blev sort, blev jeg frustreret, \u00e5bnede den oprindelige kode, der fyldte meddelelsesqueue, og k\u00f8rte den foran ham. Jeg ventede endda et par sekunder, f\u00f8r jeg trykkede <code>End Process<\/code>, bare for at sikre mig, at han s\u00e5 det.<\/p>\n<p>Hvis trykningen p\u00e5 denne knap ikke allerede havde f\u00e5et mig til at f\u00f8le, at det var det v\u00e6rd, s\u00e5 var hans spring fra sin kraftige monitor for hurtigt at komme hen til mig og smide mig ud af rummet, bestemt det v\u00e6rd.<\/p>\n<p>Til slut blev jeg n\u00e6gtet adgang til nettet i to uger. Et retf\u00e6rdigt straf, t\u00e6nkte jeg. Cirka tre uger senere forsvandt VNC-serveren fra opstartsskripterne og dukkede aldrig op igen. Jeg fandt aldrig ud af, om min h\u00e6ndelse spillede nogen rolle i dette eller ej, men den \u00f8delagde fuldst\u00e6ndigt min plan om eventyrlig berigelse ved at s\u00e6lge min VNC-pistol til undertrykte studerende i computerlab i hele landet.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/itsumma\/blog\/485756\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u044d\u0442\u043e\u043c \u0431\u043b\u043e\u0433\u0435 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043e \u043d\u0435\u043c\u0430\u043b\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0441\u043a\u0438\u0445 \u0431\u0430\u0435\u043a. \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u0442\u044c \u043e \u0441\u0432\u043e\u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0433\u043b\u0443\u043f\u043e\u0441\u0442\u044f\u0445. \u0427\u0442\u043e \u0436, \u0432\u043e\u0442 \u0435\u0449\u0451 \u043e\u0434\u043d\u0430 \u0442\u0430\u043a\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f. \u042f \u0432\u043f\u0435\u0440\u0432\u044b\u0435 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043b\u0441\u044f \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c, \u043a\u043e\u0433\u0434\u0430 \u043c\u043d\u0435 \u0431\u044b\u043b\u043e \u043e\u043a\u043e\u043b\u043e 11 \u043b\u0435\u0442. \u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0440\u0435\u0434\u043d\u0435\u0439 \u0448\u043a\u043e\u043b\u044b \u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u044f \u0432\u043e\u0437\u0438\u043b\u0441\u044f \u0441\u043e \u0441\u0432\u043e\u0438\u043c C64 \u0438 \u043f\u0438\u0441\u0430\u043b \u043d\u0430 \u0411\u0435\u0439\u0441\u0438\u043a\u0435, \u0430 \u043f\u043e\u0442\u043e\u043c \u0432\u044b\u0440\u0435\u0437\u0430\u043b \u043d\u043e\u0436\u043d\u0438\u0446\u0430\u043c\u0438 \u043f\u043b\u043e\u0445\u043e\u0439 [&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-40151","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u044d\u0442\u043e\u043c \u0431\u043b\u043e\u0433\u0435 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043e \u043d\u0435\u043c\u0430\u043b\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0441\u043a\u0438\u0445 \u0431\u0430\u0435\u043a. \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u0442\u044c \u043e \u0441\u0432\u043e\u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0433\u043b\u0443\u043f\u043e\u0441\u0442\u044f\u0445.\" \/>\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\/da\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\u0411\u0438\u0442\u0432\u0430 \u043a\u043e\u0434\u0435\u0440\u043e\u0432: \u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0442\u043e\u0433\u043e \u043f\u0430\u0440\u043d\u044f \u0441 VNC | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u044d\u0442\u043e\u043c \u0431\u043b\u043e\u0433\u0435 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043e \u043d\u0435\u043c\u0430\u043b\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0441\u043a\u0438\u0445 \u0431\u0430\u0435\u043a. \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u0442\u044c \u043e \u0441\u0432\u043e\u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0433\u043b\u0443\u043f\u043e\u0441\u0442\u044f\u0445.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc\" \/>\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=\"2020-01-31T17:49:28+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-01-31T17:49:28+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\udd47Koderens kamp: Jeg mod den fyr med VNC | ProHoster","description":"Denne blog indeholder mange programmeringsanekdoter. Jeg kan godt lide at mindes mine gamle dumheder.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\u0411\u0438\u0442\u0432\u0430 \u043a\u043e\u0434\u0435\u0440\u043e\u0432: \u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0442\u043e\u0433\u043e \u043f\u0430\u0440\u043d\u044f \u0441 VNC | ProHoster","og:description":"\u0412 \u044d\u0442\u043e\u043c \u0431\u043b\u043e\u0433\u0435 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043e \u043d\u0435\u043c\u0430\u043b\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0441\u043a\u0438\u0445 \u0431\u0430\u0435\u043a. \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u0442\u044c \u043e \u0441\u0432\u043e\u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0433\u043b\u0443\u043f\u043e\u0441\u0442\u044f\u0445.","og:url":"https:\/\/prohoster.info\/da\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc","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":"2020-01-31T17:49:28+00:00","article:modified_time":"2020-01-31T17:49:28+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"40151","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-03-01 00:44:38","updated":"2022-09-29 08:39:09","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/40151","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=40151"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/40151\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=40151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=40151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=40151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}