{"id":91919,"date":"2020-08-20T13:41:55","date_gmt":"2020-08-20T11:41:55","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet"},"modified":"2020-08-20T13:41:55","modified_gmt":"2020-08-20T11:41:55","slug":"vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet","title":{"rendered":"The FritzFrog worm has been detected, targeting servers via SSH and building a decentralized botnet.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Guardicore, a company specializing in data center and cloud system protection, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.guardicore.com\/2020\/08\/fritzfrog-p2p-botnet-infects-ssh-servers\/\">has identified<\/a><\/noindex> has identified a new high-tech malware named FritzFrog, which targets Linux-based servers. FritzFrog combines a worm that spreads through brute-force attacks on servers with open SSH ports and components for building a decentralized botnet that operates without control nodes and lacks a single point of failure.<\/p>\n<p>The botnet is built using a proprietary P2P protocol, allowing nodes to interact with each other, coordinate attack organization, maintain network operation, and monitor each other's status. New victims are identified through brute-force attacks on servers that accept SSH requests. When a new server is detected, it undergoes a dictionary attack using common username and password combinations. Management can be conducted through any node, complicating the detection and blocking of botnet operators.<\/p>\n<p>According to researchers, the botnet already comprises about 500 nodes, including servers from several universities and a large railway company. It is noted that the primary targets of the attacks are networks of educational institutions, medical centers, government agencies, banks, and telecommunications companies. After compromising a server, a process for mining the cryptocurrency Monero is initiated. The activity of the observed malware has been tracked since January 2020.<\/p>\n<p>A distinctive feature of FritzFrog is that it keeps all data and executable code solely in memory. Changes to the disk are limited to adding a new SSH key to the authorized_keys file, which is later used for access to the server. System files remain unchanged, making the worm undetectable by systems checking integrity via checksums. In memory, it also retains dictionaries for password brute-forcing and mining data, which are synchronized among nodes using the P2P protocol.<\/p>\n<p>Malicious components disguise themselves as processes like , , , and . Botnet nodes monitor the status of their neighbors and, in the event of a server reboot or even a complete OS reinstall (if a modified authorized_keys file was transferred to the new system), reactivate the malicious components on the host. The standard SSH is used for communication\u2014 the malware additionally launches a local , binding to the localhost interface and listening for traffic on port 1234, which external nodes access via an SSH tunnel using the key from authorized_keys.<br \/>\n<center><noindex><a rel=\"nofollow\" href=\"https:\/\/www.guardicore.com\/wp-content\/uploads\/2020\/08\/frog-attack-1030x601.jpg\"><img decoding=\"async\" alt=\"The FritzFrog worm has been detected, targeting servers via SSH and building a decentralized botnet.\" src=\"\/wp-content\/uploads\/2020\/08\/485d97de035ae93d10692d8934702264.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><\/p>\n<p> The code for FritzFrog components is written in Go and operates in multithreaded mode. The malware includes several modules run in different threads:<\/p>\n<ul>\n<li class=\"l\"> Cracker \u2014 performs password cracking on targeted servers.\n<li class=\"l\"> CryptoComm + Parser \u2014 establishes an encrypted P2P connection.\n<li class=\"l\"> CastVotes \u2014 a mechanism for collaboratively selecting target hosts for attack.\n<li class=\"l\"> TargetFeed \u2014 retrieves a list of nodes for attack from neighboring nodes.\n<li class=\"l\"> DeployMgmt \u2014 implementation of a worm that spreads malware on the hacked server.\n<li class=\"l\"> Owned \u2014 responsible for connecting to servers where malware is already running.\n<li class=\"l\"> Assemble \u2014 assembles a file in memory from separately transmitted blocks.\n<li class=\"l\"> Antivir \u2014 a module that suppresses competing malware, identifying and terminating processes containing the string , which consume CPU resources.\n<li class=\"l\"> Libexec \u2014 a module for mining the cryptocurrency Monero.\n<\/ul>\n<p>The P2P protocol used in FritzFrog supports around 30 commands responsible for data transfer between nodes, script execution, malware component transmission, status polling, log exchange, proxy launching, and so on. Information is sent over a separate encrypted channel serialized in JSON format. The asymmetric cipher AES is used for encryption and Base64 for encoding. The DH protocol (<noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Diffie%E2%80%93Hellman_key_exchange\">Diffie-Hellman<\/a><\/noindex>) is employed for key exchange. To determine the state, nodes constantly exchange ping requests. <\/p>\n<p>All botnet nodes maintain a distributed database with information about attacked and compromised systems. Attack targets are synchronized across the botnet \u2014 each node attacks a separate target, meaning that two different botnet nodes will not attack the same host. Nodes also gather and transmit local statistics to their neighbors, such as free memory size, uptime, CPU load, and SSH activity. This information is used to decide whether to initiate mining or to use the node solely for attacking other systems (for example, mining is not initiated on overloaded systems or those with frequent administrator connections).<\/p>\n<p>To identify FritzFrog, researchers have proposed a simple <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/guardicore\/labs_campaigns\/blob\/master\/FritzFrog\/detect_fritzfrog.sh\">a shell script<\/a><\/noindex>method for determining system compromise<br \/>\nbased on signs such as having a listening connection on port 1234, presence of <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/guardicore\/labs_campaigns\/blob\/master\/FritzFrog\/ssh_key.md\">malicious keys<\/a><\/noindex> the authorized_keys (the same SSH key is installed on all nodes) and the presence in memory of running processes &#171;ifconfig&#187;, &#171;libexec&#187;, &#171;php-fpm&#187;, and &#171;nginx&#187;, which do not have associated executable files (&#171;\/proc\/&lt;PID&gt;\/exe&#187; points to a remote file). A sign can also be the presence of traffic on network port 5555, which occurs when malicious software accesses the typical pool web.xmrpool.eu during the mining of the cryptocurrency Monero.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53573\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Guardicore, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f\u0441\u044f \u043d\u0430 \u0437\u0430\u0449\u0438\u0442\u0435 \u0434\u0430\u0442\u0430\u0446\u0435\u043d\u0442\u0440\u043e\u0432 \u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0432\u044b\u044f\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u043e\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u043d\u043e\u0435 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0435 \u041f\u041e FritzFrog, \u043f\u043e\u0440\u0430\u0436\u0430\u044e\u0449\u0435\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u043d\u0430 \u0431\u0430\u0437\u0435 Linux. FritzFrog \u0441\u043e\u0447\u0435\u0442\u0430\u0435\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0447\u0435\u0440\u0432\u044c, \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0447\u0435\u0440\u0435\u0437 bruteforce-\u0430\u0442\u0430\u043a\u0443 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u043f\u043e\u0440\u0442\u043e\u043c SSH, \u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u043e\u0442\u043d\u0435\u0442\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u0435\u0437 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0443\u0437\u043b\u043e\u0432 \u0438 \u043d\u0435 \u0438\u043c\u0435\u044e\u0449\u0435\u0433\u043e \u0435\u0434\u0438\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u0430. \u0414\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0431\u043e\u0442\u043d\u0435\u043d\u0442\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":91920,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-91919","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Guardicore, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f\u0441\u044f \u043d\u0430 \u0437\u0430\u0449\u0438\u0442\u0435 \u0434\u0430\u0442\u0430\u0446\u0435\u043d\u0442\u0440\u043e\u0432 \u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0432\u044b\u044f\u0432\u0438\u043b\u0430.\" \/>\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\/en\/blog\/news\/vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\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\u0412\u044b\u044f\u0432\u043b\u0435\u043d \u0447\u0435\u0440\u0432\u044c FritzFrog, \u043f\u043e\u0440\u0430\u0436\u0430\u044e\u0449\u0438\u0439 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u043f\u043e SSH \u0438 \u0441\u0442\u0440\u043e\u044f\u0449\u0438\u0439 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0431\u043e\u0442\u043d\u0435\u0442 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Guardicore, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f\u0441\u044f \u043d\u0430 \u0437\u0430\u0449\u0438\u0442\u0435 \u0434\u0430\u0442\u0430\u0446\u0435\u043d\u0442\u0440\u043e\u0432 \u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0432\u044b\u044f\u0432\u0438\u043b\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet\" \/>\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-08-20T11:41:55+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-08-20T11:41:55+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\udd47FritzFrog worm detected, attacking servers via SSH and building a decentralized botnet | ProHoster","description":"Guardicore, a company specializing in data center and cloud system protection, has identified.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","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\u0412\u044b\u044f\u0432\u043b\u0435\u043d \u0447\u0435\u0440\u0432\u044c FritzFrog, \u043f\u043e\u0440\u0430\u0436\u0430\u044e\u0449\u0438\u0439 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u043f\u043e SSH \u0438 \u0441\u0442\u0440\u043e\u044f\u0449\u0438\u0439 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0431\u043e\u0442\u043d\u0435\u0442 | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Guardicore, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f\u0441\u044f \u043d\u0430 \u0437\u0430\u0449\u0438\u0442\u0435 \u0434\u0430\u0442\u0430\u0446\u0435\u043d\u0442\u0440\u043e\u0432 \u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0432\u044b\u044f\u0432\u0438\u043b\u0430.","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/vyyavlen-cherv-fritzfrog-porazhayushhij-servery-po-ssh-i-stroyashhij-deczentralizovannyj-botnet","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-08-20T11:41:55+00:00","article:modified_time":"2020-08-20T11:41:55+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"91919","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-02-28 12:18:27","updated":"2022-10-04 19:20:25","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/91919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=91919"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/91919\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media\/91920"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=91919"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=91919"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=91919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}