рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ Node.js рдкрд░ рд╣рдорд▓рд╛

рд╣реЗрд▓реНрдорд╣реЛрд▓реНрдЯреНрдЬрд╝ рд╕реЗрдВрдЯрд░ рдлрд╝реЙрд░ рдЗрдВрдлрд╝реЙрд░реНрдореЗрд╢рди рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА (CISPA) рдФрд░ рд░реЙрдпрд▓ рдЗрдВрд╕реНрдЯреАрдЯреНрдпреВрдЯ рдСрдлрд╝ рдЯреЗрдХреНрдиреЛрд▓реЙрдЬреА (рд╕реНрд╡реАрдбрди) рдХреЗ рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдиреЗ Node.js рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдФрд░ рдЙрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд▓реЛрдХрдкреНрд░рд┐рдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдкрд░ рд╣рдорд▓реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдкреНрд░рджреВрд╖рдг рддрдХрдиреАрдХ рдХреА рдкреНрд░рдпреЛрдЬреНрдпрддрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рд╣реБрдЖред

рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдкреНрд░рджреВрд╖рдг рд╡рд┐рдзрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднрд╛рд╖рд╛ рдХреА рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рдирдП рдЧреБрдг рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХреЛрдб рдмреНрд▓реЙрдХ (рдЧреИрдЬреЗрдЯреНрд╕) рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╕рдВрдЪрд╛рд▓рди рдХрд┐рд╕реА рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рд╕рдВрдкрддреНрддрд┐ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрддрд╛ рд╣реИ; рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдореЗрдВ 'const cmd = option.cmd ||' рдЬреИрд╕рд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИред "/bin/sh"', рдЬрд┐рд╕рдХрд╛ рддрд░реНрдХ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдпрджрд┐ рд╣рдорд▓рд╛рд╡рд░ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ "cmd" рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИред

рдПрдХ рд╕рдлрд▓ рд╣рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рдПрдХ рдирдИ рдкреНрд░реЙрдкрд░реНрдЯреА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗ, рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рдПрдХ рдЧреИрдЬреЗрдЯ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдкреНрд░реЙрдкрд░реНрдЯреА рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЛ рдмрджрд▓рдирд╛ Node.js рдореЗрдВ "__proto__" рдФрд░ "рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░" рд╕реЗрд╡рд╛ рдЧреБрдгреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдХреЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред "__proto__" рдкреНрд░реЙрдкрд░реНрдЯреА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд░реНрдЧ рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд▓реМрдЯрд╛рддреА рд╣реИ, рдФрд░ "рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░" рдкреНрд░реЙрдкрд░реНрдЯреА рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓реМрдЯрд╛рддреА рд╣реИред

рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдореЗрдВ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ "obj[a][b] = рд╡реИрд▓реНрдпреВ" рд╢рд╛рдорд┐рд▓ рд╣реИ рдФрд░ рдорд╛рди рдмрд╛рд╣рд░реА рдбреЗрдЯрд╛ рд╕реЗ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рддреЛ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ "a" рдХреЛ "__proto__" рдорд╛рди рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреА рд╕рдВрдкрддреНрддрд┐ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рдирд╛рдо "рдмреА" рдФрд░ рдорд╛рди "рд╡реИрд▓реНрдпреВ" рдХреЗ рд╕рд╛рде (obj.__proto__.b = рд╡реИрд▓реНрдпреВ;), рдФрд░ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рд╕реЗрдЯ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рд╕рднреА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧреАред рдЗрд╕реА рдкреНрд░рдХрд╛рд░, рдпрджрд┐ рдХреЛрдб рдореЗрдВ "obj[a][b][c] = value" рдЬреИрд╕реЗ рднрд╛рд╡ рд╣реИрдВ, рддреЛ рд╕рднреА рдореМрдЬреВрджрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ "a" рдХреЛ "рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░" рдорд╛рди рдФрд░ "b" рдХреЛ "рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк" рдкрд░ рд╕реЗрдЯ рдХрд░рдХреЗ, рдЖрдк рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ "c" рдирд╛рдо рдФрд░ рдорд╛рди "value" рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВред

рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдмрджрд▓рдиреЗ рдХрд╛ рдЙрджрд╛рд╣рд░рдг: const o1 = {}; рд╕реНрдерд┐рд░рд╛рдВрдХ o2 = рдирдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ(); o1.__proto__.x = 42; // рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ (o2.x) рдореЗрдВ рдкреНрд░реЙрдкрд░реНрдЯреА "x" рдмрдирд╛рдПрдВ; // рдХрд┐рд╕реА рдЕрдиреНрдп рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдкреНрд░реЙрдкрд░реНрдЯреА "x" рддрдХ рдкрд╣реБрдВрдЪреЗрдВ // рдЖрдЙрдЯрдкреБрдЯ 42 рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдУ 1 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рдУ 2 рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдХрд╛ рдЙрджрд╛рд╣рд░рдг: рдлрд╝рдВрдХреНрд╢рди рдПрдВрдЯреНрд░реАрдкреНрд╡рд╛рдЗрдВрдЯ (arg1, arg2, arg3){ const obj = {}; рд╕реНрдерд┐рд░рд╛рдВрдХ рдкреА = obj[arg1]; рдкреА[arg2] = arg3; рд╡рд╛рдкрд╕реА рдкреА; }

