SlideShare a Scribd company logo
CMS on SELinux (やってみた編)


         日本セキュアOSユーザ会
                石川 裕基
Agenda

1. SELinux の概略

2. CMS on SELinux
1. SELinux の概略
SELinux の概略 (アクセス制御(TE))

   「誰(Subject)が何(Object)に対して何を
    するか(Action)」の巨大なルール集
   事前に許可をした動作のみを可能にする
        httpd プロセス が A.html に対して読み込みをする


    Subject, Object, Action の例
    Subject     Process
    Object      File / Directory
    Action      Read / Write / Link
SELinux の概略 (ラベル)

   Subject, Object に付与された特殊な文字列
   全てのSubject, Object にはラベルが付与される
       Subject に付与されるラベル = ドメイン
       Object に付与されるラベル = タイプ


    付与されるラベルの例
    httpd                 httpd_t
    /var/www/html(/.*)?   http_sys_content_t
    /etc/shadow           shadow_t
SELinux の概略 (アクセス制御とラベル)

   Subject, Object 付与されたラベルを
    もとにアクセス制御を行う

    (httpdプロセス) の (A.html) に対する
    (読み込み)を許可




    (httpd_t) の (httpd_sys_content_t) に
    対する (read) を許可
2. CMS on SELinux
CMS on SELinux (前提条件)

以下の環境下で動作検証を行う
OS(Linux) CentOS                5.2
SELinux   Targeted Policy    2.4.6-137
  Web     Apache               2.2.3
  PHP     -                    5.1.6
   DB     MySQL              5.0.45-7
          XOOPS
  CMS                         1.0.1b
          (ホダ塾ディストリビューション)

※ アプリケーションは全て yum を使用してインストールをする
CMS on SELinux (必要なAction)

   XOOPS が動作するために必要なAction
    1.   httpd から XOOPS を読み込みができる
    2.   httpd から XOOPS に書き込みができる
    3.   httpd から XOOPS DBに接続ができる
    4.   適切なラベルを付与する


   最も簡単な方法を紹介
CMS on SELinux (必要なAction)
1. httpd から XOOPS を読み込みができる
  XOOPS を Apache (httpd_t) から
  読ませて良いファイルとして設定する

  Webコンテンツに付与されるラベルは
  一般的には httpd_sys_content_t である

  /var/www/html 以下に配置されたファイルには
  httpd_content_t が付与される

  ⇒ /var/www/html 以下に XOOPS を配置する
CMS on SELinux (必要なAction)
2. httpd から XOOPS に書き込みができる
  httpd_sys_content_t は httpd_t からの
  読み込みのみを許可する

  Boolean値と呼ばれるものを変更することで
  書き込みを可能にすることができる

  変更するBoolean値は
  「httpd_builten_scripting」である

  ⇒ # setsebool -P httpd_builten_scripting 1
CMS on SELinux (必要なAction)
2. httpd から XOOPS に書き込みができる(※)
  前述の場合、全ての httpd_sys_content_t に
  影響を及ぼす

  書き込みを行いたい対象のみを httpd_t から
  書き込ませて良いものとしてラベリングする

  httpd_t の 書き込みを許可するラベルは
  httpd_sys_script_rw_t である

  ⇒ # setsebool -P httpd_builten_scripting 0
  ⇒ # semanage fcontext -a -t httpd_sys_script_rw_t ‘/var/www/html/hd(/.*)?’
CMS on SELinux (必要なAction)
3. httpd から XOOPSのDB(mysql) に接続できる
  local に存在するの DB に接続する場合は
  対応する必要はない

  外部の DB を使用する場合は
  Boolean値を変更する必要がある

  変更するBoolean値は
  「httpd_can_network_connect_db」である

  ⇒ # setsebool -P httpd_can_network_connect_db 1
CMS on SELinux (必要なAction)
4. 適切なラベルを付与/再構築する

  SELinux はラベルを用いてアクセス制御を行う


  ラベルが適切に設定されていない場合、
  不正なアクセスとして処理される


  適切なラベルを付与/再構築する


  ⇒ # touch /.autorelabel && shutdown -r now
    # restorecon -RF -v /var/www
  (または、)
