問題タブ [exploit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - シリアシェルがしているハッカースクリプトは何ですか?
エクスプロイトを介してファイルがアップロードされた後にサイト修正を行う。ファイルを調べた後、「SyrianShell」という名前のスクリプトを発見しました。
私はそれのバージョンをpastebinで見つけました:http: //pastebin.com/raw.php?i = MWRJYFyZ
誰かがそれが主な目的であることを知っていますか?そして、それはシステムをどれだけ深く利用することができますか?
私はこの特定のサーバーをクリーンアップする必要があるので、誰かがそれを経験したことがあれば、私はあなたの助けに感謝します。ありがとう。
アップデート
スクリプトの表示を要求しているすべての奇妙な子供ハッカーのために、この貼り付けは更新されます:
c++ - C++バッファオーバーフロー
私はC++でのバッファオーバーフローと悪用について自分自身に教えようとしています。私はせいぜい中級のC++の人なので、我慢してください。私はいくつかのチュートリアルに従いましたが、ここに私の質問を説明するためのいくつかのサンプルコードがあります:
ここには、さまざまな種類の悪いjujuが含まれていることを知っています。とにかく、とに入力する文字が多すぎると(たとえばcin << String
、1トン) 、VisualStudioからアクセス違反が発生します。ただし、20ishを入力し、次にスペースを入力し、次に別のを入力すると、 (スペース文字が前の呼び出しを返した後に埋められたと仮定して)要求をスキップし、アクセスを許可します。A
cUser
cPass
A
A
cUser
cPass
cin
どの時点で、なぜ、データが「認証」にオーバーフローするのか、そしてなぜそれは私がスペースを持っているときにのみ発生し、100万を持っているときは発生しないA
のですか...スペースを使用すると「アクセス違反」が発生することはありませんの入力でcUser
。
javascript - htmlonclickエクスプロイトがアンチウイルスを狂わせる
誰かが次のような理由を知っていますか?
ほとんどのウイルス対策ソフトウェア(McAfee mcshield.exeなど)を混乱させますか?彼らが保護しようとしているエクスプロイトは何ですか?多くのプログラム(mcafeeおよびnorton)は、リンクの数とともに指数関数的に増加するように見えるいくつかの異常な計算を実行します。このような数百のリンクは、ページが使用可能になる2分前に1ページになる可能性があります。彼らは何をしているのだろうか?
それらを<A href="javascript:javascript_foo_function(1,'foo',34);">
アンチウイルスに変更すると、問題はなく、過度のCPU使用率は発生しませんでした。
glibc - Glibc 2.12.1 によるヒープの活用
良い結果が得られずに検索してきました。
Malloc Maleficarum や Malloc Des-Malleficarum としてテキストで説明されている手法は、glibc バージョン 2.12.1 で有効かどうか疑問に思います。
2 番目のテキストでは、手法は glibc バージョン 2.7 および 2.8 でテストされていると書かれているため、私の glibc バージョンで機能するかどうかはわかりません。もちろん、テストすることはできますが、最初に、それらだけでは非常に難しいテクニックであり、一方で、それらが機能しない場合、それが glibc のバージョンによるものなのか、それとも私のせいなのかはわかりません。 .
さらに、実際のヒープエクスプロイトは見つかりませんでした。また、これらの glibc バージョンで実装された変更を見つけることができませんでした。
前もって感謝します。
php - このPHPエクスプロイトコード(私のアプリにあります)は正確には何ですか?
クライアントのサイト(wordpress)の1つのすべてのphpファイルのbase 64でこのコードを見つけ、それが何をするのかを理解しようとしています。
また、このコードを通過したのがアプリケーションのエクスプロイトなのか、直接FTPアクセスなのかを調べようとしています。
すべては、関数へのコールバックの設定setup_globals_777()
から始まります。ob_start('mrobh')
mrobh($content)
gzdecodeit ($decode)
次に、面倒なところから始まる場所への呼び出しがあります。
ページのコンテンツを取得して変更しているようです。今、私は特定の変更を検出し、2番目のものを含むすべての機能を理解しようとしていますgzdecodeit()
。
誰かがそれに光を当てることができますか?
呼び出し
コールバック:
セットアップ機能(わかりやすい)
コールバックの実行後に呼び出される最初の関数:
ここで魔法が起こります。
$decode
varは、によって取得されたアプリケーション出力であるため、他の使用可能な関数の呼び出しを確認できず、この関数が実際にデコードしているものを理解できません。ob_start()
使用可能なすべての機能(後base64_decode()
):
security - バッファ オーバーフロー エクスプロイトは依然として実用的な侵入方法ですか?
多くのビルトイン (ユーザーによる追加ではない) セキュリティ対策により、バッファ オーバーフロー エクスプロイトは依然として実用的な侵入方法ですか?
バッファ オーバーフローを無効にする主なセキュリティ対策は何ですか?
security - metasploits の meterpreter ペイロードについて
メータプリタの仕組みについて、より深い知識を得たいと思います。次のコマンドで msfpayload によって作成されたペイロード windows/meterpreter/reverse_typ を逆アセンブルする場合:
次の結果が得られます。
このコードの意味をよりよく理解するにはどうすればよいですか? Meterpreter ペイロードが実際にどのように機能するかを理解したいのですが、残念ながらどこから始めればよいかわかりません。
IDA を使用してコードを調べることから始めましたが、それ以上のことはできませんでした。
読んでさらに勉強するためのリンクやリソースは大歓迎です!
c - ヒープオーバーフローを使用して任意のデータを書き込む
私はヒープオーバーフロー攻撃の基本を学ぼうとしてきました。私は主に、攻撃の基礎としてチャンクメタデータの破損または変更を使用することに関心がありますが、他の提案も受け入れています。私のエクスプロイトの目標は、printf()
関数ポインターを関数ポインターのそれで上書きすることであるべきだと知っていますchallenge()
が、その書き込みを実現する方法がわからないようです。悪用したい次のコードがあります。これはmalloc
fromを使用していglibc 2.11.2
ます。
明らかに、割り当てられたチャンクのメタデータの実際の上書きを実現することは簡単です。ただし、標準的な手法を使用してこのコードを悪用する方法を見つけることができませんでした。私は以下の手法を読み、実装しようとしました。
- 論文:ヒープオーバーフローに関するw00w00
- 論文は非常に明確ですが、この
unlink
手法はしばらくの間廃止されています。
- 論文は非常に明確ですが、この
- Malloc Maleficarum.txt
- このホワイトペーパーでは、w00w00の時代からのエクスプロイト手法を拡張し、新しいバージョンのglibcについて説明します。ただし、このペーパーで詳しく説明されている5つの手法を考えると、上記のコードがこれらの手法の前提条件のいずれにも一致することはわかりません。
- ヒープを壊して理解する(pdf)
- pdfは、ヒープがどのように機能するかについてかなり良いレビューを提供しますが、ダブルフリーテクニックに焦点を当てています。
私はもともと、inputCのチャンクのサイズ値を操作してこのコードを悪用しようとしたため、inputCチャンクの先頭を指すようになりました。それがうまくいかなかったとき、私はさらにinputBのチャンクを指してみました。そのとき、新しいglibcがサイズ値の健全性チェックを実行することに気付きました。
割り当てられたチャンクのメタデータを任意の値に編集し、GOTの値を上書きしたり、他の任意のアドレスに書き込んだりする機能があると仮定して、ユーザーはどのようにして無料を利用するエクスプロイトを作成できますか?
注:「任意のアドレス」を書き込む場合、メモリページは読み取り専用または保護されている可能性があることを理解しています。つまり、書き込み可能と見なすことができるアドレスを意味します。
security - gets() ROP エクスプロイトを使用した Windows コンソール アプリケーション
私は (学習目的で) リターン指向プログラミング (ROP) 手法を使用して gets() 関数の脆弱性を利用しようとしています。ターゲット プログラムは、ある時点で何らかの入力を要求し、gets() を使用して入力をローカルの 80 文字長の配列に格納する Windows コンソール アプリケーションです。
先頭に 80 個の「a」文字 + いくつかの余分な文字 + 古い EIP ポインターを上書きするための 0x5da06c48 アドレスを含むファイルを作成しました。
テキスト エディターでファイルを開き、内容を入力としてコンソールにコピー アンド ペーストします。IDA Pro (または OllyDbg) を使用して gets() 関数から戻った直後にブレークポイントを設定しましたが、アドレスが壊れていることに気付きました - 0x3fa03f48 (2 つの 3f 置換) に設定されていました。
私は他のアドレスも試しました - それらの一部はうまくいきますが、ほとんどの場合、アドレスが壊れています (文字が抜けたり、置換されたり、切り捨てられたりすることがあります)。
この問題をどうやって乗り越えますか?どんな提案でも大歓迎です!
assembly - スタックが開始するアドレスは、繰り返し可能な悪用を可能にするのに十分予測可能であるが、予測不可能に見えるのはなぜですか?
私は最近、エクスプロイトとシェルコードを書くことを自分自身に教えてきました。ガイド/本の多くは、スタックがどこから始まるかを推測できると主張しているため、少しの作業で、シェルコードがスタックのどのアドレスから始まるかを推測できます。
- スタックの開始アドレスが予測可能であるのはなぜですか?スタックはメモリ内のランダムなアドレスから開始するべきではありませんか?
- スタックのアドレス開始が仮想アドレス空間の固定オフセットである場合、それがマシンごとに異なるのはなぜですか?
- 異なるプラットフォーム間の許容誤差とスタックの開始アドレスはどれくらいですか?
関連:「スタックはすべてのプログラムで同じアドレスで始まります」、ハッキングによるアドレスの問題:悪用の芸術、なぜスタックアドレスはメモリアドレスの減少に向かって成長するのですか?
編集私のテストでは、アドレス空間配置のランダム化(ASLR)がオフになっています。