これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド paxctl です。
プログラム:
NAME
paxctl - PaX フラグを制御するユーザー空間ユーティリティ
構文
paxctl
DESCRIPTION
paxctl は、PaX フラグをバイナリごとに変更できるようにするツールです。 PaX はその一部です
一般的なセキュリティを強化するカーネル パッチと安全なディストリビューション (GrSecurity など)
それぞれ、Hardened Gentoo です。 システムは適切にパッチが適用されたシステムを実行している必要があります。
このプログラムが効果を発揮するようにカーネルを構成しました。
-P ページングベースの非実行可能ページを強制する (PAGEEXEC)
-p ページングベースの非実行可能ページを強制しません (NOPAGEEXEC)
-E トランポリンをエミュレートする (EMUTRAMP)
-e トランポリンをエミュレートしないでください (NOEMUTRAMP)
-M 安全なメモリ保護を強制する (MPROTECT)
-m 安全なメモリ保護を強制しません (NOMPROTECT)
-R メモリ領域のランダム化 (RANDMMAP)
-r メモリ領域をランダム化しない (NORANDMMAP)
-X 通常の (ET_EXEC) 実行可能ファイルのベース アドレスをランダム化する (RANDEXEC)
-x 通常の (ET_EXEC) 実行可能ファイル (NORANDEXEC) のベース アドレスをランダム化しない
-S セグメンテーションベースの非実行可能ページを強制する (SEGMEXEC)
-s 非実行可能ページに基づくセグメンテーションを強制しません (NOSEGMEXEC)
-v フラグを表示する
-z すべてのフラグをリセットします (その他のフラグは引き続き適用されます)
-c PT_PAX_FLAGS プログラム ヘッダーが存在しない場合は、変換して作成します。
PT_GNU_STACK プログラム ヘッダー (存在する場合)
-C PT_PAX_FLAGS プログラム ヘッダーが存在しない場合は、新しいプログラムを追加して作成します。
可能であればヘッダー
-q エラーメッセージを抑制する
-Q 短い形式のレポートフラグ
警告
カーネルと
バイナリはそれを使用する必要があります チャパックス代わりに (1) (PT_PAX_FLAGS を使用することをお勧めします)
ただし、-c または -C と一緒に使用します)。
PT_GNU_STACK を PT_PAX_FLAGS に変換すると、前者の情報は
破棄されている場合、特に EMUTRAMP PaX オプションが適切に設定されていることを確認する必要があります。
新しく作成された PT_PAX_FLAGS 内。 安全な方法は、まず EMUTRAMP を無効にし、PaX の場合は無効にすることです。
ネストされた関数トランポリンからのスタック実行試行をレポートし、それを有効にします。
新しい PT_PAX_FLAGS は、binutils/ld 自体が作成するのと同じ状態で作成されることに注意してください。
生成します (-zex と同等)。
バイナリで PT_PAX_FLAGS と拡張属性 PaX フラグの両方を使用する場合は注意してください。
その場合、それらはまったく同じである必要があります (RANDEXEC を除く)。
RANDEXEC は、2.6.13 以降、PaX カーネルではサポートされなくなり、paxctl フラグが設定されることに注意してください。
そこでは単に無視されます。
paxctl は、変更するファイルのバックアップ コピーを作成しないことに注意してください。
paxctl はネイティブ アーキテクチャのバイナリでのみ動作することを意図していますが、
ネイティブバイナリと同じエンディアン性を持っている限り、外部バイナリでも動作するはずです
アーキテクチャ (例: i386 paxctl は amd64 またはリトルエンディアンアームでは動作するはずですが、
ビッグエンディアンミップバイナリ)。
onworks.net サービスを使用してオンラインで paxctl を使用する