Demo

   時間があれば Demo をします。

More Related Content

What's hot

Osc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 jOsc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 j
Akira Yoshiyama
 
LinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみようLinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみよう
Masataka Tsukamoto
 
講座Linux入門・サーバOSとしてのLinux
講座Linux入門・サーバOSとしてのLinux講座Linux入門・サーバOSとしてのLinux
講座Linux入門・サーバOSとしてのLinux
Tokai University
 
自分のPcに仮想環境を作ってlinuxをインストールしてみよう
自分のPcに仮想環境を作ってlinuxをインストールしてみよう自分のPcに仮想環境を作ってlinuxをインストールしてみよう
自分のPcに仮想環境を作ってlinuxをインストールしてみよう
Naoyuki Sano
 
CLT-012_インサイド UWP アプリ
CLT-012_インサイド UWP アプリCLT-012_インサイド UWP アプリ
CLT-012_インサイド UWP アプリ
decode2016
 
Kickstart, Puppet, Docker
Kickstart, Puppet, DockerKickstart, Puppet, Docker
Kickstart, Puppet, Docker
Hirokazu Tokuno
 
Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429Etsuji Nakai
 
ConoHaオブジェクトストレージ 利用ケース
ConoHaオブジェクトストレージ 利用ケースConoHaオブジェクトストレージ 利用ケース
ConoHaオブジェクトストレージ 利用ケース
Junichi Noda
 
Webサーバ勉強会03
Webサーバ勉強会03Webサーバ勉強会03
Webサーバ勉強会03oranie Narut
 
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
sakaik
 
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームするマルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
Syuichi Murashima
 
Elastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみたElastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみたYoichi Toyota
 
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
Midori Oge
 
Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像 Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像 Sho Shimizu
 
Lagopus 0.2
Lagopus 0.2Lagopus 0.2
Lagopus 0.2
Masaru Oki
 
Kubernetesできること
KubernetesできることKubernetesできること
Kubernetesできること
iPride Co., Ltd.
 
Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Pgcon2012 ori-20120224
Pgcon2012 ori-20120224
Manabu Ori
 
20130328 第03回福岡debian勉強会 debianパッケージ情報と依存関係の可視化
20130328 第03回福岡debian勉強会   debianパッケージ情報と依存関係の可視化20130328 第03回福岡debian勉強会   debianパッケージ情報と依存関係の可視化
20130328 第03回福岡debian勉強会 debianパッケージ情報と依存関係の可視化Tsuyoshi Yamada
 
RancherでMesosクラスタをデプロイしてみる的ななにか
RancherでMesosクラスタをデプロイしてみる的ななにかRancherでMesosクラスタをデプロイしてみる的ななにか
RancherでMesosクラスタをデプロイしてみる的ななにか
Masataka Tsukamoto
 
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させるEWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
Kiyoshi Sawada
 

What's hot (20)

Osc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 jOsc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 j
 
LinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみようLinuxをインストールしてWebサーバーを立ち上げてみよう
LinuxをインストールしてWebサーバーを立ち上げてみよう
 
講座Linux入門・サーバOSとしてのLinux
講座Linux入門・サーバOSとしてのLinux講座Linux入門・サーバOSとしてのLinux
講座Linux入門・サーバOSとしてのLinux
 
自分のPcに仮想環境を作ってlinuxをインストールしてみよう
自分のPcに仮想環境を作ってlinuxをインストールしてみよう自分のPcに仮想環境を作ってlinuxをインストールしてみよう
自分のPcに仮想環境を作ってlinuxをインストールしてみよう
 
CLT-012_インサイド UWP アプリ
CLT-012_インサイド UWP アプリCLT-012_インサイド UWP アプリ
CLT-012_インサイド UWP アプリ
 
Kickstart, Puppet, Docker
Kickstart, Puppet, DockerKickstart, Puppet, Docker
Kickstart, Puppet, Docker
 
Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429Gluster fs and_swiftapi_20120429
Gluster fs and_swiftapi_20120429
 
