เจกเจฟเจœเฉ€เจŸเจฒ เจฎเจนเจพเจ‚เจฎเจพเจฐเฉ€: เจ•เฉ‹เจฐเฉ‹เจจเจตเจพเจ‡เจฐเจธ เจฌเจจเจพเจฎ เจ•เฉ‹เจตเจพเจˆเจชเจฐ

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

เจกเจฟเจœเฉ€เจŸเจฒ เจฎเจนเจพเจ‚เจฎเจพเจฐเฉ€: เจ•เฉ‹เจฐเฉ‹เจจเจตเจพเจ‡เจฐเจธ เจฌเจจเจพเจฎ เจ•เฉ‹เจตเจพเจˆเจชเจฐ
เจšเจฟเฉฑเจคเจฐ.1 เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจซเจพเจˆเจฒเจพเจ‚ เจฆเฉ€ เจ–เฉ‹เจœ เจ•เจฐเฉ‹

เจ•เฉเจ เจธเจฎเฉ‡เจ‚ เจฌเจพเจ…เจฆ, เจ‰เจน เจ•เฉฐเจชเจฟเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจฎเฉเฉœ เจšเจพเจฒเฉ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ‡ เจœเจพเจฃ เจฌเจพเจฐเฉ‡ เจ‡เฉฑเจ• เจธเจฎเจพเจจ เจธเฉเจจเฉ‡เจนเจพ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเจฆเฉ‡ เจนเจจเฅค
เจกเจฟเจœเฉ€เจŸเจฒ เจฎเจนเจพเจ‚เจฎเจพเจฐเฉ€: เจ•เฉ‹เจฐเฉ‹เจจเจตเจพเจ‡เจฐเจธ เจฌเจจเจพเจฎ เจ•เฉ‹เจตเจพเจˆเจชเจฐ
Fig.2 เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจธเฉเจจเฉ‡เจนเจพ

เจ“เจชเจฐเฉ‡เจŸเจฟเฉฐเจ— เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจฌเฉ‚เจŸ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจตเจฟเฉฑเจš เจตเจฟเจ˜เจจ เจชเจพเจ‰เจฃ เจฒเจˆ, เจฐเฉˆเจจเจธเจฎเจตเฉ‡เจ…เจฐ เจฌเฉ‚เจŸ เจฐเจฟเจ•เจพเจฐเจก (MBR) เจจเฉ‚เฉฐ เจธเฉ‹เจงเจฃ เจฆเฉ€ เจ‡เฉฑเจ• เจธเจงเจพเจฐเจจ เจคเจ•เจจเฉ€เจ• เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค [5] เจตเจฟเฉฐเจกเฉ‹เจœเจผ API เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ.
เจกเจฟเจœเฉ€เจŸเจฒ เจฎเจนเจพเจ‚เจฎเจพเจฐเฉ€: เจ•เฉ‹เจฐเฉ‹เจจเจตเจพเจ‡เจฐเจธ เจฌเจจเจพเจฎ เจ•เฉ‹เจตเจพเจˆเจชเจฐ
Fig.3 เจฌเฉ‚เจŸ เจฐเจฟเจ•เจพเจฐเจก เจฆเฉ€ เจธเฉ‹เจง

เจ•เฉฐเจชเจฟเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจฌเจพเจนเจฐ เจ•เฉฑเจขเจฃ เจฆเจพ เจ‡เจน เจคเจฐเฉ€เจ•เจพ เจ•เจˆ เจนเฉ‹เจฐ เจฐเฉˆเจจเจธเจฎเจตเฉ‡เจ…เจฐ เจฆเฉเจ†เจฐเจพ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ: SmartRansom, Maze, ONI Ransomware, Bioskits, MBRlock Ransomware, HDDCryptor Ransomware, RedBoot, UselessDiskเฅค เจเจฎเจฌเฉ€เจ†เจฐ เจฐเฉ€เจฐเจพเจˆเจŸเจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจ†เจฎ เจฒเฉ‹เจ•เจพเจ‚ เจฒเจˆ เจเจฎเจฌเฉ€เจ†เจฐ เจฒเจพเจ•เจฐ เจ”เจจเจฒเจพเจˆเจจ เจตเจฐเจ—เฉ‡ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจพเจ‚ เจฒเจˆ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจฆเฉ€ เจฆเจฟเฉฑเจ– เจฆเฉ‡ เจจเจพเจฒ เจ‰เจชเจฒเจฌเจง เจนเฉˆเฅค GitHub 'เจคเฉ‡ เจ‡เจธเจฆเฉ€ เจชเฉเจธเจผเจŸเฉ€ เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆ [6] เจคเฉเจธเฉ€เจ‚ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจœเจพเจ‚ เจตเจฟเจœเจผเฉ‚เจ…เจฒ เจธเจŸเฉ‚เจกเฉ€เจ“ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€เจ†เจ‚ เจฒเฉฑเจญ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค
GitHub เจคเฉ‹เจ‚ เจ‡เจธ เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจ•เฉฐเจชเจพเจ‡เจฒ เจ•เจฐเจจเจพ [7], เจจเจคเฉ€เจœเจพ เจ‡เฉฑเจ• เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎ เจนเฉˆ เจœเฉ‹ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจฆเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฐ เจจเฉ‚เฉฐ เจ•เฉเจ เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจ…เจฏเฉ‹เจ— เจ•เจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจ…เจคเฉ‡ เจ‡เจธ เจจเฉ‚เฉฐ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจ เจฒเจˆ เจฒเจ—เจญเจ— เจชเฉฐเจœ เจœเจพเจ‚ เจฆเจธ เจฎเจฟเฉฐเจŸ เจฒเฉฑเจ—เจฆเฉ‡ เจนเจจเฅค
เจ‡เจน เจชเจคเจพ เจšเจฒเจฆเจพ เจนเฉˆ เจ•เจฟ เจ–เจคเจฐเจจเจพเจ• เจฎเจพเจฒเจตเฉ‡เจ…เจฐ เจจเฉ‚เฉฐ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจ เจฒเจˆ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจตเจงเฉ€เจ† เจนเฉเจจเจฐ เจœเจพเจ‚ เจธเจฐเฉ‹เจค เจนเฉ‹เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆ; เจ•เฉ‹เจˆ เจตเฉ€, เจ•เจฟเจคเฉ‡ เจตเฉ€ เจ‡เจน เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจ•เฉ‹เจก เจ‡เฉฐเจŸเจฐเจจเฉˆเฉฑเจŸ 'เจคเฉ‡ เจธเฉเจคเฉฐเจคเจฐ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‰เจชเจฒเจฌเจง เจนเฉˆ เจ…เจคเฉ‡ เจธเจฎเจพเจจ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจพเจ‚ เจตเจฟเฉฑเจš เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจฆเฉเจฌเจพเจฐเจพ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจ‡เจน เจฎเฉˆเจจเฉ‚เฉฐ เจธเฉ‹เจšเจฃ เจฒเจˆ เจฎเจœเจฌเฉ‚เจฐ เจ•เจฐเจฆเจพ เจนเฉˆ. เจ‡เจน เจ‡เฉฑเจ• เจ—เฉฐเจญเฉ€เจฐ เจธเจฎเฉฑเจธเจฟเจ† เจนเฉˆ เจœเจฟเจธ เจฒเจˆ เจฆเจ–เจฒ เจ…เจคเฉ‡ เจ•เฉเจ เจ‰เจชเจพเจ… เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