<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>実例 on akky@サイボウズラボ・ブログ</title>
		<link>https://labs.cybozu.co.jp/blog/akky/tags/%E5%AE%9F%E4%BE%8B/</link>
		<description>Recent content in 実例 on akky@サイボウズラボ・ブログ</description>
		<generator>Hugo</generator>
		<language>ja</language>
		
		
		
		
			<lastBuildDate>Mon, 26 Apr 2021 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://labs.cybozu.co.jp/blog/akky/tags/%E5%AE%9F%E4%BE%8B/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>CircleCI や TravisCI などの CI サービスの無料枠を食いつぶす暗号通貨採掘者</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/</link>
				<pubDate>Mon, 26 Apr 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/</guid>
				<description>&lt;p&gt;CIサービス(Continuous Integration = 継続的インテグレーション)の &lt;a href=&#34;https://layerci.com/&#34;&gt;LayerCI&lt;/a&gt; の CEO が&lt;a href=&#34;https://layerci.com/blog/crypto-miners-are-killing-free-ci/&#34;&gt;ブログで指摘した&lt;/a&gt;のが、LayerCI やその競合である GitLab, GitHub Actions, TravisCI, CircleCI, Wrecker などのサービスの無料枠を悪用した暗号通貨マイナー(miner = 採掘者)の実例です。&lt;/p&gt;&#xA;&lt;h3 id=&#34;ciサービスの無料枠&#34;&gt;CIサービスの無料枠&lt;/h3&gt;&#xA;&lt;p&gt;CIサービスでは、GitHub や BitBucket などのソースコード管理サービスでコードの変更がある度に、自動的にテストセットを実施し、ソフトウェアが壊れていないかを確認してくれます。CIサービスはこれらのテストを実施するためのコンピューター資源を大量に確保・実行しています。&lt;/p&gt;&#xA;&lt;p&gt;多数のプロジェクトを持つ企業は毎月の使用料を払ってこれらCIサービスを利用しますが、普及宣伝のために個人開発者やスタートアップ企業、オープンソース開発者向けに少量のサービスを無料で提供する、いわゆるフリーミアムという仕組みも各社が活用してきました。&lt;/p&gt;&#xA;&lt;h3 id=&#34;悪用者のリポジトリ&#34;&gt;悪用者のリポジトリ&lt;/h3&gt;&#xA;&lt;p&gt;悪用の実例として出された GitHub 上のリポジトリが &lt;a href=&#34;https://github.com/testronan/MyFirstRepository-Flask&#34;&gt;testronan/MyFirstRepository-Flask&lt;/a&gt; 。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-repository-screenshot.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-repository-screenshot_hu_cd1c3c0233c223b6.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-repository-screenshot_hu_6bcf615cfad78fbd.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-repository-screenshot_hu_91d96c23b4db8791.webp 1041w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-repository-screenshot.png&#34; width=&#34;1041&#34; height=&#34;879&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;CircleCI, GitHub Actions, TravisCI, Wrecker, LayerCI の5サービス用の定義ファイルが置いてありますね。一つのプロジェクトに5つの異なるCI定義。一つのプロジェクトに対してコードのテストをする競合サービスをここまで同時に使う必要は、普通はないかと思います。&lt;/p&gt;&#xA;&lt;p&gt;リポジトリ名に Flask と入っていますが、コードの中身に webサービスである Flask に関するものは見当たりません。&lt;/p&gt;&#xA;&lt;p&gt;GitHub Actions は cron 的に動き、一定時間ごとにコミットを行います。すると、コミットによって他の4つのCIサービスが起動するのでしょう。CircleCI 上で実施されている様子は&lt;a href=&#34;https://app.circleci.com/pipelines/github/testronan/MyFirstRepository-Flask&#34;&gt;パブリックに見ることができています&lt;/a&gt;。一時間おきに実行されていますね。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-on-circleci-screenshot.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-on-circleci-screenshot_hu_68395bd136f453b.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-on-circleci-screenshot_hu_99d2aa57892fe9c3.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-on-circleci-screenshot_hu_94be797e4e3ad21b.webp 1217w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/04/crypto-miners-eat-up-free-tier-of-ci-services/free-ci-using-crypt-miner-on-circleci-screenshot.png&#34; width=&#34;1217&#34; height=&#34;872&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;CIサービスの上では GitHub からのソースコードを取得し、いくつかのシェルスクリプトを噛ませ、いろいろな(たぶんマイニングに必要な)ライブラリをインストールして、&lt;a href=&#34;https://webdollar.io/&#34;&gt;WebDollar&lt;/a&gt;をマイニングする Node.js のスクリプトを実行し、採掘した暗号通貨は最終的にはインターネット上の2か所のウォレットに送り付けているそうです。&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