ConoHaオブジェクトストレージ 利用ケース
ConoHaオブジェクトストレージ 利用ケースConoHaオブジェクトストレージ 利用ケース
ConoHaオブジェクトストレージ 利用ケース
 
Webサーバ勉強会03
Webサーバ勉強会03Webサーバ勉強会03
Webサーバ勉強会03
 
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
 
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームするマルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
 
Elastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみたElastic searchをrailsから使ってみた
Elastic searchをrailsから使ってみた
 
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
 
Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像 Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像
 
Lagopus 0.2
Lagopus 0.2Lagopus 0.2
Lagopus 0.2
 
Kubernetesできること
KubernetesできることKubernetesできること
Kubernetesできること
 
Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Pgcon2012 ori-20120224
Pgcon2012 ori-20120224
 
20130328 第03回福岡debian勉強会 debianパッケージ情報と依存関係の可視化
20130328 第03回福岡debian勉強会   debianパッケージ情報と依存関係の可視化20130328 第03回福岡debian勉強会   debianパッケージ情報と依存関係の可視化
20130328 第03回福岡debian勉強会 debianパッケージ情報と依存関係の可視化
 
RancherでMesosクラスタをデプロイしてみる的ななにか
RancherでMesosクラスタをデプロイしてみる的ななにかRancherでMesosクラスタをデプロイしてみる的ななにか
RancherでMesosクラスタをデプロイしてみる的ななにか
 
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させるEWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
 

Viewers also liked

OpenStack & SELinux
OpenStack & SELinuxOpenStack & SELinux
OpenStack & SELinux
Hiroki Ishikawa
 
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
Kenichi Hoshi
 
TripleOの光と闇
TripleOの光と闇TripleOの光と闇
TripleOの光と闇
Manabu Ori
 
OpenStack on OpenStack
OpenStack on OpenStackOpenStack on OpenStack
OpenStack on OpenStack
OpenStack Foundation
 
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
VirtualTech Japan Inc.
 
(旧版) オープンソースライセンスの基礎と実務
(旧版) オープンソースライセンスの基礎と実務(旧版) オープンソースライセンスの基礎と実務
(旧版) オープンソースライセンスの基礎と実務
Yutaka Kachi
 

Viewers also liked (6)

OpenStack & SELinux
OpenStack & SELinuxOpenStack & SELinux
OpenStack & SELinux
 
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
 
TripleOの光と闇
TripleOの光と闇TripleOの光と闇
TripleOの光と闇
 
OpenStack on OpenStack
OpenStack on OpenStackOpenStack on OpenStack
OpenStack on OpenStack
 
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
 
(旧版) オープンソースライセンスの基礎と実務
(旧版) オープンソースライセンスの基礎と実務(旧版) オープンソースライセンスの基礎と実務
(旧版) オープンソースライセンスの基礎と実務
 

Similar to Cms on SELinux

使いこなせて安全なLinuxを目指して
使いこなせて安全なLinuxを目指して使いこなせて安全なLinuxを目指して
使いこなせて安全なLinuxを目指して
Toshiharu Harada, Ph.D
 
Hive undocumented feature
Hive undocumented featureHive undocumented feature
Hive undocumented featuretamtam180
 
簡単なHTTPサーバの作成
簡単なHTTPサーバの作成簡単なHTTPサーバの作成
簡単なHTTPサーバの作成
Panu Avakul
 
2008 08 09_osc2008nagoya_fight_cms_x_cube
2008 08 09_osc2008nagoya_fight_cms_x_cube2008 08 09_osc2008nagoya_fight_cms_x_cube
2008 08 09_osc2008nagoya_fight_cms_x_cube
Tom Hayakawa
 
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
ksimoji
 
Clrh 20121215
Clrh 20121215Clrh 20121215
Clrh 20121215
Tomoyuki Obi
 
社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ 社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
Daisuke Ikeda
 
オライリーセミナー Hive入門 #oreilly0724
オライリーセミナー Hive入門  #oreilly0724オライリーセミナー Hive入門  #oreilly0724
オライリーセミナー Hive入門 #oreilly0724
Cloudera Japan
 
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知るAI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
日本ヒューレット・パッカード株式会社
 
