問題タブ [selinux]
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.
node.js - SELinux サンドボックス内での Node.JS スポーン
ユーザー入力をサーバー側コマンドにリダイレクトする Node.JS アプリケーションを構築しています。もちろん、それはセキュリティに壊滅的な影響を与える可能性があるため、子コマンドをSELinux サンドボックス内で実行したいと考えています。(アプリケーション全体をサンドボックス内で実行したくありません。これは、エンド ユーザーがそれぞれサーバー上に独自のワークスペースを持つことを望んでいるためです。)
たとえば、コマンドを考えてみましょうcowsay
。サンドボックス化されたカウセイを実行するには、単にsandbox cowsay
. 舞台裏のセキュリティの違いを除けば、 のインターフェースsandbox cowsay
は plain のインターフェースと同じでなければなりませんcowsay
。
ただし、Node.JS はこれら 2 つのアプローチに対して異なる対応をします。次のコードを検討してください。
行 A を含むバージョンの出力を次に示します。
しかし、代わりにB行を含むバージョンの出力は次のとおりです。
つまり、Node.JS はサンドボックスの子プロセスからストリームを読み取っていないようです。
このテストは、任意のコマンドを使用して実行できます。たとえば、python コマンド インタープリターを使用したとします。ここで何が起こるかというと、サンドボックスpython
化されていないものは Node.JS から stdin に何かが供給されるのを待ちますが、サンドボックス化されたものはpython
待機せずに単にコード 0 で存在します。
この動作は、SELinux が「enforcing」モードの場合にのみ発生します。サンドボックス バージョンは、SELinux が「許可」(非強制) モードの場合に正常に動作します。
Node.JS がサンドボックス化されたコマンドをサンドボックス化されていないコマンドと同じように扱うには、何が必要ですか?
android - SEandroid 起動時の問題
現在、SEandroid (セキュリティが強化された Android) を Nexus 7 にフラッシュする作業を行っていますが、起動しようとすると、Nexus 7 は Google 画面をフラッシュするだけで、他には何もありません。
4.2.1 と 4.1.2 の両方の SEandroid ソース コードを正常にコンパイルしましたが、Nexus ではどちらも実行されませんでした。
デバイスの起動時に画面に何も表示されない場合によくあるエラーは何だろうかと思っていませんか?
http://selinuxproject.org/page/SEAndroidに従ってコードをダウンロードしてコンパイルしました。
カーネルに tegra3_android_defconfig を使用しており、full_grouper_userdebug を使用しています。
SEandroid に関係なくても、どんな助けでも役に立ちます。
logcat からの出力は次のとおりです。
ありがとうございます。
zend-server - Zend Server 6.0.1 へのアップグレードを試みています
現在、Red Hat Enterprise Linux Server リリース 6.4 (Santiago) で Zend Server 5.6.0 (PHP 5.3) を実行しています。
Zend Server 6.0.1 にアップグレードしようとしていますが、自動的に (install_zs ファイルを介して) 試しても、手動で (/etc/yum.repos.d/zend.repo を編集して) 試しても、同じメッセージが表示されます。
--skip-broken を使用すると問題が発生する可能性があるため、使用することに消極的です。
SELinux はサーバーにインストールされていますが、無効になっていることを指摘しておきます。/etc/selinux/config ファイルを編集してこれを確認しました。
ファイル /usr/sbin/semanage が存在しません。なぜSELinuxをインストールするようになったのかを調べるために私が行った掘り下げは、インストールされており、最新バージョンです。
他の誰かがこの問題を抱えていますか?
bash - CentOS 6.4でincrondが実行されているがコマンドが実行されていない
EPEL リポジトリから incron をインストールしました (質問する前に; はい、ソースをダウンロードしてローカルでコンパイルしようとしました; 同じ結果です)。CentOS 6.4 (最終) 仮想ボックスでプロセスをセットアップしようとしていますが、これはプロトタイプ化に成功しています。私のローカルUbunto 12.04マシンで:
前もっていくつかの情報:
- SELinux は PERMISSIVE に設定されています
- スクリプトを追加し、NOPASSWD を使用してすべての実行可能ファイルを呼び出して
visudo
、いくつかの権限の問題を回避しました...
コマンドラインからスクリプトを呼び出すとsudo /path/to/my/script.sh arguments
、魅力的に機能します。
sudo service incrond status
incrond が実行されていることを確認します。root と myusername が に追加され/etc/incron.allow
、/etc/incron.deny
空です。
ルートの私の incrotab は次のとおりです。
イベントの/path/to/dropfolder/
結果、まったく何も起こりません。フォルダー内のファイルに対して、ログは生成されず、メッセージもアクションも発生しません。
だから私は調査しcron
ました:最小限の環境で実行され、複雑なコマンド/スクリプトを実行する.bashrc
には、cronコマンドの先頭でPATHを実行および/またはエクスポートする必要がある場合があることが示唆されました。
注:最小限の環境でも動作することをサポートするドキュメントは見つかりませんが、私の google-fu (および bing-fu!) は、私が考えた WTH にincron
直接関連する有用な結果をもたらさなかったので、試してみます!incron
編集:ドキュメントはincron
、システムテーブルから実行するか、ルートがホスト環境からenvを取得することを示しているため、incron
ルート以外のユーザーによって実行される場合にのみ、何らかの種類のenvまたはPATHの調整が必要です
つまり… root の incrontab:
ダイスなし…&&
代わりに試みた;
=ダイスなし。上記のバリエーションを思いつくことができれば、私はおそらくそれを試しました…
では、ちょっとしたrestorecond -R /usr/sbin/incrond /etc/incron*
行動をしてみましょう!うーん、そこも変わらない。
service incrond stop
続いてservice incrond start
、そしてservice incrond restart
…いいえ、いいえ、そしていいえ。
抜本的な対策:yum remove incron
とyum install incron
、chkconfig incrond on
そして適切な対策としてsudo reboot
!
何もない。
からは何も得られないため、 が疎な環境で実行されているかどうかを確認する/tmp/ IN_ALL_EVENTS echo boo>>/home/myusername/boofile.txt
ことさえできません… (上記の注を参照)env>>envfile.txt
incron
それでも:service incrond status
利回りincrond (pid xxxx) is running...
私は何が欠けていますか?それは大きくて明白でなければならず、誰かが私をすぐに馬鹿だと感じさせてくれることを願っています!
さらに検査すると、次の/var/log/cron
ような結果が得られます: Aug 14 15:05:30 hostname incrond[1584]: (root) CMD (sudo /path/to/DropFolder/script/subfolder/script-Beta-1.sh /home/username/DropFolder/testfile.file)
-yes I made sure my script was executable..
したがって、incrond は確かに何かを実行しようとしていますが、どこにも出力が得られません...単純な結果でもecho > /dev/pts/0
nadaの結果が生成されます。
- 私のがらくたの書式設定ジョブを修正してくれてありがとう
wordpress - Centos 6 ランプ サーバー セキュリティ
この 1 週間で、centos6 ランプ サーバーをインストールし、ウェブサイト用に wordpress を、フォーラム用に phpbb をセットアップしました。セキュリティに関する限り、お勧めの対策はありますか? 私がワードプレスについて読んだことから、セキュリティのためのプラグインと、管理者アカウントの変更や削除などの方法があります。phpbb については、どうすればよいかわかりません。ただし、私の主な焦点はサーバーにあります。これは私がセットアップした最初のサーバーだったので、安全ではないことはわかっています。mod_security と mod_evasive は良い対策だと読みました。当面の間、フォーラム ページを表示できないため、selinux を無効にしました (何をすべきかについてのアイデアはありますか?)。どんな助けでも大歓迎です。