メインコンテンツへスキップ

クレジットカード端末でRootシェル取得に成功

·3 分
2025/06 セキュリティ ハッキング 脆弱性 Root権限 決済システム

クレジットカード端末でRootシェル取得に成功

引用元:https://news.ycombinator.com/item?id=44150803

Disposal8433 2025/06/01 16:16:10

安いUSBカードリーダーでも偽のデビット/クレジットカード決済はできるよ。仕様は全部公開されてるし、プロトコルも文書化されてる(IIRC、PDFで5000ページとかあって読むのは大変)。
でも、その決済を認証させるにはインターネット経由で銀行に送る必要があって、そうすると連邦警察とかFBIとかの訪問を受けることになるよ。
カードリーダーには本当の保護はない(大半はLinuxでしょぼいパスワード)。保護は店と銀行の間の契約や規制から来てるんだ。

csinode 2025/06/01 16:33:06

現場のカードリーダーがハッキングされて、キャッシュされたり保存されたりしてる本物のクレカ詳細を読み取られたり、マルウェアを仕掛けられたりする方がもっと心配だな。(今回の特定ケースでは難しそうだけど、この分野の研究が関係あるってことだね。)

rockbruno 2025/06/01 16:45:08

今どきのクレジットカードって、基本的に物理的な秘密鍵みたいなもんじゃないの? IIRCだと、決済は一回きりのペイロードで、その操作専用に署名されるから、傍受しても役に立たないはずだけど、僕のカードの仕組みについての理解が間違ってたらゴメン。

lelanthran 2025/06/01 18:57:33

> カードリーダーには本当の保護はない(大半はLinuxでしょぼいパスワード)。
そんなことないよ。署名済みバイナリしか動かせない、実行可能なファイルシステムは読み取り専用、データ用ファイルシステムはnoexecビットがセットされてる、rootログインは無効、機能が削られたbusybox、鍵は起動時にセキュア領域から読み込む、マスターキーの注入は工場出荷時だけ、起動自体も多かれ少なかれ安全、不正開封検出でチップは初期化される、とかね。
まあ、EMV認定されてないアジアから輸入された安いAndroid端末なら、多分標準的なLinuxで、rootファイルシステムは書き込み可能、rootログイン有効だし、アプリ実行ユーザー向けにsudoも有効、不正開封検出なし、画面キャストもロックされてない、ポートは全部開けられるし、busyboxも結構使えるやつだろうね。
ソース:俺。カード取得用のEMVアプリを何年か開発してた(今も時々やる)。開発モード(ベンダーが開発者のIDを要求)でさえ、これらはすごくしっかりロックダウンされてるんだ。

weaksauce 2025/06/01 19:50:34

最近変わってなければ、それはNFC決済とチップ決済にしか当てはまらないよ(スキミングを避けるためにも常にそっちを選ぶべき)。昔ながらの磁気ストライプ決済には関係ないんじゃないかな。

literalAardvark 2025/06/01 16:50:34

まあ、そうだけど、もしカードリーダーを制御できたら、金額を表示せずに決済金額を増やしたり、例えば違うアカウントに送金したりできるかも。

cesarb 2025/06/01 21:09:06

今どき磁気ストライプなんてまだ誰か使う?チップなしのクレジットカードなんて10年以上見てない気がするし、端末はずいぶん前からチップを読めるようになってるよ。この前、磁気不良で店が磁気ストライプを使おうとした時も、チップを使わないってだけで決済拒否されたよ。

Aurornis 2025/06/01 17:23:27

端末リーダーから勝手に全然違うアカウントに送金なんて絶対無理だよ。
銀行は誰でもクレジットカード決済を送信して、勝手なアカウントに送れるようなガバガバなプロトコルは使ってない。
不正請求の費用はクレジットカード会社が負担するんだから、そんな簡単に起こせるようにはしないさ。

Toritori12 2025/06/01 16:59:04

ほとんどのPOS端末って、「オフライン」決済を受け付けなくなったと思ってたけど。

sgjohnson 2025/06/01 17:05:31

今はそうかもだけど、特にアメリカ以外では、クレジットカードとデビットカードの境界線がかなり曖昧になった今、ね。
10年くらい前、イギリスのレストランでAMEXカードでオフライン決済したのをハッキリ覚えてるよ。
あと、機内で決済を受け付ける航空会社のほとんども、端末をオフラインモードで動かしてる。
きっとBINコードなんかで、オフライン決済を許可するかどうかのマッピングがあるんだろうね。

miki123211 2025/06/01 21:41:45

契約とか規制で守られてるって話は的を射てるね。非接触カードリーダーで街中歩いて金盗むってトンデモ説がウソなのはこれが理由。たしかに取引自体はできちゃうけど、その後の処理や、それに必要な準備が大変なんだ。それに、取引通知で即バレする人が多いから、捕まる前に金を引き出すのはまず無理だろうね。

bdangubic 2025/06/01 21:24:21

ほんと、ちょうど今週だけで2回も「チップリーダーに問題が」って言われてスワイプさせられたよ(CVSとWegmansで)。

stef25 2025/06/01 18:23:52

「2ドルのUSBカードリーダーで偽のデビット/クレジットカード取引ができる」って話、やり方じゃなくて、もうちょっと詳しく解説してくれないかな?

Y_Y 2025/06/01 23:10:41

デバイス買ったらRoot権限は当然欲しいでしょ。支払システムがこんなテキトーなデバイスのローカル権限に依存してるなんて、どんなゴミみたいなリクエスト受けても文句言えないわ。

timewizard 2025/06/01 19:20:04

「署名付きバイナリだけ実行、ファイルシステムは読み取り専用、rootログインなし、機能制限付きbusybox、鍵はセキュアエリアから、マスターキーは工場でのみ、起動もセキュア、改ざん検知でチップ消去」とか、色々対策してるのは分かった。じゃあ、その対策破るために誰か雇って攻撃テストとかしたの?脆弱性とか見つかった?

glitchc 2025/06/01 17:34:56

オフライン決済をサポートするか、いくらまで許すかは加盟店次第だよ。端末は確かに対応してる。取引データは暗号化とかされて安全に保存されるんだけど、端末がネットに再接続するまで。ルール上、オフライン取引の失敗リスクはほぼ全部加盟店が負うことになってるんだ。だから、ほとんどの店はそのリスクを取りたくなくて、オフライン決済機能を無効にしてる。

lelanthran 2025/06/01 19:23:05

セキュリティ攻撃テスト専門の人はウチの会社にはいるよ。業界全体がどうかは分からないけど、EMVアプリケーション開発者でさえ敵扱いするくらいセキュリティは厳しい。認証プロセス自体でも、PIN入力中とかに変なことさせようとする悪意あるテストは少しやるみたい。

bogantech 2025/06/01 21:12:47

「取引を検証するために銀行にインターネット経由で送る必要がある」っていうのは全然違うよ。銀行はカード取引処理用のオープンAPIなんてネットに公開してないから。

quesera 2025/06/01 23:47:37

たぶんGPさんは勘違いしてるね。安いリーダーでカードの磁気ストライプは読める。暗号化されてないからカード番号(PAN)とか有効期限とか名前は取れるけど、CVVは無理。EMVは暗号化されてるけど鍵が漏れることも。でも、カード読んだだけじゃ取引をネットワークに送る能力は手に入らないよ。それには加盟店の決済ゲートウェイの認証情報とか、店のネットワークに入る必要がある。これは不可能じゃないけど、たとえできても資金は店の銀行口座に入金されるだけで、自分のものにはならない。お金を盗むのは無理なんだ。クレジットカード端末のRoot権限取得が興味深いのは、その後その端末で使われた全カードの詳細を盗めるから。それらの情報を使って、よくあるクレジットカード詐欺ができるようになる、ってことだね。

literalAardvark 2025/06/01 18:12:20

それも考えたよ。触ったことないから、root取れたら何ができるか想像つかないんだよね。

sgjohnson 2025/06/01 17:38:35

レストランならオフライン決済を受け付けるのが普通だよね。注文した時、カード決済できなくなる可能性なんて知らなかったよ。普段現金持ち歩かないし、もし端末がダウンしたら店の責任だもんね。

fragmede 2025/06/01 23:45:41

> If I buy a device it sure as shit better give me root<br>実際どうなの?洗濯機とか乾燥機、電子レンジの着信音もう変えまくってるわけ?

stephen_g 2025/06/01 23:46:22

2ヶ月前にAmexとVisaの2枚同時に不正利用された体験談。スキマーかと思ったら、両方使ったサイトはないし。Visaはホテルで使われた通知きて、アプリ見たら別の取引も保留になってた。ホテルに電話したら「客追い出して返金」だって。警察呼ばないのが謎だけど、全部返金されたから損失ゼロで報告することなし…損失はホテル側なのにね。同じ日にAmexも不正利用されたけど、こっちはベンダーが自動返金してくれたみたい(たぶん不正防止で)。変なのは、Visa使われたホテルが「カード現物かデジタルウォレットでの取引」って言ってたこと。でもデジタルウォレットに登録した覚えないしカードは常に持ってた。間違いか嘘か、デジタルウォレット偽装か…。結局、俺がすぐ気づいてカード止めたから犯人は失敗したんだけど。

jamwil 2025/06/02 00:12:15

USAはchip/tap端末の導入がCanadaに比べて遅かったよね。Apple Payが出てきてからやっとtap対応端末が普及した気がする。

tough 2025/06/01 18:01:46

10年前、飛行機でオフラインのデビットカード決済やったの覚えてる。あの古いエンボス加工のやつでカード通してたんだよ笑

lelanthran 2025/06/01 19:01:26

> Yeah, I did think of that. I’ve never played with one of those so I don’t really have much of an imagination about what they could do with a cracked one.<br>デスクにいくつかあるけど、dev-modeでも金盗むことなんてできないよ。

literalAardvark 2025/06/02 13:40:30

前のコメントで、加盟店情報を丸ごと変えて、もっとアクセスしやすい口座に金を吸い上げられるって言ってる人がいたよ。

pornel 2025/06/01 22:06:27

> unless it’s changed recently<br>Europeでは15~20年前に変わったよ。EMV対応端末が必須になって、すぐ磁気ストライプカードの受付はやめたからね。10年前にApple Payが出てからは、カードをスワイプできなくて困るUSの観光客も見なくなったし。

vel0city 2025/06/02 02:33:52

USでは利用可能な技術がAppleが流行らせるまで普及しないのを何度も見るのはいつだってすごいね。

LeonM 2025/06/02 08:26:27

最近乗った飛行機、機内決済がオンラインになってたっぽいよ。Starlinkとかで常に通信できるようになってるからね。昔から飛行機は通信機能持ってたし、Wi-Fiもあるんだって。飛行機がオフラインな時代はもう終わったみたいだね。

もっとコメントを表示(1)
joshstrange 2025/06/01 16:10:19

StripeのM2 reader、買って3年で9日しか使ってないのに36台中7台も壊れたんだ。充電できない、NFC使えない、”tampered”って出る。ハードケースで保管してるのに、故障率ヤバいよ。でも他の端末よりマシだから使うしかないんだよね。

mrbuttons454 2025/06/01 16:25:55

バッテリーは充電少ない状態で長く置いとくとダメになりやすいよ。tamperになるのもバッテリー関係してるんじゃない?次使う前にちゃんと充電しといた方がいいよ。

joshstrange 2025/06/01 16:31:12

使う前に充電してるし、イベント前には起動してチェックしてるよ。予備持ってるから助かってる。tamperになったのは同じケースに入ってたから、もしかしたら衝撃かも。でもNFCとか充電の問題は納得いかないんだよね。

VladVladikoff 2025/06/01 22:23:20

Stripeの端末、バッテリーじゃない有線のだとどう?POS選んでるんだけど、Stripeも候補なんだよね。有線のヤツは使ったことある?

londons_explore 2025/06/01 16:04:04

もしかして、tamperの状態になった時にRootシェルが開くようになってるんじゃない?セキュアな状態からデバッグ用の状態に切り替わる時に、重要な鍵は消えちゃうとか。

fp64 2025/06/01 16:32:05

俺も同じこと考えた!tamper状態になった時に新しい鍵入れたらまた使えるかな?とか。もう使われなくなるなら、中古で探してみようかな。

stgl 2025/06/01 16:58:20

それ試してみたけど、tamperになってない別の端末でもシェル取れたんだよ。だからtamper状態は関係ないみたい。

numpad0 2025/06/02 13:19:49

えっ、tamper検知されないでRootシェル取れるってマジ?それはヤバすぎる…。

fp64 2025/06/02 18:36:31

記事でドリルなしでポートにアクセスできるって書いてあったと思うよ!

lelanthran 2025/06/01 19:05:45

俺もそう思ったんだ、新しいキーをフラッシュしてまた使えるかもって?
でもどんなキー使うんだよ?新しいキーで暗号化しても相手は復号できないし、意味なくない?

mrbluecoat 2025/06/01 15:02:52

すぐ興奮しちゃう人向けに、記事で書いてたのはね、Rootシェルがあっても思ったよりヤバくないってこと。
カード情報みたいな大事なデータがこれで盗まれた証拠はないんだって。
セキュリティ設計者には勉強になる記事だね。

LunaSea 2025/06/01 16:31:28

物理的に端末に触れてRoot権限があるのに、クレジットカード番号が読めないなんて絶対ありえないと思う。
セキュリティの世界では、物理アクセスはRootアクセスと同じくらい、ハック確実ってことだから。

kbolino 2025/06/01 16:49:39

だから最新のチップカードとかタップ決済は、敏感な番号を全く公開しないんだよね。
カードリーダーは存在しない番号を盗めない。
磁気ストライプカードだけがそんなに安全じゃないけど、ここで悪用されたカードリーダーには磁気ストライプリーダーすらないんだ。
とはいえ、完璧なセキュリティじゃないよ。
チップ/タップカードがリーダーと接触中は、不正な目的で使われる可能性はある。
物理アクセスは、カード自体のセキュリティを破ったり、カードを撮るカメラを設置したり、他の悪用につながる扉を開けることもあるんだ。

Tijdreiziger 2025/06/01 21:15:42

このカードリーダーには磁気ストライプリーダーがないって?いや、あるよ。
端末の右側だよ。
https://worldline.com/content/dam/worldline/local/sl-si/docu
ここで確認できるよ。

kbolino 2025/06/01 22:31:46

よく見つけたね、記事の写真見ても(普通のシンボルも)気づかなかった。
理想的には、こういうストライプの使用は完全に排除されるべきだね、安全にはできないから。

ianburrell 2025/06/02 03:52:53

磁気ストライプは2027年に消え始めて、2029年にはなくなる予定だよ。
チップに磁気ストライプ情報が含まれてた印象だけど、展開が進むときにはなくなったと期待してる。
もうすでに、磁気ストライプ取引のリスクは店側が負うことになってるんだ。

kbolino 2025/06/02 05:19:33

EMV接触標準では、SDA(Static Application Data)へのフォールバックを許可してるみたいだね。
SDAは全然変わらない静的なデータで、偽造カードにかなり簡単にクローンできる。
それが磁気ストライプにエンコードされてるデータと同じかは分からないけど、大して良くない。
ハッキングされたカードリーダーは、SDAだけをサポートするフリをしてこれを悪用できるかもね。
でも、カード側がSDAをサポートしないことでこれを軽減できるんだ。

tgsovlerkhgsel 2025/06/02 09:35:11

銀行はSDA取引のリスクを加盟店に押し付けて影響を減らせるんだって。
データがスキミングされてカードが悪用されても、発行者はチャージバック手数料で儲かるからね…

_joel 2025/06/02 07:59:03

UKでチップアンドピンが始まったのは2006年。
まさかまだこんな古いのが使われてるなんてびっくりだね。

Symbiote 2025/06/02 13:33:44

導入は2004年で、2006年に義務化されたんだ。
フランスはもっと早くて、1992年からチップカードを使ってたらしいよ(前の規格だけどね)。

ChocolateGod 2025/06/01 22:41:04

お店でまだ磁気リーダーを見ることはあるけど、支払いにじゃなくてバウチャーとかポイントカード、返金スキャン用に使われてるな。
支払いではもう使わないね。

Tijdreiziger 2025/06/02 10:36:15

オランダではバウチャーやポイントカードを決済端末で見たことないな。
いつもバーコードを店員か自分でスキャンするんだ。
返金はチップか非接触でやるよ。

zahlman 2025/06/01 20:35:23

”チップカードや非接触決済のような最新技術は、機密性の高い番号を一切公開しない。”って言うけど、
番号なしでどうやって取引内容を確認するんだろうね?

ElectricalUnion 2025/06/01 22:03:59

銀行はカードの公開鍵、カードは秘密鍵を持ってるHSMなんだ。
銀行は公開鍵でカードの署名を検証できるよ。
端末は入力値でカードに署名させて、カードはパスワード間違いなら署名しないんだ。
銀行はさらに妥当かチェックするよ。

runeks 2025/06/02 10:36:45

”端末は入力値でカードに署名させる。”って言うけど、
ハッキングされた端末だと表示は1ドルなのに、実際には500ドルの取引署名をカードに要求できるのが問題だね。

ElectricalUnion 2025/06/03 00:30:28

もっと安全なら、カード本体に画面とPIN入力があればいいのにね。
端末が信用できるか分からないから。
悪意ある加盟店やMitMが画面表示をごまかしたり、完全に操作してる可能性もあるもんね。

kbolino 2025/06/03 18:18:40

大事なのは、クレジットシステムは暗号技術だけじゃないってこと。
認証情報が取れなくなると、詐欺師はそこで取引するしかなくなるから、どこで問題が起きたか特定できるんだ。
悪質なお店は追放したり、端末を調べたりできるし、ブロックチェーンと違って不正な取引は取り消せるよ。

__MatrixMan__ 2025/06/01 22:13:54

この端末が僕が扱ったのに似てるならね、rootシェル取れたデバイスは、カード情報を扱うのと”同じデバイス”なのは、筐体とか同じ基板にあるって意味だけだよ。それ以外は別のコンピューターなんだ。
僕の場合、”外側”のシステムはAndroidだったから、ADBで好きに操作できたんだ—セキュリティはゆるめだったよ。”セキュアボード”は決済の詳細を扱う部分だけ担当してた。
決済フローをテストするために、結局3Dプリンターを改造してスタイラスを持たせることにしたんだ。Androidの組み込みツールだと、セキュアボードがやってることは”Xドルで決済開始”、”ユーザーがキャンセル”、”Xドル決済完了”みたいな限定されたアクション以外、何も見えなかったし触れなかったからね。

emidln 2025/06/02 04:55:43

セキュアファームウェアを起動するか、改ざん画面に行くか決めるバイナリを見てみたら?おそらく、パッチすればセキュアファームウェアを動かして、もっと調べられるのが簡単だと思うよ。
Linuxシステムの目的がネットワーキングとアップデートなら、セキュア部分のファームウェアをアップデートする方法があるってことだよね。それは理想的じゃないな。
改ざんチェックがLinuxのユーザーランドにあるなら、そのファームウェアアップデートはすごく怪しいと思うよ。

stgl 2025/06/02 05:31:40

起動するか改ざんモードに行くか決めるバイナリは”loadercode”だよ。これは完全性が保護されてる(多分Boot ROMか何かで)。
セキュアファームウェアはアップデートできるけど、それも署名されてるんだ。

もっとコメントを表示(2)
emidln 2025/06/02 06:02:13

もし完全性保護がTPMの実装みたいなら、メモリにロードされた後は適用されないことが多いんだ。最初にロードされた時だけ、それ以前のものも含めて証明されたってだけ。
これはユーザーランドに入るとすごく重要になるよ。特に古いシステムなら、適当な既製のExploitを連鎖させて、loadercodeとか何かのbinfmtローダーを修正するつもりでカーネルメモリを変更できるんだ。
もちろん、loadercodeがセキュアファームウェアを呼び出す薄いシムで、改ざんモードがディスプレイを制御する別のファームウェアじゃなくてセキュアファームウェア側にあるなら、あまり先に進めないだろうね。
要するにね、すごく古いLinuxディストリビューションのrootファイルシステムを制御できるなら、Linuxバイナリ自体の他のセキュリティ対策はあまり意味ないんじゃないかって懐疑的なんだ。

stgl 2025/06/02 06:08:45

Linuxはどんなセキュアなバイナリも扱わないよ。署名されて暗号化されたセキュアイメージが置かれてるファイルシステムを共有してるだけなんだ。
loadercodeの検証はLinuxではやらないよ。むしろ、非セキュアなブートローダーがファイルシステムからそれを読み込んで、どこかのメモリアドレスにロードするだけ。そこから、完全性がチェック(?)されて、第2のセキュアコアで実行されるんだ。これがセキュアイメージを検証してチェーンロードするんだよ。

Ambroos 2025/06/01 20:47:52

それは設定次第だよ。マスターカードとVisaのデビットとクレジットに、実際のプロトコルの違いはあまりないんだ。
ベルギーのDelhaizeもこれを使ってるけど、間違いなくあらゆる種類のクレジットカード(少なくともVisa、MasterCard、さらにはAmExも)で使えるよ。

IshKebab 2025/06/01 17:39:08

記事を読んでよ。実際の作業は、署名されたイメージだけを実行する別のプロセッサがやってるんだ。

ComputerGuru 2025/06/01 15:46:50

(侵害された)Linuxが”侵害モード”のコードをロードするか、mp1セキュアシステムをロードするか決める?それは探るべき道筋のように聞こえるね。
ブートローダー自体はセキュアだって書いてあるけど、侵害された環境にロードされて実行される場所次第では、それはあまり意味ないかもしれないね。
コプロセッサはSecure Enclaveみたいなものと見なせるかもしれないけど、Linuxが別のブートローダーを(どうにかして)ロードして実行できるっていうのは懸念材料だよ。

stgl 2025/06/01 16:29:01

いや、別のブートローダーは読み込めないよ。
セキュアブートローダー(loadercode)をいじろうとしたけど、起動しなかったんだ。
だから、ブートROMみたいなサードパーティが検証してるんだと思う。
あと、Linuxはタンパー状態に関係なくloadercodeとmp1.imgを常に読み込むと思う。
タンパー状態による異なるコードパスは、保護されたloadercode内で実行されるんだよ。

ComputerGuru 2025/06/01 16:59:00

外部デバッグインターフェースを使ったら、タンパーモードは設定されないってことを覚えておいてね。
もしLinuxがネットワーキングに使われているなら、決済をMITMできるかもしれない。

_djo_ 2025/06/01 21:17:11

カードの詳細と支払いは暗号化されてから、セキュア/トラステッドゾーンで実行されているファームウェアによって、アクワイアラーから提供された公開鍵を使って署名されるんだよ。

halpow 2025/06/01 15:18:14

イージーモードで試したいなら、ああいう新顔のAndroidベースのクレジットカード端末をチェックしてみて。
画面にPINをタップするから、はるかに「美味しい」と思うよ。ジューシーだね。

bmurray7jhu 2025/06/01 21:08:50

タッチコントローラーは普通、セキュリティプロセッサで制御されるMUXに接続されてる。
PIN/PANsのような機密データを入力する時は、タッチコントローラーの出力はセキュリティプロセッサに直結されて、GUIを担当するAndroid由来のOSは迂回されるんだ。

tgsovlerkhgsel 2025/06/02 09:38:19

そしてユーザーとして、これと、全てのセキュア機能が取り除かれてランダムなAndroidが動いてて、NFCやChipのデータを本物のリーダーにプロキシしつつ、私のPINは人間がリアルタイムで本物のリーダーに手入力してるようなデバイスとを区別する方法は全くない。
私が気づくのは、1秒かそこらの遅延だけだね。

grishka 2025/06/02 17:18:44

物理ボタンの端末が安全だってどうやって確認するの?タッチスクリーンだからって本質的に安全じゃなくなるわけじゃないと思う。
俺の理解では、システム全体はリプレイ攻撃を無効にするよう設計されてるよ。
PIN単体じゃ取引できないし、リーダーとカードの記録されたやり取りと組み合わせてもダメ。
カードのChipにある秘密鍵を使った非対称暗号が関係してて、署名にはランダムなnonceが含まれてるんだ。

tgsovlerkhgsel 2025/06/02 18:52:01

PINと磁気ストライプデータだけでも(Chipからの1回読み取りで複製できると思う)、一部のケースでは支払いするのに十分なんだ。
もし合法的な端末タイプが十分に少なくてユーザーがそれを知っていれば、違う端末を提示されたら怪しまれるだろうね。
現状では、カード所有者である俺としては、誰かの自家製スキマーに見えたとしても、提示されたものがおそらく合法だと仮定せざるを得ない。
ただし、これはまだ加盟店を残してる。彼ら(端末を渡してくる人)が詐欺に関与してないなら、どんな改ざんも彼らに非自明である必要がある。
AFAIK、デバイスの重さを量ったり、シールやシリアル番号を定期的にチェックしたりするところもあるらしい。VISAは1日2回のチェックを推奨してるよ: https://busfin.colostate.edu/Forms/Merchant_Svcs/Visa_Securi
物理ボタンの端末を改ざんしようとすると、物理的に配線を変える必要があって、タンパー検知が作動して端末が使えなくなるだろうね。
だから、改ざんされたけど見た目は全く同じで、怪しまれない程度には機能するユニットと交換する必要があるだろう。
攻撃者はケースをくり抜いて完全にカスタムの電子機器を入れることも、理論的には可能だけど、それはかなり高いハードルだね(特にシリアル化されたシールの偽造が必要なら)。
安全じゃないAndroidを搭載したタッチスクリーン端末の場合、安全じゃない側でのソフトウェア変更だけで(PIN入力モードを実際には開始しないとか、最初の試行と「PINが間違ってる」メッセージの後だけ開始するとか)、PINを取得するのに十分であるべきだし、他の電子機器に接続されてないNFCスキマーを追加すれば残りはできるだろうね。
そのデバイスも安っぽく見えて、少量しか流通してないし、最も一般的な端末ほど多くの耐タンパー機能があるか疑わしいけど、俺が間違ってるかもしれない。
もし強力な物理的な耐タンパー対策があって、ソフトウェアがソフトウェアベースの改ざんに対して強化されてるなら、理論的には同程度に安全になりうると思う。

grishka 2025/06/02 23:12:56

磁気ストライプは米国でしか人気がないみたいだね。
あそこのカード決済がいかに安全じゃないかにはいつもびっくりする。
数ドルの少額決済だと、POSシステムについたリーダーにカードをスワイプするだけで終わり。
PINコードも何もなしで、数秒後にカードに請求があったっていうSMSが来るだけ。
より高額な決済だと、「レシートにサイン」とか「ID見せて」みたいな完全に人間頼みの確認方法を使う。
米国に行くまでこんなことになってるとは知らなかったよ。
俺の出身のロシアでは、もう10年以上カードをスワイプしてない。
最近は多くの場所で、磁気ストライプリリーダーすらない、NFCとChipだけの四角いAndroidベースのSberbank端末が出てきた。
まあ、俺たちの銀行システムは2022年から世界のほとんどから事実上切り離されてるけど、これらがMasterCardやVisaが戻ってきた時の要求に応じられるように設計されてないとしたら驚きだね。
そしてスキマーは、ここじゃもはや存在しない。
代わりにソーシャルエンジニアリングを通じて詐欺に遭うんだ。
磁気ストライプの取引は、静的で簡単にコピーできるデータしか必要としないためにリスクが高いから、加盟店の手数料がもっとかかる、みたいな記事も読んだ気がするな。
とにかく、俺が言いたいのは、静的データで取引ができなくなると、脅威モデルが変わって、ずっとシンプルになるってことだよ。
詐欺師が何を捕まえようと、たとえPINとNFCやChipリーダー経由のカードとの完全なデータ交換だったとしても、それを使って取引することはできないからね。
番号、有効期限、CVCだけを手に入れても、オンライン取引ができる可能性も低い。
今は2段階認証が必要だからね。Amazon以外はね。
Amazonはなぜか番号と日付だけでカードに請求できるんだ。CVCもいらないし、2faコードも必要ない。

grishka 2025/06/03 08:31:44

もう少し考えたけど、いや、タッチスクリーンに関する君の議論は意味をなさないね。
OPが見た端末は「安全じゃない」側でLinuxが動いてるけど、物理キーパッドもメニューや金額入力に使われるから、Android SoCにタッチスクリーンが渡されるのと同じようにそっちに渡されるはずだよ。
Linux側は「セキュア」OSを動かすCPUコアにPIN入力開始のコマンドを送る必要があって、それは君が説明したとおりにできる可能性がまだあるんだ。

_djo_ 2025/06/01 20:29:43

PINデータはタッチパッドに表示されても、信頼できるゾーンのファームウェアで制御されるユーザーインターフェースを使って暗号化されてるから、Rootシェルでアクセスできるような中間アプリからはPINは見れないんだよ。

jeroenhd 2025/06/01 15:46:54

それでPINはかなり簡単に手に入るだろうけど、もし同じように設計されてて(重要な部分は全部セキュアな二次プロセッサに渡されてる場合)、モダンなカードがこういうのを防ぐためにすごい暗号化をカード上でやってるなら、カードでできることはあんまりないだろうね。
磁気カードリーダー以外の支払い方法が全部壊れてる端末でしか攻撃は効かないだろうけど、そういうのはPIN入力を求められる前にスキマー警告アラームを出すはずだよ。

user_7832 2025/06/01 16:05:25

お宅の地域でどんなAndroid端末使ってるか知らないけど、インドではAndroid Oreo(2021年1月サポート終了)が動いてるみたいだよ。やばいね!

user_7832 2025/06/01 16:06:42

あと、他のアプリを開けたり通知センターも開けたりするらしい。そして、当然だけどデバイス全体がひどく重いとさ。

ttkari 2025/06/02 09:15:41

デバイスの改ざん検知(tamper detection)について読んでて、一番簡単な改ざんモードをトリガーする方法ってなんだろ?数台でそれをやれれば、支払いの大半―時には全部―がこれらを通る小売店にとっては効率的なサービス妨害(denial of service attack)になるよね。

neop1x 2025/06/02 13:09:34

床に落とすか水をぶっかけるとかね。

Liftyee 2025/06/01 14:58:16

ブラボー!改ざん防止(tamper protection)みたいなハードウェア制限を悪用したり回避したりする方法を考えるの好きだよ。でも、トリガーされたらゲームオーバーだと思ってた。そうじゃないみたいで、まだ色々弄れる面白い部分が残ってるんだね。セキュアな部分がちゃんと無効になるのは理にかなってるけどね、じゃないと設計者を信用できなくなる。

lxgr 2025/06/01 15:01:13

それはおそらく強化されたプロセッサについてはまだ言えることだろうね。TFA(記事)が指摘してるように、ここで侵害されたのはそこじゃないんだ。
テキスト文字列だけがバイナリ(display_tool)に渡されて、プロセッサ間のメッセージをいくつか発行するだけみたいだね。キーパッドやカードリーダー自体も同じ。
Linuxからこれらの周辺機器に直接アクセスできる証拠は見つけられなかったと。
代わりに、mp1と呼ばれる全く別のプロセッサがあって、カード処理、PIN取得、画面表示といった“secure”な処理全部を扱ってるみたい。
二番目のプロセッサmp2で動く“insecure”なLinuxは、ネットワーキング、アップデート、そしてビジネスロジックだけを扱ってるんだね。

fredthestair 2025/06/01 15:16:38

説明によると、Linux側が改ざんイベントのハンドリングに何らかの役割を果たすかもしれないみたいだけど、それが起きたことを認識するだけだといいな。もしRootシェルを先に取得できれば、改ざんイベントによってセキュリティキーが消去されるのを防ぐ機会につながる可能性があるからね。

ofjcihen 2025/06/01 16:37:32

こういうのを調べるのはいいね…でも、なんでいきなり開けて改ざん状態をトリガーしたんだ?ほとんどのリーダーにそれがあるの知らなかったのかな?改ざん状態で行われる実際のテストは無意味かもしれない。Rootシェルはリセット目的で改ざん状態がトリガーされた後も使えるのかもしれないけど。とにかく、開けるのは最後に試すことのように思えるけどね。

記事一覧へ

海外テックの反応まとめ
著者
海外テックの反応まとめ
暇つぶしがてらに読むだけで海外のテックニュースに詳しくなれるまとめサイトです。