CentOSでつくる神Plesk
CentOSでつくる神PleskCentOSでつくる神Plesk
CentOSでつくる神Plesk
Yukihiko SAWANOBORI
 
Red Hat Storage Server 2.0 on Amazon EC2 導入ガイド
Red Hat Storage Server 2.0 on Amazon EC2 導入ガイドRed Hat Storage Server 2.0 on Amazon EC2 導入ガイド
Red Hat Storage Server 2.0 on Amazon EC2 導入ガイド
Hirofumi Kojima
 
OpenShift v3 Technical Overview
OpenShift v3 Technical OverviewOpenShift v3 Technical Overview
OpenShift v3 Technical Overview
Nakayama Kenjiro
 
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話shigeki_ohtsu
 
Hadoopの紹介
Hadoopの紹介Hadoopの紹介
Hadoopの紹介bigt23
 
sveltekit-ja.pdf
sveltekit-ja.pdfsveltekit-ja.pdf
sveltekit-ja.pdf
ssuser65180a
 
HDPをWindowsで動かしてみた
HDPをWindowsで動かしてみたHDPをWindowsで動かしてみた
HDPをWindowsで動かしてみた
adachij2002
 
実践 Reactive Extensions
実践 Reactive Extensions実践 Reactive Extensions
実践 Reactive ExtensionsShin Ise
 
LinAction Theme Docker
LinAction Theme DockerLinAction Theme Docker
LinAction Theme Docker
cyberblack28 Ichikawa
 

Similar to Cms on SELinux (20)

使いこなせて安全なLinuxを目指して
使いこなせて安全なLinuxを目指して使いこなせて安全なLinuxを目指して
使いこなせて安全なLinuxを目指して
 
Hive undocumented feature
Hive undocumented featureHive undocumented feature
Hive undocumented feature
 
簡単なHTTPサーバの作成
簡単なHTTPサーバの作成簡単なHTTPサーバの作成
簡単なHTTPサーバの作成
 
2008 08 09_osc2008nagoya_fight_cms_x_cube
2008 08 09_osc2008nagoya_fight_cms_x_cube2008 08 09_osc2008nagoya_fight_cms_x_cube
2008 08 09_osc2008nagoya_fight_cms_x_cube
 
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
 
PHP on Cloud
PHP on CloudPHP on Cloud
PHP on Cloud
 
Clrh 20121215
Clrh 20121215Clrh 20121215
Clrh 20121215
 
社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ 社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
 
Php開発環境
Php開発環境Php開発環境
Php開発環境
 
オライリーセミナー Hive入門 #oreilly0724
オライリーセミナー Hive入門  #oreilly0724オライリーセミナー Hive入門  #oreilly0724
オライリーセミナー Hive入門 #oreilly0724
 
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知るAI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
 
CentOSでつくる神Plesk
CentOSでつくる神PleskCentOSでつくる神Plesk
CentOSでつくる神Plesk
 
Red Hat Storage Server 2.0 on Amazon EC2 導入ガイド
Red Hat Storage Server 2.0 on Amazon EC2 導入ガイドRed Hat Storage Server 2.0 on Amazon EC2 導入ガイド
Red Hat Storage Server 2.0 on Amazon EC2 導入ガイド
 
OpenShift v3 Technical Overview
OpenShift v3 Technical OverviewOpenShift v3 Technical Overview
OpenShift v3 Technical Overview
 
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
 
Hadoopの紹介
Hadoopの紹介Hadoopの紹介
Hadoopの紹介
 
sveltekit-ja.pdf
sveltekit-ja.pdfsveltekit-ja.pdf
sveltekit-ja.pdf
 
HDPをWindowsで動かしてみた
HDPをWindowsで動かしてみたHDPをWindowsで動かしてみた
HDPをWindowsで動かしてみた
 
実践 Reactive Extensions
実践 Reactive Extensions実践 Reactive Extensions
実践 Reactive Extensions
 
LinAction Theme Docker
LinAction Theme DockerLinAction Theme Docker
LinAction Theme Docker
 

More from Hiroki Ishikawa

OpenStackを体で操作する
OpenStackを体で操作するOpenStackを体で操作する
OpenStackを体で操作する
Hiroki Ishikawa
 
