рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдбреЗрдирд┐рд╢ рд╕рд░рдХрд╛рд░ рдиреЗ рдбрд┐рдЬрд┐рдЯрд▓ рдкрд░реАрдХреНрд╖рд╛ рдореЙрдирд┐рдЯрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо
рдХреЛ рди рдХреЗрд╡рд▓
рдирд┐рд▓рдВрдмрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдерд╛, рдЬрд┐рд╕реЗ рд╣рдордиреЗ
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рджрд░рдХрд┐рдирд╛рд░ рдХрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рд╣рдордиреЗ рд╣реИрдХрд┐рдВрдЧ рд╡рд┐рдзрд┐ рдХреА рдЬрд╛рдирдХрд╛рд░реА рджреЗрдиреЗ рдХреЗ рдПрдХ рд╕рдкреНрддрд╛рд╣ рдмрд╛рдж рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХреЛ
рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ ред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ рдХрд┐ рдпрд╣ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реА рд╡рдЬрд╣ рд╕реЗ рдерд╛ рдХрд┐ рдбреЗрдирдорд╛рд░реНрдХ рд╕рд░рдХрд╛рд░ рдиреЗ рдирд┐рдЧрд░рд╛рдиреА рдкрд░реАрдХреНрд╖рд╛ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░рд╛ рдХрд╛рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЗрдЦрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдПрдХ рдФрд░ рд╕реНрдХреВрд▓реА рдмрдЪреНрдЪреЛрдВ рдХреЗ рдЯреНрд░реИрдХрд┐рдВрдЧ рдЯреВрд▓ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдгреЛрдВ рдХреА рд░реВрдкрд░реЗрдЦрд╛ рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗ: ExamCookieред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЙрдкрдпреБрдХреНрдд рдЕрдиреБрднрд╛рдЧ рддрдХ рд╕реНрдХреНрд░реЙрд▓ рдХрд░реЗрдВред
ExamCookie
рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЗрд╕ рдЯреВрд▓
рдиреЗ рдЬреАрдбреАрдкреАрдЖрд░ рдХреЗ рдЙрд▓реНрд▓рдВрдШрди рдХреА рдЬрд╛рдВрдЪ рдХреЗ рдХрд╛рд░рдг
рд╕рдорд╛рдЪрд╛рд░ рдХреЛ рдорд╛рд░рд╛ ред рд╣рдордиреЗ рдкрд░реАрдХреНрд╖рд╛ рдХреЗ рджреМрд░рд╛рди рдЙрдкрд░реЛрдХреНрдд рд╕реНрдХреВрд▓ рдЯреНрд░реИрдХрд┐рдВрдЧ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рджреВрд╕рд░реЗ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдкреНрд░рддрд┐рдпреЛрдЧреА:
рдПрдЧреНрдЬрд╝реАрдХреНрдпреВрд╕реА : рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдХрд╛
рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ ред рдпрд╣ рдПрдХ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдЯреНрд░реИрдХрд┐рдВрдЧ рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ 20 рд╕реЗ рдЕрдзрд┐рдХ рдбреЗрдирд┐рд╢ рд╕реНрдХреВрд▓реЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╡рд░рдг рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рд╛рдЗрдЯ рдкрд░ рдХреЛрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ рдирд╣реАрдВ рд╣реИ:
ExamCookie рдПрдХ рд╕рд░рд▓ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╣реИ рдЬреЛ рдкрд░реАрдХреНрд╖рд╛ рдХреЗ рджреМрд░рд╛рди рдЫрд╛рддреНрд░ рдХреА рдХрдВрдкреНрдпреВрдЯрд░ рдЧрддрд┐рд╡рд┐рдзрд┐ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХреЗ рдХрд┐ рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрд╛рд░реНрдпрдХреНрд░рдо рдЫрд╛рддреНрд░реЛрдВ рдХреЛ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрд╡реИрдз рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИред
рдПрдЧреНрдЬрд╛рдордХреЙрдХреА рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕рднреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЛ рдмрдЪрд╛рддрд╛ рд╣реИ: рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рдмрджрд▓рддреЗ рд╕рдордп рд╕рдХреНрд░рд┐рдп URL, рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрд╢рди, рдкреНрд░рдХреНрд░рд┐рдпрд╛, рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдФрд░ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрд╕ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рдкрд░реАрдХреНрд╖рд╛ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдХреЗ, рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдЖрдкрдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрддрд╛ рд╣реИред рдЬрдм рдкрд░реАрдХреНрд╖рд╛ рдкреВрд░реА рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕реЗ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЯреНрд░реИрдХрд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдпреВрдПрдирдЖрдИ рд▓реЙрдЧрд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рд╢реИрдХреНрд╖рдгрд┐рдХ рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рджрд░реНрдЬ рдХрд░рддрд╛ рд╣реИред рд╣рдордиреЗ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдореИрдиреБрдЕрд▓ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдЙрди рдЫрд╛рддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ UNI рд▓реЙрдЧрд┐рди рдирд╣реАрдВ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рд╕рдВрднрд╡ рдирд╣реАрдВ рдорд╛рдирддреЗ рд╣реИрдВред

