{"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\/it\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc","title":{"rendered":"La battaglia dei programmatori: io contro quel ragazzo con VNC","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>In <noindex><a rel=\"nofollow\" href=\"https:\/\/martinrue.com\/\">questo blog<\/a><\/noindex> Sono state pubblicate molte storie di programmatori. Mi piace ricordare le mie vecchie sciocchezze. Bene, ecco un'altra storia del genere.<\/p>\n<p>Mi sono interessato ai computer, e in particolare alla programmazione, quando avevo circa 11 anni. All'inizio della scuola media,<b>un<\/b>passavo la maggior parte del mio tempo libero con il mio C64, scrivendo in Basic e poi tagliando con le forbici il codice sbagliato. <noindex><a rel=\"nofollow\" href=\"https:\/\/martinrue.com\/give-yourself-more-playtime\/\">Non sto scherzando, con le forbici.<\/a><\/noindex>.<\/p>\n<p>Dopo la scuola (a circa 16 anni) i ragazzi britannici di solito vanno al college, dove scelgono tre o quattro materie da studiare prima di entrare all'universit\u00e0. Considerando il mio amore per la scatola beige e il registratore a casa, ho deciso che studiare 'informatica' al college fosse la scelta giusta.<\/p>\n<p>Il corso mi \u00e8 piaciuto pi\u00f9 di quanto mi aspettassi; l\u00ec ho incontrato per la prima volta Pascal e Delphi.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nTra una lezione e l'altra, gli studenti potevano lavorare su qualsiasi computer disponibile nella sala informatica. Immaginate: una grande stanza, progettata per circa cento persone, con file di tavoli pieni di computer, simili a quelli dove il monitor \u00e8 sopra il case. Il continuo ronzio delle ventole, le pallette dei mouse che scorrono sui tavoli senza sosta. Nell'aria c'\u00e8 un odore strano, come se 50-100 adolescenti in fase ormonale si alternassero periodicamente per raffreddare centinaia di chip Pentium III.<\/p>\n<p>Nonostante i rischi per la salute, mi piaceva stare al computer quando si presentava un minuto libero.<\/p>\n<p>Nella stanza c'era un amministratore, un uomo di mezza et\u00e0 di bassa statura, scelto per questo ruolo a causa del suo incessante desiderio di diventare un dittatore temuto. Diciamo che 'sorvegliare' \u00e8 un pallido eufemismo; il ragazzo amava davvero il suo lavoro. Era incaricato di mantenere l'ordine, affinch\u00e9 nessuno usasse il computer didattico per scopi inappropriati.<\/p>\n<p>E ancora oggi l'intuizione mi suggerisce che il premio dell'amministratore dipendesse direttamente dal numero di studenti che riusciva a sorprendere e a cacciare dal laboratorio informatico. Sono quasi certo che quel ragazzo ha estinto il suo mutuo in anticipo.<\/p>\n<p>Era seduto nell'angolo del laboratorio informatico a un tavolo ad angolo. Si poteva affermare con certezza che i suoi fertili monitor avessero trovato un modo per riprodursi con un periodo di gestazione sorprendentemente breve \u2014 ce n'erano cos\u00ec tanti. Rimaneva solo da chiedersi se riuscisse davvero a tenerne d'occhio tutti. Certo, sto scherzando\u2026 ho mai menzionato che si prendeva molto sul serio il lavoro?<\/p>\n<p>All'epoca la rete informatica funzionava con Windows 2000. Presto scoprii che ad ogni accesso si avviava uno script, che avviava il server VNC con l'account amministrativo per l'accesso remoto al desktop. Ogni volta che quel ragazzo voleva tenere d'occhio qualcuno, si collegava direttamente al tuo computer e osservava. Era inquietante e, se ci penso ora, probabilmente anche illegale.<\/p>\n<p>Affilato i miei denti su Basic e C64, ora scrivevo in C e persino un po' in C++. All'epoca mi ero molto appassionato al linguaggio D, che correggeva alcuni difetti di C++, come pensavo allora.<\/p>\n<p>Di solito andavo nella sala computer per leggere qualcosa di nuovo su D o per giocare con il compilatore Digital Mars D. A volte, distraendomi dai pensieri sul grande futuro di D, scrivevo codice in C per hackerare altri programmi Win32 attraverso i descrittori delle loro finestre.<\/p>\n<p>Nei bei tempi andati della programmazione su Win32, la ricerca del descrittore della finestra era il metodo pi\u00f9 semplice per hackerare altri programmi. \u00c8 ovvio che tutti i programmi con interfaccia grafica in Windows avessero una finestra, anche se non era visualizzata sullo schermo. Scrivendo un programma per estrarre il descrittore di un altro processo (essenzialmente, un riferimento ad esso), potevi inviargli messaggi. Questo permetteva di eseguire alcune operazioni di base, come nascondere\/mostrare la finestra del programma, e anche cose davvero interessanti, come costringere il processo a caricare una DLL arbitraria nel suo spazio di memoria e iniziare l'esecuzione del codice. Dopo l'iniezione della DLL iniziava la parte pi\u00f9 divertente.<\/p>\n<p>Nei primi mesi e mezzo, questo detective non mi ha particolarmente infastidito, si \u00e8 collegato al server VNC sulla mia macchina solo una o due volte. Ma una particolare sessione ha probabilmente risvegliato il suo interesse. Stavo scrivendo un codice in C per nascondere le finestre di Minesweeper (senza chiuderle), per facilitare il gioco in classe, e ho notato che l'icona bianca di VNC nella barra di sistema era diventata nera. Ci\u00f2 significava che ora mi stava osservando.<\/p>\n<p>Ho continuato a programmare come al solito, cercando di ignorarlo. Nel frattempo, il computer ha cominciato a rallentare notevolmente, cercando di trasmettere il massimo numero di fotogrammi a uno dei numerosi monitor nell'angolo della stanza. Windows ha quasi smesso di rispondere, e quando la mia pazienza \u00e8 finita, ho disconnesso e ho chiuso per oggi.<\/p>\n<p>Durante le visite successive al laboratorio di computer, Colombo ha mostrato quasi sempre un vivo interesse per quello che stavo facendo. Dopo circa la quarta volta, ho deciso che bisognava fare qualcosa.<\/p>\n<p>Ammetto che una persona ragionevole e razionale avrebbe potuto sollevare direttamente questo problema con lui o il suo supervisore. Tuttavia, sono sempre stato tentato e mi sono rapidamente convinto a scegliere una strategia completamente diversa.<\/p>\n<p>\u2014 Non puoi fare nulla senza questo server VNC! \u2014 mi sono detto tranquillamente e con determinazione pi\u00f9 di una volta.<\/p>\n<p>Era necessario eliminare VNC.<\/p>\n<p>Iniziai a entrare nel laboratorio di computer con grandi gruppi di studenti e a sedermi il pi\u00f9 lontano possibile dall'angolo con i monitor. Questo funzion\u00f2 per un po' e mi diede qualche attimo per verificare le idee.<\/p>\n<p>La mia prima prova, credo che sarete d'accordo, era piuttosto debole. Facendo clic destro sull'icona VNC nella barra delle applicazioni, vidi un menu con le magiche lettere E-X-I-T. Sfortunatamente, le lettere erano scritte in testo contornato grigio. L'amministratore aveva disattivato la voce di menu \u201cUscita\u201d tramite l'editor dei criteri di gruppo. Ho cercato di terminare il processo dal Task Manager, ma, ovviamente, era invisibile per me poich\u00e9 funzionava con un'altra, pi\u00f9 privilegiata, acccount. Non ottenni nulla.<\/p>\n<p>Il server VNC gira sulla porta TCP 5900, ho ricordato. Il mio piano successivo era inviare pacchetti danneggiati su quella porta per cercare di bloccarlo.<\/p>\n<p>Per diversi giorni ho esaminato il protocollo, inviando sulla porta 5900 varie forme di 'spazzatura' strutturata correttamente, sperando che si rompesse. Alla fine, anche questo non ha funzionato.<\/p>\n<p>Avevo gi\u00e0 cominciato a pensare che non sarei riuscito a liberarmi di quella cosa, quando improvvisamente mi \u00e8 venuta un'idea: deve esserci una finestra! Devo mostrarla. Magari c'\u00e8 un bel pulsante 'Spegni' che potrei utilizzare!<\/p>\n<p>Ho avviato il mio codice C quasi perfetto per cercare il descrittore della finestra principale di un altro processo e ho effettivamente trovato VNC. Mi sentivo esaltato quando le mie dita hanno digitato <code>WM_SHOWWINDOW<\/code>. Provate a indovinare cosa ho visto davanti a me?<\/p>\n<p>Nulla!<\/p>\n<p>Ora ero curioso... aveva una finestra, ma ignorava i miei messaggi. Ho controllato due volte il mio codice per assicurarmi che funzionasse. L'ho testato su altri processi e ha funzionato alla perfezione. Ho provato a inviare altri messaggi alla finestra VNC e comunque non \u00e8 successo nulla.<\/p>\n<p>E qui mi \u00e8 venuta in mente un'altra idea!<\/p>\n<p>Grazie a un testo molto spesso <noindex><a rel=\"nofollow\" href=\"https:\/\/www.amazon.co.uk\/Programming-Windows%C2%AE-Microsoft-Charles-Petzold\/dp\/157231995X\">libro<\/a><\/noindex> di Charles Petzold, ho studiato attentamente come funzionano i processi Win32 all'interno del sistema. Ogni applicazione Win32 ha una finestra e una 'coda dei messaggi'. I messaggi, generati dall'interazione dell'utente e quelli inviati dallo stesso Windows, arrivano nella coda e l'applicazione decide come gestirli.<\/p>\n<p>Non \u00e8 particolarmente interessante di per s\u00e9. Ma quando ho capito che una coda dei messaggi sufficientemente grande fungeva da euristica per l'intervento in un processo bloccato da parte del Gestore dei Processi Windows, ho provato una scarica di pura serotonina.<\/p>\n<p>Senza perdere tempo, sono tornato al mio codice C, pronto a inviare un altro messaggio alla finestra principale del VNC <code>WM_SHOWWINDOW<\/code>. In un ciclo. Eterno. Quindi, molti messaggi <code>WM_SHOWWINDOW<\/code>, che, come sapevo ora, il VNC avrebbe cercato di ignorare completamente\u2026 a proprio rischio.<\/p>\n<p>Ho compilato e avviato 4 KB del codice pi\u00f9 libertario della mia vita. Dopo circa tre secondi, Windows ha segnalato che il processo <code>vncserver.exe<\/code> non rispondeva e ha fatto un'offerta a cui semplicemente non potevo rinunciare:<\/p>\n<blockquote><p><i><b>Vuoi terminare questo processo?<\/b><\/i><\/p><\/blockquote>\n<p>\nCavolo, S\u00cc!<\/p>\n<p>Devo ammettere che per il resto della giornata mi sono sentito insopportabilmente soddisfatto di me stesso.<\/p>\n<p>Dopo diverse ore spese a metabolizzare il mio nuovo superpotere, ho deciso come avrei voluto usarlo. Semplicemente uccidere la sessione proprio davanti a lui sarebbe stato troppo semplice. Avevo un'idea migliore: scomparire del tutto.<\/p>\n<p>Dopo <noindex><a rel=\"nofollow\" href=\"https:\/\/martinrue.com\/zzuy-a-lesson-in-perseverance\">battesimo di combattimento con la programmazione dei socket<\/a><\/noindex> Ho capito che potevo scrivere un codice che avrebbe fatto due cose. Prima di tutto, avrebbe occupato una porta TCP 5900 di recente liberata, precedentemente occupata da un ignorante processo del server VNC. Poi avrebbe creato una nuova connessione TCP con il server VNC della macchina specificata. Il codice sarebbe semplicemente servito da proxy per tutti i dati tra i due socket, e Colombo penserebbe di connettersi a me, mentre in realt\u00e0 si connetterebbe a un server VNC completamente diverso.<\/p>\n<p>Il mio codice funger\u00e0 da ponte segreto tra me e qualche altra povera anima a mia scelta. Era fantastico.<\/p>\n<p>Ho iniziato subito a scrivere il mio falso bridge VNC. Colombo si \u00e8 connesso a me diverse volte, ma io continuavo a programmare sotto i suoi occhi. Sono giunto alla conclusione che non ha la minima idea di ci\u00f2 che stavo facendo, anche se scrivevo cose evidenti, come i numeri delle porte e commenti del tipo <code>\/\/ \u041f\u0440\u043e\u0449\u0430\u0439, \u0436\u0443\u0442\u043a\u0438\u0439 \u0448\u043f\u0438\u043e\u043d VNC<\/code>.<\/p>\n<p>Dopo un paio di giorni, non riuscivo a far funzionare correttamente il codice. Peggio ancora, lavoravo praticamente senza sosta con l'icona nera di VNC nella barra delle applicazioni. Finch\u00e9 era connesso, non potevo liberare la porta per testare il mio codice.<\/p>\n<p>Se solo allora avessi saputo di <code>netcat<\/code>!<\/p>\n<p>Alla fine, i nervi non hanno retto, del resto ero un ragazzo di 17 anni impaziente. Osservando nuovamente l'icona bianca del server VNC diventare nera, ho perso la pazienza, ho aperto il codice originale che riempiva la coda dei messaggi e l'ho eseguito sotto i suoi occhi. Ho persino aspettato un paio di secondi prima di premere <code>End Process<\/code>, solo per essere sicuro che lo vedesse.<\/p>\n<p>Se premere quel pulsante non mi avesse gi\u00e0 convinto che ne valeva la pena, il suo salto dalla robustezza dei monitor per avvicinarsi rapidamente a me ed espelleremi dalla stanza \u00e8 sicuramente valso la pena.<\/p>\n<p>Alla fine mi \u00e8 stato vietato l'accesso alla rete per due settimane. Una punizione giusta, ho pensato. Circa tre settimane dopo, il server VNC \u00e8 scomparso dagli script di avvio e non \u00e8 pi\u00f9 riapparso. Non ho mai saputo se il mio incidente ha avuto un ruolo in questo, ma ha completamente distrutto il mio piano di arricchirmi vendendo la mia arma VNC agli studenti oppressi nelle sale informatiche dei college in tutto il paese.<br \/>\n<br \/>Fonte: <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.0.1 - 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\/it\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\/it\/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\udd47Battaglia dei programmatori: io contro quel tipo di VNC | ProHoster","description":"In questo blog sono pubblicate molte storie di programmatori. Mi piace ricordare le mie vecchie sciocchezze.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/bitva-koderov-ya-protiv-togo-parnya-s-vnc","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\/it\/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\/it\/wp-json\/wp\/v2\/posts\/40151","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=40151"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/40151\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=40151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=40151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=40151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}