AvailabilityZoneとHostAggregate
AvailabilityZoneとHostAggregateAvailabilityZoneとHostAggregate
AvailabilityZoneとHostAggregate
Hiroki Ishikawa
 
OpenStackの情報をどこから得ているのか
OpenStackの情報をどこから得ているのかOpenStackの情報をどこから得ているのか
OpenStackの情報をどこから得ているのか
Hiroki Ishikawa
 
AppArmorの話
AppArmorの話AppArmorの話
AppArmorの話
Hiroki Ishikawa
 
第9回 OpenStack 勉強会(Glance)
第9回 OpenStack 勉強会(Glance)第9回 OpenStack 勉強会(Glance)
第9回 OpenStack 勉強会(Glance)
Hiroki Ishikawa
 
気になるあのコにアタック☆
気になるあのコにアタック☆気になるあのコにアタック☆
気になるあのコにアタック☆
Hiroki Ishikawa
 
VlanManagerを使ってみた
VlanManagerを使ってみたVlanManagerを使ってみた
VlanManagerを使ってみた
Hiroki Ishikawa
 
rsyslog + SE-PostgreSQL = ???
rsyslog + SE-PostgreSQL = ???rsyslog + SE-PostgreSQL = ???
rsyslog + SE-PostgreSQL = ???
Hiroki Ishikawa
 
hbstudy# 28 SELinux HandsOn 公開版
hbstudy# 28 SELinux HandsOn 公開版hbstudy# 28 SELinux HandsOn 公開版
hbstudy# 28 SELinux HandsOn 公開版
Hiroki Ishikawa
 
SELinuxによる攻撃防止の例
SELinuxによる攻撃防止の例SELinuxによる攻撃防止の例
SELinuxによる攻撃防止の例
Hiroki Ishikawa
 
SystemTapで何か
SystemTapで何かSystemTapで何か
SystemTapで何か
Hiroki Ishikawa
 
(F15)File Capability
(F15)File Capability(F15)File Capability
(F15)File Capability
Hiroki Ishikawa
 

More from Hiroki Ishikawa (13)

OpenStackを体で操作する
OpenStackを体で操作するOpenStackを体で操作する
OpenStackを体で操作する
 
AvailabilityZoneとHostAggregate
AvailabilityZoneとHostAggregateAvailabilityZoneとHostAggregate
AvailabilityZoneとHostAggregate
 
Sesearch
SesearchSesearch
Sesearch
 
OpenStackの情報をどこから得ているのか
OpenStackの情報をどこから得ているのかOpenStackの情報をどこから得ているのか
OpenStackの情報をどこから得ているのか
 
AppArmorの話
AppArmorの話AppArmorの話
AppArmorの話
 
第9回 OpenStack 勉強会(Glance)
第9回 OpenStack 勉強会(Glance)第9回 OpenStack 勉強会(Glance)
第9回 OpenStack 勉強会(Glance)
 
気になるあのコにアタック☆
気になるあのコにアタック☆気になるあのコにアタック☆
気になるあのコにアタック☆
 
VlanManagerを使ってみた
VlanManagerを使ってみたVlanManagerを使ってみた
VlanManagerを使ってみた
 
rsyslog + SE-PostgreSQL = ???
rsyslog + SE-PostgreSQL = ???rsyslog + SE-PostgreSQL = ???
rsyslog + SE-PostgreSQL = ???
 
hbstudy# 28 SELinux HandsOn 公開版
hbstudy# 28 SELinux HandsOn 公開版hbstudy# 28 SELinux HandsOn 公開版
hbstudy# 28 SELinux HandsOn 公開版
 
SELinuxによる攻撃防止の例
SELinuxによる攻撃防止の例SELinuxによる攻撃防止の例
SELinuxによる攻撃防止の例
 
SystemTapで何か
SystemTapで何かSystemTapで何か
SystemTapで何か
 
(F15)File Capability
(F15)File Capability(F15)File Capability
(F15)File Capability
 

Recently uploaded

