เชกเชฟเชœเชฟเชŸเชฒ เชฐเซ‹เช—เชšเชพเชณเซ‹: เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ เชตเชฟ เช•เซ‹เชตเชฟเชชเชฐ

เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ เชฐเซ‹เช—เชšเชพเชณเชพเชจเซ€ เชชเซƒเชทเซเช เชญเซ‚เชฎเชฟ เชธเชพเชฎเซ‡, เชเชตเซ€ เชฒเชพเช—เชฃเซ€ เช›เซ‡ เช•เซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชธเชฎเชพเชจเชฐเซ‚เชชเซ‡ เชธเชฎเชพเชจ เชฎเซ‹เชŸเชพ เชชเชพเชฏเซ‡ เชกเชฟเชœเชฟเชŸเชฒ เชฐเซ‹เช—เชšเชพเชณเซ‹ เชซเชพเชŸเซ€ เชจเซ€เช•เชณเซเชฏเซ‹ เช›เซ‡. [1]. เชซเชฟเชถเชฟเช‚เช— เชธเชพเช‡เชŸเซเชธ, เชธเซเชชเชพเชฎ, เช•เชชเชŸเชชเซ‚เชฐเซเชฃ เชธเช‚เชธเชพเชงเชจเซ‹, เชฎเชพเชฒเชตเซ‡เชฐ เช…เชจเซ‡ เชธเชฎเชพเชจ เชฆเซ‚เชทเชฟเชค เชชเซเชฐเชตเซƒเชคเซเชคเชฟเชจเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชตเซƒเชฆเซเชงเชฟเชจเซ‹ เชฆเชฐ เช—เช‚เชญเซ€เชฐ เชšเชฟเช‚เชคเชพเช“ เชŠเชญเซ€ เช•เชฐเซ‡ เช›เซ‡. เชšเชพเชฒเซ เช…เช‚เชงเซ‡เชฐเชจเซเช‚ เชชเซเชฐเชฎเชพเชฃ เช เชธเชฎเชพเชšเชพเชฐ เชฆเซเชตเชพเชฐเชพ เชธเซ‚เชšเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช•เซ‡ "เช›เซ‡เชกเชคเซ€ เช•เชฐเชจเชพเชฐเชพเช“ เชคเชฌเซ€เชฌเซ€ เชธเช‚เชธเซเชฅเชพเช“ เชชเชฐ เชนเซเชฎเชฒเซ‹ เชจ เช•เชฐเชตเชพเชจเซเช‚ เชตเชšเชจ เช†เชชเซ‡ เช›เซ‡" [2]. เชนเชพ, เชคเซ‡ เชธเชพเชšเซเช‚ เช›เซ‡: เชœเซ‡เช“ เชฐเซ‹เช—เชšเชพเชณเชพ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชฒเซ‹เช•เซ‹เชจเชพ เชœเซ€เชตเชจ เช…เชจเซ‡ เช†เชฐเซ‹เช—เซเชฏเชจเซเช‚ เชฐเช•เซเชทเชฃ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡เช“ เชชเชฃ เชฎเชพเชฒเชตเซ‡เชฐ เชนเซเชฎเชฒเชพเช“เชจเซ‡ เช†เชงเชฟเชจ เช›เซ‡, เชœเซ‡เชฎ เช•เซ‡ เชšเซ‡เช• เชฐเชฟเชชเชฌเซเชฒเชฟเช•เชฎเชพเช‚ เช•เซ‡เชธ เชนเชคเซ‹, เชœเซเชฏเชพเช‚ CoViper เชฐเซ‡เชจเซเชธเชฎเชตเซ‡เชฐเช เช˜เชฃเซ€ เชนเซ‹เชธเซเชชเชฟเชŸเชฒเซ‹เชจเชพ เช•เชพเชฎเชฎเชพเช‚ เชตเชฟเช•เซเชทเซ‡เชช เชชเชพเชกเซเชฏเซ‹ เชนเชคเซ‹. [3].
เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ เชฅเซ€เชฎเชจเซเช‚ เชถเซ‹เชทเชฃ เช•เชฐเชคเชพ เชฐเซ‡เชจเซเชธเชฎเชตเซ‡เชฐ เชถเซเช‚ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เช“ เช†เชŸเชฒเซ€ เชเชกเชชเชฅเซ€ เช•เซ‡เชฎ เชฆเซ‡เช–เชพเชˆ เชฐเชนเซเชฏเชพ เช›เซ‡ เชคเซ‡ เชธเชฎเชœเชตเชพเชจเซ€ เช‡เชšเซเช›เชพ เช›เซ‡. เชจเซ‡เชŸเชตเชฐเซเช• เชชเชฐ เชฎเชพเชฒเชตเซ‡เชฐเชจเชพ เชจเชฎเซ‚เชจเชพเช“ เชฎเชณเซ€ เช†เชตเซเชฏเชพ เชนเชคเชพ - CoViper เช…เชจเซ‡ เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ, เชœเซ‡เชฃเซ‡ เชœเชพเชนเซ‡เชฐ เชนเซ‹เชธเซเชชเชฟเชŸเชฒเซ‹ เช…เชจเซ‡ เชคเชฌเซ€เชฌเซ€ เช•เซ‡เชจเซเชฆเซเชฐเซ‹ เชธเชนเชฟเชค เช˜เชฃเชพ เช•เชฎเซเชชเซเชฏเซเชŸเชฐเซเชธ เชชเชฐ เชนเซเชฎเชฒเซ‹ เช•เชฐเซเชฏเซ‹ เชนเชคเซ‹.
เช† เชฌเช‚เชจเซ‡ เชเช•เซเชเซ‡เช•เซเชฏเซเชŸเซ‡เชฌเชฒ เชซเชพเชˆเชฒเซ‹ เชชเซ‹เชฐเซเชŸเซ‡เชฌเชฒ เชเช•เซเชเชฟเช•เซเชฏเซเชŸเซ‡เชฌเชฒ เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เช›เซ‡, เชœเซ‡ เชธเซ‚เชšเชตเซ‡ เช›เซ‡ เช•เซ‡ เชคเซ‡เช“ เชตเชฟเชจเซเชกเซ‹เช เชชเชฐ เชฒเช•เซเชทเชฟเชค เช›เซ‡. เชคเซ‡เช“ x86 เชฎเชพเชŸเซ‡ เชชเชฃ เชธเช‚เช•เชฒเชฟเชค เช›เซ‡. เชจเซ‹เช‚เชงเชจเซ€เชฏ เช›เซ‡ เช•เซ‡ เชคเซ‡เช“ เชเช•เชฌเซ€เชœเชพ เชธเชพเชฅเซ‡ เช–เซ‚เชฌ เชœ เชธเชฎเชพเชจ เช›เซ‡, เชกเซ‡เชฒเซเชซเซ€เชฎเชพเช‚ เชซเช•เซเชค CoViper เชฒเช–เชพเชฏเซ‡เชฒ เช›เซ‡, เชœเซ‡เชฎ เช•เซ‡ 19 เชœเซ‚เชจ, 1992 เชจเซ€ เชธเช‚เช•เชฒเชจ เชคเชพเชฐเซ€เช– เช…เชจเซ‡ เชตเชฟเชญเชพเช—เชจเชพ เชจเชพเชฎเซ‹ เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชพเชตเชพ เชฎเชณเซ‡ เช›เซ‡, เช…เชจเซ‡ C เชฎเชพเช‚ เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ. เชฌเช‚เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸเชฐเซเชธเชจเชพ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเช“ เช›เซ‡.
เชฐเซ‡เชจเซเชธเชฎเชตเซ‡เชฐ เช…เชฅเชตเชพ เชฐเซ‡เชจเซเชธเชฎเชตเซ‡เชฐ เชเชตเชพ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเซเชธ เช›เซ‡ เชœเซ‡, เชเช•เชตเชพเชฐ เชชเซ€เชกเชฟเชคเชจเชพ เช•เชฎเซเชชเซเชฏเซเชŸเชฐ เชชเชฐ, เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ€ เชซเชพเช‡เชฒเซ‹เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเซ‡ เช›เซ‡, เช‘เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชธเชพเชฎเชพเชจเซเชฏ เชฌเซ‚เชŸ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ‡ เชตเชฟเช•เซเชทเซ‡เชชเชฟเชค เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชคเซ‡เชฃเซ‡ เชนเซเชฎเชฒเชพเช–เซ‹เชฐเซ‹เชจเซ‡ เชคเซ‡เชจเซ‡ เชกเชฟเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชšเซ‚เช•เชตเชฃเซ€ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.
เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ เชฒเซ‹เชจเซเชš เช•เชฐเซเชฏเชพ เชชเช›เซ€, เชคเซ‡เช“ เช•เชฎเซเชชเซเชฏเซเชŸเชฐ เชชเชฐ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชซเชพเช‡เชฒเซ‹ เชถเซ‹เชงเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเซ‡ เช›เซ‡. เชคเซ‡เช“ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค API เชซเช‚เช•เซเชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชถเซ‹เชง เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡เชจเชพ เช‰เชชเชฏเซ‹เช—เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเซ‹ MSDN เชชเชฐ เชธเชฐเชณเชคเชพเชฅเซ€ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡ [4].