рдпрджрд┐ рдПрдВрдЯреНрд░реАрдкреЙрдЗрдВрдЯ рдлрд╝рдВрдХреНрд╢рди рддрд░реНрдХ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рд╕реЗ рдмрдирддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ "__proto__" рдорд╛рди рдХреЛ arg1 рдореЗрдВ рдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рдХрд┐рд╕реА рднреА рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░реЙрдкрд░реНрдЯреА рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк arg2 рдХреЛ "toString" рдорд╛рди рдФрд░ arg3 рдХреЛ рдорд╛рди 1 рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк "toString" рдкреНрд░реЙрдкрд░реНрдЯреА (Object.prototype.toString=1) рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ toString() рдкрд░ рдХреЙрд▓ рдХреЗ рджреМрд░рд╛рди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХреНрд░реИрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рд╣рдорд▓рд╛рд╡рд░ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВ рдЙрдирдореЗрдВ "рдореБрдЦреНрдп", "рд╢реЗрд▓", "рдирд┐рд░реНрдпрд╛рдд", "рд╕рдВрджрд░реНрдн рдПрдХреНрд╕рдЯреЗрдВрд╢рди" рдФрд░ "рдПрдирд╡реА" рдЧреБрдгреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╢рд╛рдорд┐рд▓ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рдПрдХ "рдореБрдЦреНрдп" рдкреНрд░реЙрдкрд░реНрдЯреА рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрд╕рдореЗрдВ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрде рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ (Object.prototype.main = "./../../pwned.js") рдФрд░ рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдирд┐рд░реНрдорд╛рдг рдЖрд╡рд╢реНрдпрдХрддрд╛ ("рдорд╛рдп-рдкреИрдХреЗрдЬ") рдХреЗ рдХреЛрдб рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рдордп рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдпрджрд┐ рд╢рд╛рдорд┐рд▓ рдкреИрдХреЗрдЬ рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди рдореЗрдВ "рдореБрдЦреНрдп" рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдпрджрд┐ рд╕рдВрдкрддреНрддрд┐ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕реЗ рд░реВрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛)ред "рд╢реЗрд▓", "рдирд┐рд░реНрдпрд╛рдд" рдФрд░ "рдПрдирд╡реА" рдЧреБрдгреЛрдВ рдХреЛ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рд░реВрдЯрдкреНрд░реЛрдЯреЛ = рдСрдмреНрдЬреЗрдХреНрдЯ.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк; RootProto["exports"] = {"ред":"ред/changelog.js"}; рд░реВрдЯрдкреНрд░реЛрдЯреЛ["1"] = "/рдкрде/рд╕реЗ/рдПрдирдкреАрдПрдо/рд╕реНрдХреНрд░рд┐рдкреНрдЯ/"; // рдЯреНрд░рд┐рдЧрд░ рдХреЙрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ("/target.js"); рдСрдмреНрдЬреЗрдХреНрдЯ.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк.рдореЗрди = "/path/to/npm/scripts/changelog.js"; рдСрдмреНрдЬреЗрдХреНрдЯ.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк.рд╢реЗрд▓ = "рдиреЛрдб"; рдСрдмреНрдЬреЗрдХреНрдЯ.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк.env = {}; object.prototype.env.NODE_OPTIONS = "тАФinspect-brk=0.0.0.0:1337"; // рдЯреНрд░рд┐рдЧрд░ рдХреЙрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ("рдмрд╛рдЗрдЯреНрд╕");

рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдиреЗ рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рд╡рд╛рд▓реЗ 10 рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рдкрд╛рдпрд╛ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ 1958 рдХреЗ рдкрд╛рд╕ package.json рдореЗрдВ рдореБрдЦреНрдп рд╕рдВрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ, 4420 рдЕрдкрдиреЗ рдЖрд╡рд╢реНрдпрдХ рдХрдердиреЛрдВ рдореЗрдВ рд╕рд╛рдкреЗрдХреНрд╖ рдкрдереЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ 355 рд╕реАрдзреЗ рдХрдорд╛рдВрдб рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдЙрджрд╛рд╣рд░рдг рдкрд╛рд░реНрд╕ рд╕рд░реНрд╡рд░ рдмреИрдХрдПрдВрдб рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реЛрд╖рдг рд╣реИ рдЬреЛ evalFunctions рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИред рдРрд╕реА рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдЯреВрд▓рдХрд┐рдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╕реНрдерд┐рд░ рдФрд░ рдЧрддрд┐рд╢реАрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред Node.js рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди, 11 рдЧреИрдЬреЗрдЯреНрд╕ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдЧрдИ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдорд▓реЛрдВ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╣рдорд▓рд╛рд╡рд░ рдХреЗ рдХреЛрдб рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдкрд╛рд░реНрд╕ рд╕рд░реНрд╡рд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдирдкреАрдПрдо рд╕реАрдПрд▓рдЖрдИ рдореЗрдВ рджреЛ рд╢реЛрд╖рдг рдпреЛрдЧреНрдп рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреА рднреА рдкрд╣рдЪрд╛рди рдХреА рдЧрдИ рдереАред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