Hatena先日、こんな記事を目にしました。xTECH)http://tech.nikkeibp.co.jp/atcl/nxt/column/18/00001/00535/?P=1ざっくり記事の概要を説明すると、CSVなどテキストファイルは安全だと思われているが、CSVを開いただけでウイルスに感染する恐れがある。ファイルは拡張子によってアプリケーションと関連付けがされているので実行するとアプリケーションが記述内容を解釈して実行できてしまう。悪意のある記述内容の場合、うっかり実行を許可してしまうと被害を被ってしまう。※詳しくは元記事を参照してください。この話題は実はかなり前からあったようです。筆者は普段業務であまりExcelやCSVを取り扱っていないので、これを機に何ができるのか試してみました。※実際に試す場合は、自己責任でお願いします。Values」の略です。いくつかのフィールド(項目)を区切り文字であるカンマ「,」で区切ったテキストデータおよびテキストファイルです。WindowsではExcelをインストールすると大体CSVファイルと関連付けられるため、CSVファイルをダブルクリックするとExcelが起動します。CSVにExcelの関数を埋め込んでみる今回はExcelの場合だけを想定して実験してみます。筆者が検証したExcelのバージョンは「Excel2013」です。記述してCSV形式で保存すると、関数の箇所が無くなってしまいますので、今回はあえてCSVファイルを直接テキストエディタで編集して関数をテキスト内に記述していきます。】SUM、AVERAGEまず手始めに簡単な関数を記述してみます。合計のSUM関数と平均のAVERAGE関数を書いてみます。1行目がSUM、2行目がAVERAGEです。実際にExcelで開いてみます。警告も無く普通に動作しました。F列に結果がでています。VLOOKUP次はもう少し複雑な関数です。VLOOKUPは、指定した範囲の中から検索条件に一致したデータを検索し、取り出してくれる関数です。実際にExcelで開いてみます。こちらも警告も無く普通に動作しました。B2に検索結果が表示されています。ここまでで『=関数』形式であれば大体動きそうなことがわかりました。WEBSERVICE続いては外部のデータを取得するWEBSERVICE関数です。郵便番号から住所を取得する例を書いてみます。関数内での「”」は「”」を前につけることでエスケープ可能です。長いですが、A1に郵便番号を記載しておいて、B1にWEBSERVICE関数などを用いて住所を表示する例です。実際にExcelで開いてみます。起動時に「セキュリティに影響を及ぼす可能性のある問題点が検知されました」ダイアログがでました。ここで今回は気にせず「有効にする」をクリックします。(ここが危険です!)実際に住所がB1に表示されています。この例では実行時に外部のデータにアクセスしに行くことになるのでCSVファイルなのに「セキュリティに影響を及ぼす可能性のある問題点が検知されました」が出た時点で相当怪しいデータです。デフォルトで選択されている「無効にする」をクリックすれば関数は実行されません。Excel自体が警告してくれているのでちゃんとメッセージを読みましょう。CSVファイルはテキストエディタでも開けるので怪しいと思ったらメモ帳などで確認してみるのもいいかもしれません。この場合はケース3よりも警告が多く表示されるので気づくとは思いますが、全部許可すると今回のケースは電卓が起動します!実際にExcelで開いてみます。ここもあえて「有効にする」をクリックします。ここもあえて「はい」をクリックします。ほかにもダイアログが出ていますが「電卓」が起動されました。Injection(CEMI)」として紹介もされています。まとめいかがだったでしょうか?CSVファイルは確かにテキストデータですが、色々工夫するとそれを実行するアプリケーション側で色々な操作が出来てしまいます。基本的にはアプリケーション側で注意喚起をしてくれているようですが、利用するユーザが意識せずに操作してしまうと思いもよらない動作を引き起こす事があります。CSVに限らずですが、ファイルを操作する際には以下のことに注意しましょう。2020年2月15日GoogleStreetViewが勝手に動く!?GoogleMapAPIを使った自動再生プログラムを作ってみる。MACHINEの使い方~「モノのインターネット」IoTとは?IoTの活用事例とIoTの動向について解説します。受託システム開発により、ユーザーエクスペリエンスを高め、お客様のWeb戦略を成功に導きます。Webサイトに関するパッケージシステムの開発や個人向けのWebサービス・スマートフォンアプリ開発など幅広いサービス・アプリケーションを提供しています。名刺の作成販売を行っているECサイト「アーティス名刺工房」を運営しています。豊富なデザイン・迅速な対応で多くのお客様から支持をいただいています。Reserved.ページの先頭へ。