เชกเชฟเชœเชฟเชŸเชฒ เชฐเซ‹เช—เชšเชพเชณเซ‹: เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ เชตเชฟ เช•เซ‹เชตเชฟเชชเชฐ
Fig.1 เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชซเชพเช‡เชฒเซ‹ เชฎเชพเชŸเซ‡ เชถเซ‹เชงเซ‹

เชฅเซ‹เชกเชพ เชธเชฎเชฏ เชชเช›เซ€, เชคเซ‡เช“ เช•เชฎเซเชชเซเชฏเซเชŸเชฐเชจเซ‡ เชชเซเชจเชƒเชชเซเชฐเชพเชฐเช‚เชญ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เช•เชฎเซเชชเซเชฏเซเชŸเชฐเชจเซ‡ เช…เชตเชฐเซ‹เชงเชฟเชค เช•เชฐเชตเชพ เชตเชฟเชถเซ‡ เชธเชฎเชพเชจ เชธเช‚เชฆเซ‡เชถ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡.
เชกเชฟเชœเชฟเชŸเชฒ เชฐเซ‹เช—เชšเชพเชณเซ‹: เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ เชตเชฟ เช•เซ‹เชตเชฟเชชเชฐ
Fig.2 เช…เชตเชฐเซ‹เชงเชฟเชค เชธเช‚เชฆเซ‡เชถ

เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชฌเซ‚เชŸ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ‡ เชตเชฟเช•เซเชทเซ‡เชชเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชฐเซ‡เชจเซเชธเชฎเชตเซ‡เชฐ เชฌเซ‚เชŸ เชฐเซ‡เช•เซ‹เชฐเซเชก (MBR) เชจเซ‡ เชธเช‚เชถเซ‹เชงเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชธเชฐเชณ เชคเช•เชจเซ€เช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. [5] Windows API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡.
เชกเชฟเชœเชฟเชŸเชฒ เชฐเซ‹เช—เชšเชพเชณเซ‹: เช•เซ‹เชฐเซ‹เชจเชพเชตเชพเชฏเชฐเชธ เชตเชฟ เช•เซ‹เชตเชฟเชชเชฐ
Fig.3 เชฌเซเชŸ เชฐเซ‡เช•เซ‹เชฐเซเชกเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐ

เช•เชฎเซเชชเซเชฏเซเชŸเชฐเชจเซ‡ เชฌเชนเชพเชฐ เช•เชพเชขเชตเชพเชจเซ€ เช† เชชเชฆเซเชงเชคเชฟเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช…เชจเซเชฏ เช˜เชฃเชพ เชฐเซ‡เชจเซเชธเชฎเชตเซ‡เชฐ เชฆเซเชตเชพเชฐเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡: SmartRansom, Maze, ONI Ransomware, Bioskits, MBRlock Ransomware, HDDCryptor Ransomware, RedBoot, UselessDisk. MBR เชชเซเชจเชƒเชฒเซ‡เช–เชจเชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ เชธเชพเชฎเชพเชจเซเชฏ เชฒเซ‹เช•เซ‹ เชฎเชพเชŸเซ‡ MBR เชฒเซ‹เช•เชฐ เช“เชจเชฒเชพเชˆเชจ เชœเซ‡เชตเชพ เช•เชพเชฐเซเชฏเช•เซเชฐเชฎเซ‹ เชฎเชพเชŸเซ‡ เชธเซเชคเซเชฐเซ‹เชค เช•เซ‹เชกเชจเชพ เชฆเซ‡เช–เชพเชต เชธเชพเชฅเซ‡ เช‰เชชเชฒเชฌเซเชง เช›เซ‡. GitHub เชชเชฐ เช†เชจเซ€ เชชเซเชทเซเชŸเชฟ เช•เชฐเชตเซ€ [6] เชคเชฎเซ‡ เชตเชฟเชเซเชฏเซเช…เชฒ เชธเซเชŸเซเชกเชฟเชฏเซ‹ เชฎเชพเชŸเซ‡ เชธเซเชฐเซ‹เชค เช•เซ‹เชก เช…เชฅเชตเชพ เชคเซˆเชฏเชพเชฐ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเซเชธ เชธเชพเชฅเซ‡ เชตเชฟเชถเชพเชณ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชญเช‚เชกเชพเชฐ เชถเซ‹เชงเซ€ เชถเช•เซ‹ เช›เซ‹.
GitHub เชฎเชพเช‚เชฅเซ€ เช† เช•เซ‹เชก เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช [7], เชชเชฐเชฟเชฃเชพเชฎ เช เชเช• เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ เช›เซ‡ เชœเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเชพ เช•เชฎเซเชชเซเชฏเซเชŸเชฐเชจเซ‡ เชฅเซ‹เชกเซ€ เชธเซ‡เช•เช‚เชกเชฎเชพเช‚ เช…เช•เซเชทเชฎ เช•เชฐเซ‡ เช›เซ‡. เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชเชธเซ‡เชฎเซเชฌเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เชฒเช—เชญเช— เชชเชพเช‚เชš เช•เซ‡ เชฆเชธ เชฎเชฟเชจเชฟเชŸ เชฒเชพเช—เซ‡ เช›เซ‡.
เชคเซ‡ เชคเชพเชฐเชฃ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ เชฆเซ‚เชทเชฟเชค เชฎเชพเชฒเชตเซ‡เชฐเชจเซ‡ เชเชธเซ‡เชฎเซเชฌเชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชฎเชนเชพเชจ เช•เซเชถเชณเชคเชพ เช…เชฅเชตเชพ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€; เช•เซ‹เชˆเชชเชฃ, เช—เชฎเซ‡ เชคเซเชฏเชพเช‚ เชคเซ‡ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡. เช•เซ‹เชก เช‡เชจเซเชŸเชฐเชจเซ‡เชŸ เชชเชฐ เชฎเซเช•เซเชคเชชเชฃเซ‡ เช‰เชชเชฒเชฌเซเชง เช›เซ‡ เช…เชจเซ‡ เชธเชฎเชพเชจ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเซเชธเชฎเชพเช‚ เชธเชฐเชณเชคเชพเชฅเซ€ เชชเซเชจเชƒเช‰เชคเซเชชเชพเชฆเชฟเชค เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เช† เชฎเชจเซ‡ เชตเชฟเชšเชพเชฐเซ‡ เช›เซ‡. เช† เชเช• เช—เช‚เชญเซ€เชฐ เชธเชฎเชธเซเชฏเชพ เช›เซ‡ เชœเซ‡เชจเซ‡ เชนเชธเซเชคเช•เซเชทเซ‡เชช เช…เชจเซ‡ เชšเซ‹เช•เซเช•เชธ เชชเช—เชฒเชพเช‚ เชฒเซ‡เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