{"id":70792,"date":"2021-12-20T12:22:00","date_gmt":"2021-12-20T04:22:00","guid":{"rendered":"https:\/\/blog.trendmicro.com.tw\/?p=70792"},"modified":"2021-12-16T16:27:19","modified_gmt":"2021-12-16T08:27:19","slug":"docker-hub-%e5%b8%b3%e8%99%9f%e9%81%ad-teamtnt-%e9%9b%86%e5%9c%98%e5%85%a5%e4%be%b5%e4%b8%a6%e7%94%a8%e6%96%bc%e6%8c%96%e7%a4%a6","status":"publish","type":"post","link":"https:\/\/blog.trendmicro.com.tw\/?p=70792","title":{"rendered":"Docker Hub \u5e33\u865f\u906d TeamTNT \u96c6\u5718\u5165\u4fb5\u4e26\u7528\u65bc\u6316\u7926"},"content":{"rendered":"\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\u8da8\u52e2\u79d1\u6280\u7684\u5a01\u8105\u7814\u7a76\u5718\u968a\u96a8\u6642\u90fd\u5728\u5bc6\u5207\u76e3\u63a7\u4e00\u4e9b\u7d93\u5e38\u906d\u5230\u653b\u64ca\u7684\u6f0f\u6d1e\u548c\u7d44\u614b\u8a2d\u5b9a\u932f\u8aa4\u3002\u5176\u4e2d\u4e00\u500b\u7d93\u5e38\u906d\u5230\u653b\u64ca\u7684\u7d44\u614b\u8a2d\u5b9a\u932f\u8aa4\u5c31\u662f\u66b4\u9732\u5728\u5916\u7684 Docker REST API\u3002<\/p><\/blockquote>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/dockerteamtnt-main.jpg\" alt=\"\"\/><\/figure>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>2021 \u5e74 10 \u6708\uff0c\u6211\u5011\u767c\u73fe\u6709\u99ed\u5ba2\u5c08\u9580\u653b\u64ca\u4e00\u4e9b\u56e0\u7d44\u614b\u8a2d\u5b9a\u4e0d\u7576\u800c\u66b4\u9732\u5728\u5916\u7684 Docker REST API\uff0c\u4e26\u555f\u52d5\u4e00\u4e9b\u5bb9\u5668\u6620\u50cf\u4f86\u57f7\u884c\u60e1\u610f\u8173\u672c\uff0c\u9019\u4e9b\u8173\u672c\u6703\u57f7\u884c\u4ee5\u4e0b\u52d5\u4f5c\uff1a<\/p>\n\n\n\n<ol type=\"1\"><li><strong>\u4e0b\u8f09\u6216\u5167\u5d4c\u9580\u7f85\u5e63 (Monero) \u6316\u7926\u7a0b\u5f0f\u3002<\/strong><\/li><li><strong>\u5229\u7528\u4e00\u4e9b\u5df2\u77e5\u7684\u6280\u5de7\u5f9e\u5bb9\u5668\u9003\u9038\u81f3\u4e3b\u6a5f\u3002<\/strong><\/li><li><strong>\u57f7\u884c\u7db2\u969b\u7db2\u8def\u6383\u63cf\uff0c\u8a66\u5716\u5c0b\u627e\u5df2\u906d\u5165\u4fb5\u7684\u5bb9\u5668\u6240\u66b4\u9732\u7684\u9023\u63a5\u57e0\u3002<\/strong><\/li><\/ol>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!--more-->\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig1-dockertnt.png\" alt=\"Behavior of attacks targeting vulnerable Docker servers\"\/><figcaption>\u5716 1\uff1a\u99ed\u5ba2\u5982\u4f55\u653b\u64ca\u542b\u6709\u6f0f\u6d1e\u7684 Docker \u4f3a\u670d\u5668\u3002<\/figcaption><\/figure>\n\n\n\n<p><br><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u6211\u5011\u767c\u73fe\u4e86\u4e00\u4e9b\u99ed\u5ba2\u4f7f\u7528\u7684 Docker Hub \u767b\u9304\u5e33\u865f\uff0c\u9019\u4e9b\u5e33\u865f\u4e0d\u662f\u88ab\u99ed\u5ba2\u6240\u76dc\uff0c\u5c31\u662f\u539f\u672c\u5c31\u5c6c\u65bc TeamTNT \u6240\u6709\u3002\u99ed\u5ba2\u96c6\u5718\u5229\u7528\u9019\u4e9b\u5e33\u865f\u4f86\u5b58\u653e\u60e1\u610f\u7684\u5bb9\u5668\u6620\u50cf\uff0c\u9084\u7a4d\u6975\u53c3\u8207\u4e00\u4e9b\u6bad\u5c4d\u7db2\u8def\u4ee5\u53ca\u4f7f\u7528 Docker REST API \u7684\u60e1\u610f\u7a0b\u5f0f\u653b\u64ca\u884c\u52d5\u3002\u6211\u5011\u5df2\u7d93\u5c07\u9019\u4e9b\u72c0\u6cc1\u901a\u5831\u7d66 Docker\uff0c\u800c\u76f8\u95dc\u7684\u5e33\u865f\u4e5f\u90fd\u5df2\u7d93\u88ab\u522a\u9664\u3002<\/p>\n\n\n\n<p>\u672c\u6587\u8a0e\u8ad6\u5169\u500b\u9019\u985e\u5229\u7528 Docker REST API \u4f86\u6563\u5e03\u865b\u64ec\u52a0\u5bc6\u8ca8\u5e63\u6316\u7926\u7a0b\u5f0f\u7684\u5e33\u865f\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>\u5728 Docker \u6620\u50cf\u4e2d\u767c\u73fe\u7684\u60e1\u610f\u8173\u672c<\/strong><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig2-dockertnt.png\" alt=\"Contents of Docker images\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig3-dockertnt.png\" alt=\"Contents of Docker images\"\/><figcaption>\u5716 2 \u548c 3\uff1aDocker \u6620\u50cf\u7684\u5167\u5bb9\u3002<\/figcaption><\/figure>\n\n\n\n<p><br><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u9019\u4e9b\u6620\u50cf\u90fd\u542b\u6709\u4e00\u500b\u540d\u70ba\u300cpause\u300d\u7684\u60e1\u610f\u8173\u672c\uff0c\u6b64\u8173\u672c\u5728\u65b0\u7684\u5bb9\u5668\u7522\u751f\u6642\u5c31\u6703\u57f7\u884c\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig4-dockertnt.png\" alt=\"Contents of source code\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig5-dockertnt.png\" alt=\"Contents of source code\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig6-dockertnt.png\" alt=\"Contents of source code\"\/><figcaption>\u5716 4 \u81f3 6\uff1a\u539f\u59cb\u7a0b\u5f0f\u78bc\u5167\u5bb9\u3002<\/figcaption><\/figure>\n\n\n\n<p><br><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>INIT_MAIN \u6703\u547c\u53eb SETUP_APPS \u51fd\u5f0f\u4f86\u66f4\u65b0\u53ca\u65b0\u589e\u5f8c\u7e8c\u60e1\u610f\u7a0b\u5e8f\u6240\u7528\u5230\u7684\u5de5\u5177\u3002<\/p>\n\n\n\n<p>INIT_MAIN \u6703\u5efa\u7acb\u4e00\u500b\u7121\u9650\u8ff4\u5708\uff0c\u4e26\u4f7f\u7528 curl\u767c\u9001\u4e00\u500b GET \u8acb\u6c42\u81f3 http:\/\/teamtnt[.]red\/RangeDA.php\u3002\u5b83\u6703\u6536\u5230\u4e00\u500b\u6578\u5b57\u4f5c\u70ba\u56de\u61c9\uff0c\u6b64\u6578\u5b57\u6703\u50b3\u5165\u5f8c\u9762\u547c\u53eb\u7684\u300cpwn\u300d\u4f5c\u70ba\u53c3\u6578\u3002\u5982\u679c curl \u5617\u8a66\u9023\u7dda\u5931\u6557\uff0c\u5c31\u6703\u7522\u751f\u4e00\u500b 1 \u81f3 255 \u4e2d\u9593\u7684\u96a8\u6a5f\u6578\u5b57\uff0c\u4e26\u6307\u6d3e\u5230 $RANGE \u8b8a\u6578\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig7-dockertnt.png\" alt=\"Code of pwn function\"\/><figcaption>\u5716 7\uff1apwn \u51fd\u5f0f\u7a0b\u5f0f\u78bc\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u300cpwn\u300d\u51fd\u5f0f\u662f\u7528\u4f86\u5305\u88dd\u300cmasscan\u300d\u51fd\u5f0f\uff0c\u8173\u672c\u6703\u4f7f\u7528 pwn \u4f86\u6383\u63cf 2375\u30012376\u30012377\u30014243\u30014244 \u9023\u63a5\u57e0\uff0c\u985e\u4f3c\u6211\u5011\u5728 <a href=\"https:\/\/www.trendmicro.com\/vinfo\/id\/security\/news\/cybercrime-and-digital-threats\/coinminer-ddos-bot-attack-docker-daemon-ports\">2020<\/a> \u5e74\u8a0e\u8ad6\u904e\u7684\u6bad\u5c4d\u7db2\u8def\u5206\u6563\u5f0f\u963b\u65b7\u670d\u52d9 (DDoS) \u653b\u64ca\u884c\u70ba\u3002\u4f46\u6b64\u8655\u6703\u547c\u53eb\u53e6\u4e00\u500b\u51fd\u5f0f (CHECK_INTER_SERVER) \u4e26\u50b3\u5165 IP \u4f4d\u5740\u548c\u9023\u63a5\u57e0\u865f\u78bc\u3002<\/p>\n\n\n\n<p>CHECK_INTER_SERVER \u9996\u5148\u6703\u6aa2\u67e5\u9060\u7aef IP \u4f4d\u5740\u6240\u5728\u7684\u4f5c\u696d\u7cfb\u7d71\u662f\u5426\u70ba\u300clinux\u300d\uff0c\u5b83\u4f7f\u7528\u300cinfo\u300d\u6307\u4ee4\u4f86\u5411\u66b4\u9732\u5728\u5916\u7684 Docker REST API \u4f3a\u670d\u5668\u8981\u6c42\u63d0\u4f9b\u8cc7\u8a0a\u3002\u9019\u500b\u6307\u4ee4\u53ef\u7528\u4f86\u67e5\u8a62\u6709\u95dc\u4f3a\u670d\u5668\u7684\u5404\u7a2e\u57fa\u672c\u8cc7\u8a0a (metadata)\uff0c\u4f8b\u5982\uff1a\u66ab\u505c\u4e2d\u8207\u505c\u6b62\u4e2d\u7684\u5bb9\u5668\u6578\u91cf\u3001\u652f\u63f4\u7684\u57f7\u884c\u74b0\u5883\u3001\u4f3a\u670d\u5668\u7248\u672c\u3001\u67b6\u69cb\u7b49\u7b49\u3002&nbsp;<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig8-dockertnt.png\" alt=\"CHECK_INTER_SERVER function\"\/><figcaption>\u5716 8\uff1aCHECK_INTER_SERVER \u51fd\u5f0f\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u6211\u5011\u767c\u73fe\uff0c\u9019\u6bb5\u7a0b\u5f0f\u78bc\u6703\u6aa2\u67e5\u4ee5\u4e0b\u5c6c\u6027\u4f86\u8a2d\u5b9a\u4e00\u4e9b\u65d7\u6a19\uff0c\u4e26\u6aa2\u67e5\u76ee\u524d\u6b63\u5728\u88ab\u6383\u63cf\u7684\u4f3a\u670d\u5668\u662f\u5426\u70ba Docker \u96c6\u7fa4 (swarm) \u7ba1\u7406\u54e1\uff1a<\/p>\n\n\n\n<ol type=\"1\"><li><strong>OSType:\u4f3a\u670d\u5668\u7684\u4f5c\u696d\u7cfb\u7d71<\/strong><\/li><li><strong>Repository:\u4f7f\u7528\u4e2d\u7684\u5bb9\u5668\u767b\u9304<\/strong><\/li><li><strong>Architecture:\u4f3a\u670d\u5668\u7684\u67b6\u69cb<\/strong><\/li><li><strong>Swarm:\u76ee\u524d\u7684\u96c6\u7fa4\u53c3\u52a0\u72c0\u614b<\/strong><\/li><li><strong>CPUs:\u4f3a\u670d\u5668\u7684 CPU \u6838\u5fc3\u6578<\/strong><\/li><\/ol>\n\n\n\n<p>\u70ba\u4e86\u53d6\u5f97\u66f4\u591a\u6709\u95dc\u76ee\u6a19\u4f3a\u670d\u5668\u7684\u8a73\u7d30\u8cc7\u8a0a\uff0c\u4f8b\u5982\uff1a\u5df2\u904b\u4f5c\u6642\u9593\u4ee5\u53ca\u6240\u6709\u53ef\u7528\u7684\u8a18\u61b6\u9ad4\u5bb9\u91cf\uff0c\u99ed\u5ba2\u9084\u6703\u4f7f\u7528 docker-cli \u4f86\u555f\u52d5\u5bb9\u5668\u4e26\u57f7\u884c\u4ee5\u4e0b\u6b65\u9a5f\uff1a<\/p>\n\n\n\n<ol type=\"1\"><li><strong>\u8a2d\u5b9a\u300c&#8211;privileged\u300d\u65d7\u6a19\u3002<\/strong><\/li><li><strong>\u4f7f\u7528\u5e95\u5c64\u4e3b\u6a5f\u7684\u7db2\u8def\u547d\u540d\u7a7a\u9593\u300c&#8211;net=host\u300d\u3002<\/strong><\/li><li><strong>\u5c07\u5e95\u5c64\u4e3b\u6a5f\u7684 root \u6a94\u6848\u7cfb\u7d71\u639b\u8f09\u5230\u5bb9\u5668\u7684\u300c\/host\u300d\u8def\u5f91\u4e0a\u3002<\/strong><\/li><\/ol>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig9-dockertnt.png\" alt=\"Code for spinning up containers\"\/><figcaption>\u5716 9\uff1a\u555f\u52d5\u5bb9\u5668\u7684\u7a0b\u5f0f\u78bc\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u7dca\u63a5\u8457\uff0c\u8a72\u8173\u672c\u6703\u555f\u52d5\u4e00\u500b\u65b0\u7684\u5bb9\u5668\uff0c\u8a2d\u5b9a\u300c&#8211;privileged\u300d\u65d7\u6a19\u3001\u639b\u8f09\u4e3b\u6a5f\u7684 root \u6a94\u6848\u7cfb\u7d71\u3001\u5728\u300calpineos\/dockerapi\u300d\u5bb9\u5668\u6620\u50cf\u4e0a\u5171\u7528\u4e3b\u6a5f\u7684\u7db2\u8def\u547d\u540d\u7a7a\u9593\uff0c\u622a\u81f3 2021 \u5e74 11 \u6708 9 \u65e5\u70ba\u6b62\uff0c\u8a72\u6620\u50cf\u5728 Docker Hub \u7684\u62c9\u53d6 (pull) \u6b21\u6578\u5df2\u7d2f\u7a4d\u8d85\u904e\u4e00\u842c\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig10-dockertnt.png\" alt=\"Spawning of new container\"\/><figcaption>\u5716 10\uff1a\u555f\u52d5\u65b0\u7684\u5bb9\u5668\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u4ee5\u4e0a\u5b8c\u6210\u4e4b\u5f8c\uff0c\u63a5\u4e0b\u4f86\u8a66\u8457\u5728\u540c\u4e00\u53f0\u4f3a\u670d\u5668\u4e0a\u555f\u52d5\u53e6\u4e00\u500b\u5bb9\u5668\uff0c\u4f46\u76ee\u7684\u4e0d\u540c\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig11-dockertnt.png\" alt=\"Spawning a container, with base64-encoded string\"\/><figcaption>\u5716 11\uff1a\u555f\u52d5\u4e00\u500b\u5bb9\u5668\u4e26\u5c0e\u5165\u4e00\u4e32 base64 \u7de8\u78bc\u7684\u5b57\u4e32\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u9019\u500b\u5bb9\u5668\u662f\u4f7f\u7528\u5b98\u65b9\u7684\u300calpine\u300d\u4f5c\u696d\u7cfb\u7d71\u6620\u50cf\u6240\u7522\u751f\uff0c\u4e26\u5728\u57f7\u884c\u6642\u6307\u5b9a\u4e86\u4e00\u4e9b\u65d7\u6a19\u4f86\u8b93\u5bb9\u5668\u64c1\u6709\u5e95\u5c64\u4e3b\u6a5f\u7684 root \u6b0a\u9650\uff0c\u4e0d\u904e\u6703\u5c07\u4e00\u500b base64 \u7de8\u78bc\u7684\u5b57\u4e32\u89e3\u78bc\u4e4b\u5f8c\u85c9\u7531 Linux \u7684\u547d\u4ee4\u7ba1\u9053 (pipe) \u5c0e\u5165\u300cbash\u300d\u3002<\/p>\n\n\n\n<p>\u4ee5\u4e0b\u662f\u9019\u500b\u5b57\u4e32\u89e3\u78bc\u4e4b\u5f8c\u7684\u5167\u5bb9\uff1a<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig12-dockertnt.png\" alt=\"Decoded string\" width=\"840\" height=\"171\"\/><figcaption>\u5716 12\uff1a\u89e3\u78bc\u5f8c\u7684\u5b57\u4e32\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u63a5\u8457\u7522\u751f\u4e00\u5c0d\u65b0\u7684 Secure Shell (SSH) \u91d1\u9470\uff0c\u7136\u5f8c\u8b8a\u66f4\u8cc7\u6599\u593e\u7684\u5c6c\u6027\uff0c\u8a2d\u5b9a\u4e0d\u53ef\u8b8a\u66f4 (immutable)\u5c6c\u6027\u3002TeamTNT \u7684\u516c\u958b\u91d1\u9470\u6703\u52a0\u5165\u300c\/root\/.ssh\/authorized_keys\u300d\u7576\u4e2d\uff0c\u73fe\u5728\u99ed\u5ba2\u5c31\u80fd\u4f7f\u7528\u65b0\u7522\u751f\u7684\u9019\u5c0d\u516c\u958b\/\u79c1\u5bc6\u91d1\u9470\u767b\u5165\u3002\u96a8\u5f8c\uff0c\u516c\u958b\u91d1\u9470\u6703\u88ab\u79fb\u9664\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig13-dockertnt.png\" alt=\"TeamTNT-related encryption key\" width=\"472\" height=\"211\"\/><figcaption>\u5716 13\uff1aTeamTNT \u76f8\u95dc\u7684\u52a0\u5bc6\u91d1\u9470\u3002<\/figcaption><\/figure>\n\n\n\n<p><br><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u99ed\u5ba2\u4f7f\u7528\u7684\u9580\u7f85\u5e63\u6316\u7926\u8173\u672c\u662f\u5f9e TeamTNT \u4f3a\u670d\u5668\u4e0a\u4e0b\u8f09\uff0c\u4e26\u4f7f\u7528\u4e00\u500b\u5e95\u5c64\u4e3b\u6a5f\u7684 SSH \u5c0e\u5165\u300cbash\u300d\uff0c\u63d0\u4f9b\u4f4d\u65bc\u300c\/tmp\/TeamTNT\u300d\u7684\u79c1\u5bc6\u91d1\u9470\u4f86\u4ee5\u300croot\u300d\u6b0a\u9650\u57f7\u884c\u8173\u672c\u3002\u96a8\u5f8c\uff0c\u300c\/tmp\/TeamTNT\u300d\u7684\u91d1\u9470\u4e5f\u88ab\u79fb\u9664\u3002<\/p>\n\n\n\n<p>\u6211\u5011\u5f88\u5feb\u770b\u4e86\u4e00\u4e0b\u5bb9\u5668\u6620\u50cf {\u5e33\u865f\u540d\u7a31\u5df2\u96b1\u85cf} (\u5de6) \u548c\u300calpineos\/docker2api\u300d(\u53f3) \u7684\u6b77\u53f2\u8a18\u9304\u3002\u9019\u88e1\uff0c\u6211\u5011\u53ef\u4ee5\u770b\u5230\u4f7f\u7528\u9019\u4e9b\u6620\u50cf\u4f86\u7522\u751f\u5bb9\u5668\u6642\u6703\u57f7\u884c\u7684\u6307\u4ee4\u3002\u53e6\u4e00\u500b\u503c\u5f97\u6ce8\u610f\u7684\u662f\u300cpause\u300d\u8173\u672c\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig14-dockertnt.png\" alt=\"Docker image code\"\/><figcaption>\u5716 14\uff1aDocker \u6620\u50cf\u7a0b\u5f0f\u78bc\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u5728\u6bd4\u8f03\u9019\u5169\u500b\u6620\u50cf\u7684\u300cpause\u300d\u8173\u672c\u6642\uff0c\u6211\u5011\u770b\u5230\u5169\u8005\u7684\u7a0b\u5f0f\u78bc\u6975\u70ba\u76f8\u4f3c\uff0c\u53ea\u6709\u5e7e\u500b\u5730\u65b9\u4e0d\u540c\uff1a<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/marvel-b1-cdn.bc0a.com\/f00000000017219\/www.trendmicro.com\/content\/dam\/trendmicro\/global\/en\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-to-teamtnt\/fig15-dockertnt.png\" alt=\"The \u201cpause\u201d scripts from images\"\/><figcaption>\u5716 15\uff1a\u5169\u500b\u6620\u50cf\u7684\u300cpause\u300d\u8173\u672c\u3002<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u5176\u4e2d\u8f03\u7279\u5225\u7684\u662f masscan \u7684\u4f7f\u7528\u65b9\u5f0f\u4e0d\u540c\uff0c\u6b64\u5916\uff0c\u67d0\u4e9b\u7a0b\u5f0f\u78bc\u4e5f\u88ab\u6a19\u4e86\u8a3b\u89e3\uff0c\u9019\u986f\u793a\u99ed\u5ba2\u6b63\u5728\u9032\u884c\u8a66\u9a57\u4f86\u6e2c\u8a66\u4ed6\u5011\u7684\u5de5\u5177\u548c\u6b66\u5668\u3002<\/p>\n\n\n\n<p>\u5c24\u5176\u662f\uff0c45[.]9[.]148[.]182 \u9019\u500b IP \u4f4d\u5740\u4e00\u76f4\u88e1\u4f86\u90fd\u88ab\u767c\u73fe\u8207 TeamTNT \u7684\u57fa\u790e\u67b6\u69cb\u6709\u95dc\uff0c\u56e0\u70ba\u6709\u591a\u500b\u7db2\u57df\u90fd\u7528\u5230\u9019\u500b\u4f4d\u5740\uff1a<\/p>\n\n\n\n<ul><li><strong>dl.chimaera[.]cc<\/strong><\/li><li><strong>githb[.]net (inactive)<\/strong><\/li><li><strong>github-support[.]com (inactive)<\/strong><strong><\/strong><\/li><li><strong>irc.borg[.]wtf<\/strong><\/li><li><strong>irc.chimaera[.]cc<\/strong><\/li><li><strong>irc.teamtnt[.]red<\/strong><\/li><\/ul>\n\n\n\n<p>2021 \u5e74 7 \u6708\uff0c\u6211\u5011\u5728\u91dd\u5c0d TeamTNT \u7684\u4e00\u4efd<a href=\"https:\/\/www.trendmicro.com\/vinfo\/tmr\/?\/us\/security\/news\/cybercrime-and-digital-threats\/teamtnt-activities-probed\">&nbsp;\u5831\u544a<\/a>\u4e2d\u6307\u51fa\u8a72\u96c6\u5718\u6703\u5229\u7528\u767b\u5165\u6191\u8b49\u7aca\u53d6\u7a0b\u5f0f\u4f86\u5f9e\u4e00\u4e9b\u7d44\u614b\u8a2d\u5b9a\u6a94\u6848\u8490\u96c6\u767b\u5165\u6191\u8b49\u3002\u9019\u5f88\u53ef\u80fd\u5c31\u662f TeamTNT \u5982\u4f55\u53d6\u5f97\u6b64\u653b\u64ca\u4e2d\u6240\u7528\u5230\u7684\u4e00\u4e9b\u8cc7\u8a0a\u3002<\/p>\n\n\n\n<p>\u6211\u5011\u6839\u64da\u99ed\u5ba2\u57f7\u884c\u7684\u8173\u672c\u8207\u4f7f\u7528\u7684\u5de5\u5177\u4f86\u7814\u5224\uff0c\u9019\u8d77\u653b\u64ca\u61c9\u8a72\u662f TeamTNT \u6240\u70ba\uff1a<\/p>\n\n\n\n<ol type=\"1\"><li><strong>\u300calpineos\u300d\u662f TeamTNT \u6700\u4e3b\u8981\u4f7f\u7528\u7684\u4e00\u500b Docker Hub \u5e33\u865f (\u5176\u7d2f\u8a08\u62c9\u53d6\u7684\u6620\u50cf\u6b21\u6578\u8d85\u904e 150,000 \u6b21)\u3002<\/strong><\/li><li><strong>TeamTNT \u6703\u4f7f\u7528\u4e00\u4e9b\u5df2\u5165\u4fb5\u7684 Docker Hub \u5e33\u865f\u4f86\u6563\u64ad\u6316\u7926\u60e1\u610f\u7a0b\u5f0f\u3002<\/strong><\/li><\/ol>\n\n\n\n<p>\u6211\u5011\u5df2\u7d93\u5c07\u9019\u4e9b\u72c0\u6cc1\u901a\u5831\u7d66 Docker\uff0c\u6240\u6709\u6d89\u53ca\u9019\u8d77\u653b\u64ca\u7684\u5e33\u865f\u90fd\u5df2\u7d93\u522a\u9664\u3002\u672a\u4f86\u6211\u5011\u5c07\u5728\u53e6\u4e00\u7bc7\u90e8\u843d\u683c\u4e2d\u6df1\u5165\u63a2\u8a0e\u99ed\u5ba2\u6240\u7528\u7684\u4e00\u4e9b\u6280\u5de7\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>\u7d50\u8ad6<\/strong><\/p>\n\n\n\n<p>\u66b4\u9732\u5728\u5916\u7684 Docker API \u76ee\u524d\u5df2\u6210\u70ba\u99ed\u5ba2\u7d93\u5e38\u653b\u64ca\u7684\u76ee\u6a19\uff0c\u56e0\u70ba\u9019\u4e9b API \u80fd\u8b93\u99ed\u5ba2\u5728\u8cc7\u5b89\u63aa\u65bd\u4e0d\u8db3\u7684\u4e3b\u6a5f\u4e0a\u4ee5 root \u6b0a\u9650\u57f7\u884c\u60e1\u610f\u7a0b\u5f0f\u78bc\u3002\u9019\u8d77\u8fd1\u671f\u7684\u653b\u64ca\u7a81\u986f\u51fa\u66b4\u9732\u5728\u5916\u7684\u4f3a\u670d\u5668\u6b63\u906d\u5230\u65e5\u76ca\u7cbe\u5bc6\u7684\u653b\u64ca\uff0c\u5c24\u5176\u662f\u50cf TeamTNT \u9019\u6a23\u5f37\u5927\u7684\u99ed\u5ba2\u96c6\u5718\uff0c\u6703\u4f7f\u7528\u4e00\u4e9b\u88ab\u76dc\u7684\u4f7f\u7528\u8005\u767b\u5165\u6191\u8b49\u4f86\u5f9e\u4e8b\u60e1\u610f\u653b\u64ca\u3002<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>\u5165\u4fb5\u6307\u6a19\u8cc7\u6599<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table  class=\" table table-hover\" ><tbody><tr><td><strong>\u985e\u578b<\/strong><\/td><td><strong>\u8b58\u5225\u78bc\/\u96dc\u6e4a\u78bc<\/strong><\/td><\/tr><tr><td>\u6307\u4ee4\u5217\u8173\u672c<\/td><td>79ed63686c8c46ea8219d67924aa858344d8b9ea191bf821d26b5ae653e555d9<\/td><\/tr><tr><td>\u6307\u4ee4\u5217\u8173\u672c<\/td><td>497c5535cdc283079363b43b4a380aefea9deb1d0b372472499fcdcc58c53fef<\/td><\/tr><tr><td>\u6307\u4ee4\u5217\u8173\u672c<\/td><td>a68cbfa56e04eaf75c9c8177e81a68282b0729f7c0babc826db7b46176bdf222<\/td><\/tr><tr><td>\u7db2\u57df<\/td><td>teamtnt[.]red<\/td><\/tr><tr><td>IP \u4f4d\u5740<\/td><td>45.9[.]148.182<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u539f\u6587\u51fa\u8655\uff1a<a href=\"https:\/\/www.trendmicro.com\/en_us\/research\/21\/k\/compromised-docker-hub-accounts-abused-for-cryptomining-linked-t.html\">Compromised Docker Hub Accounts Abused for Cryptomining Linked to TeamTNT<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8da8\u52e2\u79d1\u6280\u7684\u5a01\u8105\u7814\u7a76\u5718\u968a\u96a8\u6642\u90fd\u5728\u5bc6\u5207\u76e3\u63a7\u4e00\u4e9b\u7d93\u5e38\u906d\u5230\u653b\u64ca\u7684\u6f0f\u6d1e\u548c\u7d44\u614b\u8a2d\u5b9a\u932f\u8aa4\u3002\u5176\u4e2d\u4e00\u500b\u7d93\u5e38\u906d\u5230\u653b\u64ca\u7684\u7d44\u614b\u8a2d\u5b9a\u932f\u8aa4 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wpscppro_dont_share_socialmedia":false,"_wpscppro_custom_social_share_image":0,"_facebook_share_type":"","_twitter_share_type":"","_linkedin_share_type":"","_pinterest_share_type":"","_linkedin_share_type_page":"","_instagram_share_type":"","_medium_share_type":"","_threads_share_type":"","_google_business_share_type":"","_selected_social_profile":[],"_wpsp_enable_custom_social_template":false,"_wpsp_social_scheduling":{"enabled":false,"datetime":null,"platforms":[],"status":"template_only","dateOption":"today","timeOption":"now","customDays":"","customHours":"","customDate":"","customTime":"","schedulingType":"absolute"},"_wpsp_active_default_template":true},"categories":[3647,4384,4513,4],"tags":[5011,5010,3575],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=\/wp\/v2\/posts\/70792"}],"collection":[{"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=70792"}],"version-history":[{"count":1,"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=\/wp\/v2\/posts\/70792\/revisions"}],"predecessor-version":[{"id":70793,"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=\/wp\/v2\/posts\/70792\/revisions\/70793"}],"wp:attachment":[{"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=70792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=70792"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.trendmicro.com.tw\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=70792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}