рдмрд╛рдЗрдирд░реА рдЬрд╛рдирдХрд╛рд░реА
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдПрдЧреНрдЬрд╝рд┐рдХреНрдпреВрд╕реА рд╣реЛрдо рдкреЗрдЬ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ x86 .NET рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИред рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдмрд╛рдЗрдирд░реА MD5 рд╣реИрд╢
63AFD8A8EC26C1DC368D8FF8710E337D
24 рдЕрдкреНрд░реИрд▓, 2019 рдХреЛ EXAMCOOKIE APS
63AFD8A8EC26C1DC368D8FF8710E337D
рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐
рдЕрдВрддрд┐рдо рд▓реЗрдЦ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, .NET рдмрд╛рдЗрдирд░реА рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рд╢рд╛рдпрдж рд╣реА рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдЖрдИрдПрд▓ рдХреЛрдб рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рд╕рдВрдпреЛрдЬрди рд╕рд╣реА рд╕реНрд░реЛрдд рдХреЛрдб рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рдкрд┐рдЫрд▓реЗ рдирд┐рдЧрд░рд╛рдиреА рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЗрд╕ рдЙрдкрдХрд░рдг рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рди рдХреЗрд╡рд▓ рдЗрд╕реЗ рдбреАрдмрдЧ рд▓реЙрдЧ рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛, рдмрд▓реНрдХрд┐ рдЗрд╕реЗ рднреА рдмрд╛рдзрд┐рдд рдХрд░ рджрд┐рдпрд╛ред рдХрдо рд╕реЗ рдХрдо рдЙрдиреНрд╣реЛрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА :-)
рдЖрдХреНрд╖реЗрдк (рдЖрдВрд╕реБрдУрдВ рдХреЗ рд▓рд┐рдП рд╣рдБрд╕реА)
рдЬрдм рд╣рдордиреЗ dnSpy рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЦреЛрд▓рд╛, рддреЛ рд╣рдордиреЗ рдЬрд▓реНрджреА рд╕реЗ рдПрдХ рд▓рд╛рдкрддрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рджреЗрдЦрд╛:
рдЕрдЬреАрдм рдмрд╛рдд рд╣реИ, рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЖрд╡рд░рдг рдЖрдорддреМрд░ рдкрд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рд╕реЗ рддрд░реАрдХреЛрдВ рдХреЗ рд╢рд░реАрд░ рдХреЛ рдмрджрд▓рддрд╛ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рддрдХ рдЪрд▓рддрд╛ рд╣реИ, рдЖрдЗрдП рджреЗрдЦреЗрдВ:
рдХреВрд▓ред рдпрд╣ 2019 рд╣реИ, рдФрд░ рд▓реЛрдЧ рдЕрднреА рднреА рдХрдиреНрдлреНрдпреВрд╕рд░ (рдкреВрд░реНрд╡) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рд╣рдордиреЗ рддреБрд░рдВрдд рдЗрд╕ рдЕрдкрдШрдЯрди рдХреЛрдб рдХреЛ рдкрд╣рдЪрд╛рди рд▓рд┐рдпрд╛ рдФрд░ рдХреЛрдбрд╛рдВрддрд░рдХ рд╣реЗрдбрд░ рдХреА рдЬрд╛рдБрдЪ рдХреА:
[рдореЙрдбреНрдпреВрд▓: рдХрдиреНрдлреНрдпреВрдЬреНрдбрдмреА ("рдХрдиреНрдлреНрдпреВрдЬрд╝рд░.рдХреЛрд░ 1.1.0 +3636377a")]
рдлрд┐рд▓рд╣рд╛рд▓, рд╣рдордиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдХреЛрдб рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ obfuscated рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЙрдкрд░реНрдпреБрдХреНрдд рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╡рд┐рдзрд┐ рдХреЗ рдирд┐рдХрд╛рдпреЛрдВ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди, рд╣рдорд╛рд░реА рд╣реИрд░рд╛рдиреА рдХреА рдмрд╛рдд рд╣реИ, рдореЛрдЯрд╛рдкреЗ рдХреЗ рдХрд╛рд░рдг рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ ... рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП:
рдпрд╣ рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдХреЗ рд╕рднреА рдЪрд░реНрдЪрд╛ рдХреЛ рдорд╛рд░рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдХрд╣рд╛ рдерд╛, рдореИрдВ рдПрдХ рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд░рдХреНрд╖рд┐рдд, рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдирд┐рдЧрд░рд╛рдиреА рдЙрдкрдХрд░рдг рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдЬрд┐рд╕рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рдкрд╛рдВрдЪ рдорд┐рдирдЯ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧреЗрдЧрд╛ред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдХрд┐рд╕реА рднреА рдмрд╛рдЗрдирд░реА рдХреЛ рдХрдиреНрдлреНрдпреВрдЬрд╝рд░ (рдкреВрд░реНрд╡) рджреНрд╡рд╛рд░рд╛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ: .NET рдмрд┐рдирд░реАрдЬрд╝ рдбрдореНрдкрд░ рдпрд╛ рдмреНрд░реЗрдХ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдмреНрд░реЗрдХрдкреЙрдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ <MODULE> .ctor рдореЗрдВ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдбрдВрдк рдХрд░реЗрдВред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ 30 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдкреИрдХрд░ рд╣рдореЗрд╢рд╛ рдореЗрд░рд╛ рдкрд╕рдВрджреАрджрд╛ рд░рд╣реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдбрд┐рдмрдЧ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛
рдХрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ ред
рд╣рдордиреЗ MegaDumper рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛: рдпрд╣ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдбрдВрдкрд┐рдВрдЧ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝рд╛ рддреЗрдЬ рд╣реИ:
ExamCookie рдмрд╛рдЗрдирд░реА рдХреЛ рдбрдВрдк рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдирд┐рдореНрди рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдЕрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рднреА рдХреЛрдбрд╛рдВрддрд░рдХ рдЕрдВрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИ рдЬреЛ рдЗрд╕реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдбрд┐рдХреНрд░рд┐рдкреНрдЯреЗрдб рд╡рд┐рдзрд┐ рдирд┐рдХрд╛рдпреЛрдВ рдХреЗ рд╕рд╛рде рд▓реЛрдб рд╣реЛрддреА рд╣реИред
рдЬрд┐рд╕рдиреЗ рднреА рдЗрд╕ рдЖрдкрддреНрддрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рднрдЧрд╡рд╛рди рдХрд╛ рд╢реБрдХреНрд░ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рдЙрд╕рдиреЗ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛:
else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.SymbolicLink)) { Module1.DebugPrint(<Module>.smethod_5<string>(1582642794u), new object[0]); } else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.Tiff)) { Module1.DebugPrint(<Module>.smethod_2<string>(4207351461u), new object[0]); } else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.UnicodeText)) { Module1.DebugPrint(<Module>.smethod_5<string>(3536903244u), new object[0]); } else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.WaveAudio)) { Module1.DebugPrint(<Module>.smethod_2<string>(2091555364u), new object[0]); }
рд╣рд╛рдБ, рдЕрдЪреНрдЫрд╛ рдкреБрд░рд╛рдирд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХрдиреНрдлрд╝реНрдпреВрдЬрд╝рд░ (Ex), .NET рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЫрджреНрдо рд╕реБрд░рдХреНрд╖рд╛ рд╣реИред рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдХрдиреНрдлрд╝реНрдпреВрдЬрд╝рд░ (Ex) рдХреЛ рдЗрддрдиреА рдмрд╛рд░ рд╣реИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рддрдВрддреНрд░ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдбреАрдмреЙрд╕реНрдлреИрдХреНрд╢рди рдЯреВрд▓ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ .NET рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЛ рд╕реНрдкрд░реНрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдмрд╛рдЗрдирд░реА рдбрдВрдк рдкрд░
рдХреЛрдб рдХреНрд░реИрдХрд░ рд╕реЗ
ConfuserExStringDecryptor рдЪрд▓рд╛рдПрдВ:
рдпрд╣ рдкрд┐рдЫрд▓реЗ рд╕реНрдирд┐рдкреЗрдЯ рдХреЛ рдЗрд╕рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ:
else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.SymbolicLink)) { Module1.DebugPrint("ContainsData.SymbolicLink", new object[0]); } else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.Tiff)) { Module1.DebugPrint("ContainsData.Tiff", new object[0]); } else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.UnicodeText)) { Module1.DebugPrint("ContainsData.UnicodeText", new object[0]); } else if (System.Windows.Forms.Clipboard.ContainsData(DataFormats.WaveAudio)) { Module1.DebugPrint("ContainsData.WaveAudio", new object[0]); }
рдЙрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕рднреА рд╕реБрд░рдХреНрд╖рд╛, рдПрдХ рдорд┐рдирдЯ рд╕реЗ рднреА рдХрдо рд╕рдордп рдореЗрдВ рдЯреВрдЯ рдЧрдИ ... рд╣рдордиреЗ рдЕрдкрдиреЗ рдЯреВрд▓ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдирд╣реАрдВ рдХрд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрд░реЛрдд рдХреЛрдб рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдЬреЛ рдХреЛрдИ рднреА рдиреМрдХрд░реА рджреЛрд╣рд░рд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ
Tuts4You рдкрд░ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ tuts4you рдЦрд╛рддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рджрд░реНрдкрдгреЛрдВ рд╕реЗ рд▓рд┐рдВрдХ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛
рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ, рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ "рдЫрд┐рдкреА рд╣реБрдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛" рдирд╣реАрдВ рдорд┐рд▓реАред рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдирд┐рдореНрди рдЬрд╛рдирдХрд╛рд░реА рд╕рдордп-рд╕рдордп рдкрд░ рд╕рд░реНрд╡рд░ рдХреЛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИ:
- рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реВрдЪреА (рдкреНрд░рддреНрдпреЗрдХ 5000 рдПрдордПрд╕)
- рд╕рдХреНрд░рд┐рдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ (рдкреНрд░рддреНрдпреЗрдХ 1000 рдПрдордПрд╕)
- рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб (рдкреНрд░рддреНрдпреЗрдХ 500 рдПрдордПрд╕)
- рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ (рдкреНрд░рддреНрдпреЗрдХ 5000 рдПрдордПрд╕)
- рдиреЗрдЯрд╡рд░реНрдХ рдПрдбреЗрдкреНрдЯрд░ рдХреА рд╕реВрдЪреА (рдкреНрд░рддреНрдпреЗрдХ 20,000 рдПрдордПрд╕)
рд╢реЗрд╖ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрд╣реБрдд рдЙрдмрд╛рдК рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рд╕рдВрдкреВрд░реНрдг рдЖрд░рдВрднрд┐рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕реВрдЪрдирд╛рдУрдВ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд╕реАрдзреЗ рдЬрд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред
рдЕрдиреБрдХреВрд▓рдХ
рдиреЗрдЯрд╡рд░реНрдХ рдПрдбреЗрдкреНрдЯрд░ .NET
NetworkInterface.GetAllNetworkInterfaces()
рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдЗрдХрдЯреНрдареЗ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдмрд┐рд▓реНрдХреБрд▓
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ :
NetworkInterface[] allNetworkInterfaces = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface networkInterface in allNetworkInterfaces) { try {
рд╕рдХреНрд░рд┐рдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ
рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╕рднреА рдЦреБрд▓реА рд╣реБрдИ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗрд╡рд▓ рд╕рдХреНрд░рд┐рдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреА рд╣реИред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдУрд╡рд░рдмреНрд▓рд╛рдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдПрдХ рд╕реБрдВрджрд░ рдЫрджреНрдо рдХреЛрдб рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ:
var whiteList = { "devenv", "ExamCookie.WinClient", "ExamCookie.WinClient.vshost", "wermgr", "ShellExperienceHost" };
рдорд╣рд╛рди ... рд▓реЛрдЧ рдЕрднреА рднреА рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╡реЗ рдХрднреА рд░реБрдХрддреЗ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рди рд╣реА рд╕реЛрдЪрддреЗ рд╣реИрдВ: "рдПрдХ рдорд┐рдирдЯ рд░реБрдХреЛ, рдЖрдк рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдирд╛рдо рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ," рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕ рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рдкрд░реАрдХреНрд╖рд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд┐рдЫрд▓рд╛ рд▓реЗрдЦ рдкрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╢рд╛рдпрдж рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕рдмрдкрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдкрд╣рдЪрд╛рдиреЗрдВрдЧреЗ:
private bool IsBrowser(System.Diagnostics.Process proc) { bool result; try { string left = proc.ProcessName.ToLower(); if (Operators.CompareString(left, "iexplore", false) != 0 && Operators.CompareString(left, "chrome", false) != 0 && Operators.CompareString(left, "firefox", false) != 0 && Operators.CompareString(left, "opera", false) != 0 && Operators.CompareString(left, "cliqz", false) != 0) { if (Operators.CompareString(left, "applicationframehost", false) != 0) { result = false; } else { result = proc.MainWindowTitle.Containing("Microsoft Edge"); } } else { result = true; } } catch (Exception ex) { result = false; } return result; }
private string GetBrowserName(string name) { if (Operators.CompareString(name.ToLower(), "iexplore", false) == 0) { return "IE-Explorer"; } else if (Operators.CompareString(name.ToLower(), "chrome", false) == 0) { return "Chrome"; } else if (Operators.CompareString(name.ToLower(), "firefox", false) == 0) { return "Firefox"; } else if (Operators.CompareString(name.ToLower(), "opera", false) == 0) { return "Opera"; } else if (Operators.CompareString(name.ToLower(), "cliqz", false) == 0) { return "Cliqz"; } else if (Operators.CompareString(name.ToLower(), "applicationframehost", false) == 0) { return "Microsoft Edge"; } return ""; }
рдФрд░ рдХреЗрдХ рдкрд░ рдЪреЗрд░реА:
private static string GetBrowserUrlById(object processId, string name) {
рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреЗ рд╕рдорд╛рди рд╣реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред рдпрд╣ рд╕рдордЭрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрднреА рднреА рдПрд╣рд╕рд╛рд╕ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рдмреБрд░рд╛ рд╣реИред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХреЛрдИ рднреА URL рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рд▓рд╛рдпрдХ рднреА рдирд╣реАрдВ рд╣реИред
рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреА рдЦреЛрдЬ
рд╡реЗрдмрд╕рд╛рдЗрдЯ рдЬреЛ рдХрд╣рддреА рд╣реИ, рдЙрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдореЗрдВ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдПрдХ рдЭрдВрдбрд╛ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ ... рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред
File.WriteAllBytes("ecvmd.exe", Resources.VmDetect); using (Process process = new Process()) { process.StartInfo = new ProcessStartInfo("ecvmd.exe", "-d") { CreateNoWindow = true, UseShellExecute = false, RedirectStandardOutput = true }; process.Start(); try { using (StreamReader standardOutput = process.StandardOutput) { result = standardOutput.ReadToEnd().Replace("\r\n", ""); } } catch (Exception ex3) { result = "-5"; } }
рдЦреИрд░, рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ, рд╡реЗ рдбрд┐рд╕реНрдХ рдкрд░ рдПрдХ рдмрд╛рд╣рд░реА рдмрд╛рдЗрдирд░реА рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ I / O рдкрд░рд┐рдгрд╛рдореЛрдВ рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдХреНрд╕рд░ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЕрдиреНрдп рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдп рдХрд╛ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдРрд╕рд╛ рд╣реИред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

рддреЛ рдЕрдм рд╣рдо C ++ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ? рдЦреИрд░, рдЗрдВрдЯрд░рдСрдкрд░реЗрдмрд┐рд▓рд┐рдЯреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИред рдФрд░ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ (!!) рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЖрдЗрдП рдирдЬрд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдЖрдИрдбреАрдП рдкрд░:
int __cdecl main(int argc, const char **argv, const char **envp) { int v3;
рдпрд╣ VMWare I / O рдкреЛрд░реНрдЯ 'VX' рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ:
int __fastcall vm_detect::vmware_port() { int result;
рдЕрдЧрд▓рд╛,
рд╡рд░реНрдЪреБрдЕрд▓ рдкреАрд╕реА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЗрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдХрд┐ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреНрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд▓реЙрдиреНрдЪ рд╣реЛрдиреЗ рдкрд░ рд╣реА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдЧрд░ рдпрд╣ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрдиреЗ рдкрд░ рдорд╢реАрди рдХреНрд░реИрд╢ рдХрд╛ рдХрд╛рд░рдг рди рдмрдиреЗ;):
char vm_detect::vpcext() { char result;
... рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ, рджреЛ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 30 рд╕реЗрдХрдВрдб :(
рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗрд╡рд▓ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдХреБрдВрдЬреА рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рджреЛ рд╣рд╛рдЗрдкрд░рд╡рд╛рдЗрдЬрд╝рд░ рдЪреЗрдХ рдЪрд▓рд╛рддрд╛ рд╣реИ рдЬреЛ рдЙрдирдХреЗ рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдЬреАрдм рджрд┐рдЦрддреЗ рд╣реИрдВред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЗрд╕реЗ рдХрд╣рд╛рдБ рдХреЙрдкреА рдХрд┐рдпрд╛? рдУрд╣, рджреЗрдЦреЛ, рдПрдХ рд▓реЗрдЦ рдЬрд┐рд╕рдХрд╛ рд╢реАрд░реНрд╖рдХ рд╣реИ
"рд╡рд░реНрдЪреБрдЕрд▓ (рд╕рд┐рдХ) рдорд╢реАрдиреЛрдВ рдХреА рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рддрд░реАрдХреЗ" рдЬреЛ рдЗрди рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ :)ред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрди рдбрд┐рдЯреЗрдХреНрдЯ рд╡реИрдХреНрдЯрд░ рдХреЛ .vmx рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдХреЗ рдпрд╛ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдХрд┐рд╕реА рднреА рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЗ рд╡рд░реНрдзрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛
рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, GDPR рдХреЗ рдЕрдиреБрдкрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрд╛рдВрдЪ рдЪрд▓ рд░рд╣реА рд╣реИ, рдФрд░ рдЙрдирдХреА
рд╡реЗрдмрд╕рд╛рдЗрдЯ рдмрддрд╛рддреА рд╣реИ:
рдбреЗрдЯрд╛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд Microsoft Azure рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдХреЗрд╡рд▓ рд╕рд╣реА рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рд╛ рдХреЗ рдмрд╛рдж, рдбреЗрдЯрд╛ рдХреЛ рддреАрди рдорд╣реАрдиреЗ рддрдХ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рдореЗрдВ рдкреВрд░рд╛ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡реЗ рд╕рд░реНрд╡рд░ рдХреА "рд╕реБрд░рдХреНрд╖рд╛" рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ: https://examcookiewinapidk.azurewebsites.net
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо: VfUtTaNUEQ
рдкрд╛рд╕рд╡рд░реНрдб: AwWE9PHjVc
рд╣рдордиреЗ рд╕рд░реНрд╡рд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХреА (рдпрд╣ рдЕрд╡реИрдз рд╣реИ), рд▓реЗрдХрд┐рди рд╣рдо рдпрд╣ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╣рд╛рдВ рдкреВрд░реНрдг рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рд╣реИред рдЪреВрдВрдХрд┐ рдЖрд╡реЗрджрди рдореЗрдВ рдЦрд╛рддрд╛ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЫрд╛рддреНрд░ рдбреЗрдЯрд╛ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рдЕрд▓рдЧрд╛рд╡ рдирд╣реАрдВ рд╣реИред
рдХрд╛рдиреВрдиреА рдЕрд╕реНрд╡реАрдХрд░рдг: рд╣рдо рдПрдкреАрдЖрдИ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд░рдЦрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП рдЕрд╡реИрдз рд░реВрдк рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг рдЗрд░рд╛рджреЗ рд╕реЗ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрд╛рдиреВрди рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рд╣рдо рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдкрд╛рдардХ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЙрдкрд░реЛрдХреНрдд рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ, рдФрд░ рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдирд╣реАрдВ рд╣реИрдВредрдЪрдХреНрдХрд░
рдЪреВрдВрдХрд┐ рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд┐рдЬрд┐рдЯрд▓ рдкрд░реАрдХреНрд╖рд╛ рдореЙрдирд┐рдЯрд░ рдХреА рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ
рдПрдЧреНрдЬрд╛рдо рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл
ayyxam рдХреЛрдб рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ред
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реВрдЪреА
.NET рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ
ntdll!NtQuerySystemInformation
рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдХреИрд╢ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХрдИ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдЗрдВрдЧрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, .NET рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рд╕рднреА
рд▓реЗрдЯрдмреНрд░реЛрд╕ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд╕рдХреНрд░рд┐рдп рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рддреНрдпрд╛рдкрди рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдбред
NTSTATUS WINAPI ayyxam::hooks::nt_query_system_information( SYSTEM_INFORMATION_CLASS system_information_class, PVOID system_information, ULONG system_information_length, PULONG return_length) {
рдмрдлрд░
ole32.dll!OleGetClipboard
, рдЬреЛ рд╣реБрдХ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИ, .NET рдореЗрдВ рдмрдлрд╝рд░реНрд╕ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЖрдк рдмрд╕
S_OK
рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ .NET рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдмрд╛рдХреА рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ:
std::int32_t __stdcall ayyxam::hooks::get_clipboard(void* data_object[[maybe_unused]]) {
рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд┐рдП рдмрд┐рдирд╛ рдПрдЧреНрдЬрд╛рдорд┐рдиреЗрд╢рди рд╕рд░реНрд╡рд┐рд▓рд╛рдВрд╕ рдЯреВрд▓ рд╕реЗ рдкреВрд░реЗ рдмрдлрд░ рдХреЛ рдЫрд┐рдкрд╛ рджреЗрдЧрд╛ред
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ
рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рд▓реЛрдЧ рд╡рд╛рдВрдЫрд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рддреИрдпрд╛рд░-рдирд┐рд░реНрдорд┐рдд .NET рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд▓реЗрддреЗ рд╣реИрдВред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдХреЛрдб рдореЗрдВ рдХреБрдЫ рднреА рдмрджрд▓рдирд╛ рдирд╣реАрдВ рдерд╛ред рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ
Graphics.CopyFromScreen
рдлрд╝рд╛рд░реНрдорд╕реНрдХреНрд░реАрди .NET рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдмрд┐рдЯ рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд░рдг рд╣реИ, рдЬрд┐рд╕реЗ
gdi32!BitBlt
рдХрд╣рддреЗ рд╣реИрдВ
gdi32!BitBlt
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рдПрдВрдЯреА-рдЪреАрдЯ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ рдЧреЗрдо рдХреА рддрд░рд╣, рд╣рдо рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд▓реЗрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрд┐рдЯрдмреЙрд▓ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд┐рд╕реА рднреА рдЕрд╡рд╛рдВрдЫрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдЫрд┐рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рдЦреЛрд▓рдирд╛
рдзрд░рдиреЗрд╡рд╛рд▓рд╛ URL рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд┐рдЫрд▓реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рд╣рдо рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд╕рдВрд░рдХреНрд╖рдг рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ рдСрдЯреЛрдореЗрд╢рди рдХреА рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рдХрд┐рдпрд╛, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реБрдХ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
std::int32_t __stdcall ayyxam::hooks::get_property_value(void* handle, std::int32_t property_id, void* value) { constexpr auto value_value_id = 0x755D; if (property_id != value_value_id) return ayyxam::hooks::original_get_property_value(handle, property_id, value); auto result = ayyxam::hooks::original_get_property_value(handle, property_id, value); if (result != S_OK)
рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреА рдЦреЛрдЬ
рдПрдХ рдЖрднрд╛рд╕реА рдорд╢реАрди рдХрд╛ рдЖрд▓рд╕реА рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЛ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рджрд░рдХрд┐рдирд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: 1) рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдПрдХ рдкреИрдЪ рдЬрд┐рд╕реЗ рдбрд┐рд╕реНрдХ рдореЗрдВ рдлреНрд▓рд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдпрд╛ 2) рдбрдореА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢ред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рд░рд▓ рд▓рдЧрддрд╛ рд╣реИ :)ред рдЗрд╕рд▓рд┐рдП, рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ред
Process.Start()
CreateProcess
рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмрд╕ рд╣реБрдХ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рдбрдореА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░реЗрдВ рдЬреЛ рд╡рд░реНрдг '0' рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИред
BOOL WINAPI ayyxam::hooks::create_process( LPCWSTR application_name, LPWSTR command_line, LPSECURITY_ATTRIBUTES process_attributes, LPSECURITY_ATTRIBUTES thread_attributes, BOOL inherit_handles, DWORD creation_flags, LPVOID environment, LPCWSTR current_directory, LPSTARTUPINFOW startup_information, LPPROCESS_INFORMATION process_information ) {
рдбрд╛рдЙрдирд▓реЛрдб
рдкреВрд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ
рдЬреАрдердм рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЙрдкрд▓рдмреНрдз
рд╣реИ ред рдкреНрд░реЛрдЧреНрд░рд╛рдо x86 рдмрд╛рдЗрдирд░реА рдХреЛ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдХреЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред