LinuxではWindowsと違って、メールに添付されたマルウェアをクリックさせて感染させるのは無理だと思っていたのだが、そうでもないらしい。
200 :login:Penguin:2017/01/05(木) 19:26:43.14 ID:iZInpNx5
 > ~/.local/share/applications/ においた jd.desktop は実行ビットを立てないといけない
 そのへんは各アプリケーションの実装次第

 アイコンや見かけ上の名前も自由に出来るせいでWindowsで言う二重拡張子と全く同じセキュリティの問題に直結するから本来規格でそのへんの扱いもきちんと定めるべきなのに一向にそうなる気配がないんだよなぁ
201 :login:Penguin:2017/01/05(木) 19:47:13.64 ID:gemnoZes
 そうか?
 二重拡張子よりはマシな気がするけど

202 :login:Penguin:2017/01/05(木) 20:40:56.10 ID:iZInpNx5
 例えばどんな所がマシ?
203 :login:Penguin:2017/01/05(木) 20:57:50.22 ID:gemnoZes
 二重拡張子で偽装されたWindows向けのマルウェアは単体で動作するじゃん
 だからメールに添付してクリックさせて感染させたりできる
 Linuxの.desktopファイルは単体では動作しないから、
 メールの添付ファイルとしてばら撒く方法は使えない
 その辺がマシかと思うんだが

204 :login:Penguin:2017/01/05(木) 21:13:17.63 ID:iZInpNx5
 あーなるほど
 展開の一手間は増えるけどアーカイブにしとけば良いだけだけだからマシって言えるほどの違いかは微妙だけど確かにそういう側面もあるか
205 :login:Penguin:2017/01/05(木) 22:37:15.47 ID:jbQxSzh2
 アーカイブにまとめた場合もdesktopファイルはexeファイルよりも手間がかかる。
 Windowsのexeの場合は、

 zip展開 → 偽装したexeを実行 → マルウェア感染\(^o^)/

 だけど、Linuxのdesktopファイルの場合はマルウェアのフルパスが必要だから、

 (攻撃者が想定した場所に)zip展開 → 偽装したdesktopファイルを実行 → マルウェア感染\(^o^)/

 となる。
 フルパスじゃなくてマルウェアのファイル名だけでも実行は可能だけど、
 その場合はマルウェアをパスが通った場所に置かないと駄目なので、

 (パスが通った場所に)zip展開 → 偽装したdesktopファイルを実行 → マルウェア感染\(^o^)/

 となる。

 感染させるにはメール本文を工夫して、zipを想定した場所に展開させる必要があるので、
 exeよりはまぁちょっとはマシかなって感じ。
206 :login:Penguin:2017/01/05(木) 23:38:20.07 ID:iZInpNx5
 >>205
 > フルパスが必要
 > パスが通った場所に置かないと駄目
 Exec行を具体的にどう解釈して実行するかはこれまた実装次第なんだけど必ずしも攻撃者がフルパスを知っている必要やパスが通っている必要はないよ
 規格で.desktopファイルの置いてあるパスを表す%kっていうフィールドコードが定義されてるから

 例えばPCManFMなんかは Exec=sh -c "%k/app" みたいにすれば%kが.desktopファイルの置いてあるパスに展開されるからそのまんま実行される
215 :login:Penguin:2017/01/06(金) 14:52:41.75 ID:adPksY7M
 >>206
 > 規格で.desktopファイルの置いてあるパスを表す%kっていうフィールドコードが定義されてるから
 お、それは知らなかった。
 試してみたけど、

 > みたいにすれば%kが.desktopファイルの置いてあるパスに展開されるからそのまんま実行される

 これはNautilusは未対応みたいだな。ちょっと安心。

http://hayabusa6.2ch.net/test/read.cgi/linux/1482659445/
より

試しにLeafpadの実行ファイルをデスクトップに移動させ、leafpad.desktopをデスクトップにコピーして編集して実行してみた所、たしかにPCManFMではLeafpadの起動に成功、Ubuntuのファイル(Nautilus)とThunarは未対応らしく起動できなかった。