信頼できないローカルユーザーからMac Proをリモートで保護するパニックスクリプトを作成する[非公開]


12

状況

ワークステーションで「Shady Sam」管理者アクセスを許可し、一時的なルートログインパスワードを与えることで、Mac Proで重要な管理タスクを実行するとします。(彼ら信頼できると仮定してください。おそらく私の会社のシステム管理者です。)

遠隔地(自宅など)から、MacBook Proラップトップを使用してSamの活動を観察し、リモートデスクトップ(VNC)を介して自分でタスクを実行する方法を学びます。

警告なしに、Shady Samはなんともひどいことをします!おそらく、彼が私のハードドライブからデータを削除しようとしている、または制限されたフォルダーなどを覗き見しているのを目にします。

マウスとキーボードを共有しているため、リモートデスクトップ内からアクションを確実に実行できませんでした(接続を閉じることができました)。スクリプトを作成して、リモートで実行する必要があります。

チャレンジ

最高のスクリプト(例えば何panicScript.shpanicScript.py)私は彼の卑劣な行為を行ってからシェイディーサムを停止するためにリモートで実行することができますし、それを再度試みるから彼を防ぎますか?

次の方法で実行することを想定しています。

scp panicScript.sh remoteMachine:~/panicScript.sh
ssh remoteMachine . ~/panicScript.sh

可能な機能:

他のアイデアは特に奨励されています!

  • remoteMachine上の任意/すべてのアカウントのパスワードを変更する
  • キーボードまたはマウスを無効にします
  • モニターを無効にします
  • マシンを再起動します

仮定

シェイディサムはどのような方法でのMac Proが損傷したり、コンポーネントのいずれかを削除する(例えば、物理的にハードドライブまたは有線ネットワーク接続を削除する)が、彼はしませんでしょう再ログインしようとし、彼の卑劣な行為、可能な限り迅速に続けています。サムは、(そうでなければ)コンピューターへの無制限の物理的アクセス権とルートログインパスワードを持っています。

Mac Proには、モニター、キーボード、マウス、外付けハードドライブ、およびインターネット用のイーサネット接続があると仮定します。共有エリアのネットワークプリンターに印刷できると仮定します。楽しみのために、私の同僚と同じ複数の同僚のワークステーションに標準ユーザーアカウントがあるとします(したがって、を介してマシンに接続できますssh)。

同僚が立ち上がって互いに会話できるように、12個の屋外のキュービクルが集まっていると仮定します。私の同僚は、しかし、一般的に意志はない、彼は過去にそれらのいくつかを支援してきましたし、自分のコンピュータに卑劣なことをしなかったので、彼らは私のコンピュータで彼を見たらシェイディサムは卑劣な何かをやっていると思われます。

制約

パニックスクリプトは、最初は自宅のラップトップにあります。あなたのことができscp、それは私のマシンへとそこにそれを実行、または自宅で私のラップトップから直接実行します。(応答で指定してください!)

スクリプトによって実行されるすべてのアクションは、リモートロケーションから後でアクセスできるように、リモートロケーションから損傷を与えたり、元に戻せないものでなければならず、Mac Proの標準機能/コマンドでなければなりません。

スクリプトは、マシンに標準装備されている限り、他のスクリプト/プログラムを呼び出すことができます。コマンドラインスクリプトツール(例awk)は、コマンドがメインスクリプト(例history | awk '{print $2}')に含まれている限り問題ありません。これにより、使用できるスクリプト言語が明らかに制限されます。

作成したカスタムスクリプトまたはプログラム(例:)を呼び出すことは. ~/myOtherScriptOfKungFoo.sh、スクリプト内から生成し、生成されたスクリプトが32文字未満でない限り、問題ありません。

echo -e "#"'!'"/bin/bash\necho \"Hello, World\"" >> test.sh
chmod +x test.sh
. test.sh 

スクリプトを複数回操作する必要はありません(パスワードを入力するなど)。

基準

スクリプトは短く(30行の上限)、しかも読み取り可能である必要があります。主な基準は、徹底性、創造的な機能、スタイルであり、シンプルさよりも優れています。

最終的に、最も多くの票が勝ちます!


28
アドバイス:Shady Samという名前の人を雇わないでください。
ジオビット

回答:


10

パニックスクリプトは、scpを使用してリモートマシン(Mac Pro)に送信してから実行する必要があります(sudoまたは入力は不要です)。

スクリプトは次のとおりです(これは、あなたがJohn Smithであると仮定しています)。

#!/bin/bash -m
f() {
 while true
 do
  pmset displaysleepnow
  sleep 0.1
 done
}
f&
while true
do
 osascript -e "set Volume 10"
 say -v Ralph "Stop Shady Sam now. He is trying to do something he is not allowed to."
 for n in {1..10};
 do
  afplay /System/Library/PrivateFrameworks/ScreenReader.framework/Versions/A/Resources/Sounds/Hit.aiff
  sleep 0.05
 done
 sleep 0.1
 say -v Ralph "This is John Smith speaking."
done

最大の効率を得るには、部屋のすべてのマシンでこれを実行して、誰もが問題に気づき、彼を止めるようにします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.