2011-01-07 28 views
-1

私の会社のサーバーに保存されているaspxページのソースを取得する必要があります。サーバーにアクセスできない(またはサーバーの言語私のPCでHTA localyを使用しています。telnetとJavaScriptを使用してhtml/aspxソースコードを取得する

私はこのコードを書いた:(JavaScriptの)

var WshShell = new ActiveXObject("WScript.Shell"); 
     WshShell.Run("telnet -fh:/telnetlog.txt xxx.xxx.xxx.com 80"); //The host address 


setTimeout("WshShell.SendKeys('GET /subfolder/page.aspx HTTP/1.0~~')",1000); 

をそれは多くのページで、自宅で働いていたが、今私はHTTP/1.1 401を持っている...

を、私はそれについて何ができますか? IEからこのページに問題はありません。 他のアイデアも考えられます!

おかげで、 ロテム

+0

私は混乱しています...適切に設定されたサーバーを想定し、Webサーバーのポート80にtelnetingし、aspxかhtmlかどうかに関わらずページを要求すると、aspxソースコードではなくHTMLページが返されます。ブラウザでソースを見ると同じことになります。それはおそらく以前にaspxコードを取得することができますか? – Jeff

+0

@ジェフ:2つの方法があります。最初は、誤って構成されたサーバーが関わっています.netがインストールされていないため、IISはテキストファイルであるかのように見つけられた.aspxページの内容を処理します。 2番目のパッチはパッチの適用されていないサーバー(恐らくパッディング・オラクル攻撃を使用しているサーバー)を必要とします。いずれにせよ、これは本番システムでは決して動作しないはずです。 – NotMe

答えて

1

401は、サーバはおそらくNTLMで、認証したいことを意味します。私は真剣にJScriptとtelnetを使ってNTLMを実装することが可能か疑問に思います。

HTAは通常のWebページよりもセキュリティが低く実行されます。そのため、クロスサイトXmlHttpRequestを使用してページを取得できる場合があります。これはIEのセキュリティレイヤーを経由します。これは、ブラウザからNTLMの資格情報を要求する必要があります。 HTAからXmlHttpRequestのを使用して


あるだけで、ブラウザからの1つを使用してのような:

var url = "http://my-server/my-page.aspx"; 
var xhr = new XMLHttpRequest(); 
xhr.onreadystatechange = function() { 
    if (xhr.readyState == 4) { 
     do_something(xhr.responseText); 
    } 
} 
xhr.open("GET", url, true); 
xhr.send(); 

responseTextパラメータをサーバの応答(HTML)が含まれています。

また、独自のサポートコードを書く代わりに、jQueryのようなjavascriptライブラリを使用できるようにする必要があります。

+0

これは動作しません、私は 'xhr.open( "GET"、url、true)という行にエラーが発生します。 'これは私のサーバーではないのでしょうか? – Rotem

1

私は理解しています: アクセス権のないサーバー上のWebページのaspxコードをダウンロードしますか?真剣に?

ネットワーク管理者に電話するだけです。あなたが本当にその会社のために働いていて、この情報を得る権限があるなら、彼らはあなたを助けることができます。

もしそうでなければ、私はあなたのためにマシンをハックしようとするよりも、心のより良い存在があることを願っています。

+0

私はこの会社で代表者として働いていて、コンピュータシステムに関連する仕事ではありません。私はこのHTAをいくつか作りました。その中には、1つのクエリを持つaspxページがあります。同じ方法でクエリを送信する私のHTAのページを構築しますが、応答を取って、その中で重要なものを見つけて、それらを強調します..どんな考えですか? – Rotem

関連する問題