「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
嶋 是一 (Yoshikazu SHIMA)
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
Takayuki Nakayama
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
tazaki1
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
t m
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
chiefujita1
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
Matsushita Laboratory
 

Recently uploaded (10)

「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
 

Cms on SELinux

  • 1. CMS on SELinux (やってみた編) 日本セキュアOSユーザ会 石川 裕基
  • 4. SELinux の概略 (アクセス制御(TE))  「誰(Subject)が何(Object)に対して何を するか(Action)」の巨大なルール集  事前に許可をした動作のみを可能にする  httpd プロセス が A.html に対して読み込みをする Subject, Object, Action の例 Subject Process Object File / Directory Action Read / Write / Link
  • 5. SELinux の概略 (ラベル)  Subject, Object に付与された特殊な文字列  全てのSubject, Object にはラベルが付与される  Subject に付与されるラベル = ドメイン  Object に付与されるラベル = タイプ 付与されるラベルの例 httpd httpd_t /var/www/html(/.*)? http_sys_content_t /etc/shadow shadow_t
  • 6. SELinux の概略 (アクセス制御とラベル)  Subject, Object 付与されたラベルを もとにアクセス制御を行う (httpdプロセス) の (A.html) に対する (読み込み)を許可 (httpd_t) の (httpd_sys_content_t) に 対する (read) を許可
  • 7. 2. CMS on SELinux
  • 8. CMS on SELinux (前提条件) 以下の環境下で動作検証を行う OS(Linux) CentOS 5.2 SELinux Targeted Policy 2.4.6-137 Web Apache 2.2.3 PHP - 5.1.6 DB MySQL 5.0.45-7 XOOPS CMS 1.0.1b (ホダ塾ディストリビューション) ※ アプリケーションは全て yum を使用してインストールをする
  • 9. CMS on SELinux (必要なAction)  XOOPS が動作するために必要なAction 1. httpd から XOOPS を読み込みができる 2. httpd から XOOPS に書き込みができる 3. httpd から XOOPS DBに接続ができる 4. 適切なラベルを付与する  最も簡単な方法を紹介
  • 10. CMS on SELinux (必要なAction) 1. httpd から XOOPS を読み込みができる XOOPS を Apache (httpd_t) から 読ませて良いファイルとして設定する Webコンテンツに付与されるラベルは 一般的には httpd_sys_content_t である /var/www/html 以下に配置されたファイルには httpd_content_t が付与される ⇒ /var/www/html 以下に XOOPS を配置する
  • 11. CMS on SELinux (必要なAction) 2. httpd から XOOPS に書き込みができる httpd_sys_content_t は httpd_t からの 読み込みのみを許可する Boolean値と呼ばれるものを変更することで 書き込みを可能にすることができる 変更するBoolean値は 「httpd_builten_scripting」である ⇒ # setsebool -P httpd_builten_scripting 1
  • 12. CMS on SELinux (必要なAction) 2. httpd から XOOPS に書き込みができる(※) 前述の場合、全ての httpd_sys_content_t に 影響を及ぼす 書き込みを行いたい対象のみを httpd_t から 書き込ませて良いものとしてラベリングする httpd_t の 書き込みを許可するラベルは httpd_sys_script_rw_t である ⇒ # setsebool -P httpd_builten_scripting 0 ⇒ # semanage fcontext -a -t httpd_sys_script_rw_t ‘/var/www/html/hd(/.*)?’
  • 13. CMS on SELinux (必要なAction) 3. httpd から XOOPSのDB(mysql) に接続できる local に存在するの DB に接続する場合は 対応する必要はない 外部の DB を使用する場合は Boolean値を変更する必要がある 変更するBoolean値は 「httpd_can_network_connect_db」である ⇒ # setsebool -P httpd_can_network_connect_db 1
  • 14. CMS on SELinux (必要なAction) 4. 適切なラベルを付与/再構築する SELinux はラベルを用いてアクセス制御を行う ラベルが適切に設定されていない場合、 不正なアクセスとして処理される 適切なラベルを付与/再構築する ⇒ # touch /.autorelabel && shutdown -r now # restorecon -RF -v /var/www (または、)
  • 15. Demo  時間があれば Demo をします。