From 6b5db6d9694833ea9baa1ef9f5fbdf819ed15764 Mon Sep 17 00:00:00 2001
From: Razvan Today is your first day on the job as a sysadmin. Your boss tells you that he suspects somebody tried to hack into your company's network, and asks you to investigate a possible cyber attack that may have happened when the system administrator was a guy called Daniel Craig. The boss sits you in front of the previous sysadmin's computer, and wishes you good luck. You glance at the machine and reluctantly get to work.
level: 1
questions:
- - id: R-L1-001
- type: fill
- content: The operating system and kernel release number can tell you about the possible vulnerabilities of a computer. Find out the full kernel release number of the machine (e.g., 3.4.5-6.7.8.abc.x86_64).
- answer: 3.10.0-514.16.1.el7.x86_64
+ - id: L1-EN-001
+ body: The operating system and kernel release number can tell you about the possible vulnerabilities of a computer. Find out the full kernel release number of the machine (e.g., 3.4.5-6.7.8.abc.x86_64).
+ answer: 3.10.0-514.21.1.el7.x86_64
hints:
- - hint: You can use the command 本日はシステム管理者として初めての仕事の日です。あなたの上司は、誰かがあなたの会社のネットワークに攻撃しようとしたことを疑っており、あなたにダニエル・グレイグと呼ばれる男が管理者だった頃に起こった可能性のあるサイバー攻撃を調査するよう頼みました。上司は前任のシステム管理者のコンピュータの前にあなたを座らせて、上手くいくことを望んでいます。 あなたはパソコンを見て、渋々仕事に取り掛かります。uname
to find out OS details.
- - hint: $ uname -r
- - hint: An alternative solution is to get the required information from the /proc/version
file.
+ - You can use the command uname
to find out OS details.
+ - $ uname -r
+ - An alternative solution is to get the required information from the /proc/version
file.
- - id: R-L1-002
- type: fill
- content: In order to understand the network your computer is connected to, you should know more about the machine. Find out the IPv4 address of its first network interface, and enter the last 2 bytes (inverse netmask /16 address) below (e.g, 0.0.123.234).
+ - id: L1-EN-002
+ body: In order to understand the network your computer is connected to, you should know more about the machine. Find out the IPv4 address of its first network interface, and enter the last 2 bytes (inverse netmask /16 address) below (e.g, 0.0.123.234).
answer: 0.0.1.2
hints:
- - hint: You can use the command ifconfig
to find out NIC information.
- - hint: $ ifconfig eth0
- - hint: "An alternative solution is to use the ip
command: $ ip addr show dev eth0
"
+ - You can use the command ifconfig
to find out NIC information.
+ - $ ifconfig eth0
+ - "An alternative solution is to use the ip
command: $ ip addr show dev eth0
"
- - id: R-L1-003
- type: fill
- content: You also need to know about the routing settings of the machine. Find out the IPv4 address of the default gateway, and enter the last 2 bytes (inverse netmask /16 address) below (e.g, 0.0.123.1).
+ - id: L1-EN-003
+ body: You also need to know about the routing settings of the machine. Find out the IPv4 address of the default gateway, and enter the last 2 bytes (inverse netmask /16 address) below (e.g, 0.0.123.1).
answer: 0.0.1.1
hints:
- - hint: You can use the command route
to obtain routing information.
- - hint: $ route -n | grep ^0.0.0.0
- - hint: "It is also possible to use the netstat
command: $ netstat -rn | grep ^0.0.0.0
"
+ - You can use the command route
to obtain routing information.
+ - $ route -n | grep ^0.0.0.0
+ - "It is also possible to use the netstat
command: $ netstat -rn | grep ^0.0.0.0
"
- - id: R-L1-004
- type: fill
- content: Investigating deeper requires you to know what accounts exist on the computer. Find out the user name of the previous system administrator.
+ - id: L1-EN-004
+ body: Investigating deeper requires you to know what accounts exist on the computer. Find out the user name of the previous system administrator.
answer: daniel
hints:
- - hint: The name of the previous sysadmin was already mentioned on this page. The /home
directory could also provide some hints.
- - hint: The /etc/passwd
file is used to store login-related information.
- - hint: $ grep -i Daniel /etc/passwd
+ - The name of the previous sysadmin was already mentioned on this page. The /home
directory could also provide some hints.
+ - The /etc/passwd
file is used to store login-related information.
+ - $ grep Craig /etc/passwd
- - id: R-L1-005
- type: fill
- content: A network intrusion is suspected, so you should check the relevant log file. Find out how many unsuccessful login attempts using the account of the previous sysadmin have occurred on March 28th, 2017.
+ - id: L1-EN-005
+ body: A network intrusion is suspected, so you should check the relevant log file. Find out how many unsuccessful login attempts using the account of the previous sysadmin have occurred on March 28th, 2017.
answer: 54
hints:
- - hint: Unsuccessful login attempts are specific kind of authentication events.
- - hint: In CentOS authentication events are logged in the file /var/log/secure
.
- - hint: $ sudo grep "Failed password" /var/log/secure | grep daniel | grep -c "Mar 28"
+ - Unsuccessful login attempts are specific kind of authentication events.
+ - In CentOS authentication events are logged in the file /var/log/secure
.
+ - $ sudo grep "Failed password" /var/log/secure | grep daniel | grep -c "Mar 28"
- - id: R-L1-006
- type: choice
- content: You believe that the previous administrator's account password is too weak, which may have contributed to the hacking. What is his password?
- choice: "\"JasonBourne\", \"GoldenEye\", \"JamesBond\", \"CasinoRoyale\""
+ - id: L1-EN-006
+ body: You believe that the previous administrator's account password is too weak, which may have contributed to the hacking. What is his password?
+ choices: "\"JasonBourne\", \"GoldenEye\", \"JamesBond\", \"CasinoRoyale\""
answer: JamesBond
hints:
- - hint: This is a multiple-choice question, so one of the answers must be the password.
- - hint: You can use the command su
to switch to another user.
- - hint: $ su daniel
+ - This is a multiple-choice question, so one of the answers must be the password.
+ - You can use the command su
to switch to another user.
+ - $ su daniel
- - id: R-L1-007
- type: fill
- content: You suspect that someone may have hacked the previous administrator's account. You need to verify whether this would have allowed hackers to have root privileges on this machine. What commands was the sysadmin allowed to execute as root?
+ - id: L1-EN-007
+ body: You suspect that someone may have hacked the previous administrator's account. You need to verify whether this would have allowed hackers to have root privileges on this machine. What commands was the sysadmin allowed to execute as root?
answer: ALL
hints:
- - hint: One can execute commands as root by using the command sudo
.
- - hint: The configuration file for sudo is /etc/sudoers
.
- - hint: $ sudo grep daniel /etc/sudoers
+ - One can execute commands as root by using the command sudo
.
+ - The configuration file for sudo is /etc/sudoers
.
+ - $ sudo grep daniel /etc/sudoers
- - id: R-L1-008
- type: fill
- content: You report the attempted intrusion and the sysadmin account weaknesses to your boss. He congratulates you and provides you with more data so that you can continue your investigation. The file /home/traffic.pcap
contains the traffic capture related to a password guessing attack. In which country did the attack originate?
+ - id: L1-EN-008
+ body: You report the attempted intrusion and the sysadmin account weaknesses to your boss. He congratulates you and provides you with more data so that you can continue your investigation. The file /home/traffic.pcap
contains the traffic capture related to a password guessing attack. In which country did the attack originate?
answer: Russian Federation
hints:
- - hint: "You can use the tool called Wireshark (or the terminal-based tshark or tcpdump commands) to investigate traffic capture files. For example: $ tshark -r /home/traffic.pcap -p ssh
"
- - hint: Use the IP address identified as source of the SSH login attempts to identify the country associated to it.
- - hint: $ geoiplookup IP_ADDRESS
+ - "You can use the tool called Wireshark (or the terminal-based tshark or tcpdump commands) to investigate traffic capture files. For example: $ tshark -r /home/traffic.pcap -p ssh
"
+ - Use the IP address identified as source of the SSH login attempts to identify the country associated to it.
+ - $ geoiplookup IP_ADDRESS
- - id: R-L1-009
- type: fill
- content: You are worried that hackers may still be connected to the machine. Find out what ports are open for all the IPv4 interfaces.
+ - id: L1-EN-009
+ body: You are worried that hackers may still be connected to the machine. Find out what ports are open for all the IPv4 interfaces.
answer: 22
hints:
- - hint: You can use the command netstat
to investigate network status.
- - hint: $ netstat -atun | grep LISTEN
- - hint: "An alternative is to use the lsof
command: $sudo lsof | grep LISTEN
"
+ - You can use the command netstat
to investigate network status.
+ - $ netstat -atun | grep LISTEN
+ - "An alternative is to use the lsof
command: $sudo lsof | grep LISTEN
"
- - id: R-L1-010
- type: fill
- content: You suspect that malware may be running on your machine. Find out the name of the malware.
+ - id: L1-EN-010
+ body: You suspect that malware may be running on your machine. Find out the name of the malware.
answer: DAEMON
hints:
- - hint: A basic way to differentiate between legit processes and rogue ones is to look at process names.
- - hint: "The command ps
can be used to display all the running processes on a computer. For example: $ ps -ef
"
- - hint: You can use the command top
to view the processes with highest CPU utilization.
+ - A basic way to differentiate between legit processes and rogue ones is to look at process names.
+ - "The command ps
can be used to display all the running processes on a computer. For example: $ ps -ef
"
+ - You can use the command top
to view the processes with highest CPU utilization.
diff --git a/database/NIST-level1-content-ja.yml b/database/NIST-level1-content-ja.yml
index b24e5b3..b152005 100644
--- a/database/NIST-level1-content-ja.yml
+++ b/database/NIST-level1-content-ja.yml
@@ -1,100 +1,90 @@
---
- training:
- - id: L1-J1
- description: デスクトップコンピュータのセキュリティ調査
- header: |
+ - id: L1-JA
+ title: デスクトップコンピュータのセキュリティ調査
+ overview: |
uname
コマンドを使ってOSの詳細を探すことができます。
- - hint: $ uname -r
- - hint: 別の方法として,/proc/version
ファイルから必要な情報を探すことができます。
+ - id: L1-JA-001
+ body: オペレーティングシステムとカーネルリリース番号はコンピュータにどの脆弱性の可能性があるか伝えることができます。マシンのカーネルリリース番号を探してください。(例:3.4.5-6.7.8.abc.x86_64 )
+ answer: 3.10.0-514.21.1.el7.x86_64
+ hints:
+ - あなたはuname
コマンドを使ってOSの詳細を探すことができます。
+ - $ uname -r
+ - 別の方法として,/proc/version
ファイルから必要な情報を探すことができます。
- - id: R-L1-002
- type: fill
- content: あなたのコンピュータが接続しているネットワークを理解するために、そのパソコンについてもっと知る必要があります。1つ目のネットワークインターフェースに設定されたIPv4アドレスを探して、最後の2 バイト(逆マスク/16 のアドレス)を入力してください。(例:0.0.123.4 )
+ - id: L1-JA-002
+ body: あなたのコンピュータが接続しているネットワークを理解するために、そのパソコンについてもっと知る必要があります。1つ目のネットワークインターフェースに設定されたIPv4アドレスを探して、最後の2 バイト(逆マスク/16 のアドレス)を入力してください。(例:0.0.123.4 )
answer: 0.0.1.2
hints:
- - hint: あなたは、ifconfig
コマンドによりNICの情報を探すことができます。
- - hint: $ ifconfig eth0
- - hint: 別のソリューションとしてip
コマンドを使用する方法があります。$ ip addr show dev eth0
+ - あなたは、ifconfig
コマンドによりNICの情報を探すことができます。
+ - $ ifconfig eth0
+ - 別のソリューションとしてip
コマンドを使用する方法があります。$ ip addr show dev eth0
- - id: R-L1-003
- type: fill
- content: あなたは、この機械のルーティング設定についても知る必要があります。IPv4アドレスに対するデフォルトゲートウェイを探して、最後の2 バイト(逆マスク/16 のアドレス)を入力してください。(例:0.0.123.1 )
+ - id: L1-JA-003
+ body: あなたは、この機械のルーティング設定についても知る必要があります。IPv4アドレスに対するデフォルトゲートウェイを探して、最後の2 バイト(逆マスク/16 のアドレス)を入力してください。(例:0.0.123.1 )
answer: 0.0.1.1
hints:
- - hint: route
コマンドを使用してルーティング情報を得ることができます。
- - hint: $ route | grep default
- - hint: netstat
コマンドを使うことでも可能です。$ netstat -r | grep default
+ - route
コマンドを使用してルーティング情報を得ることができます。
+ - $ route | grep default
+ - netstat
コマンドを使うことでも可能です。$ netstat -r | grep default
- - id: R-L1-004
- type: fill
- content: より詳しい調査は、どのアカウントがコンピュータ上に存在するか知る必要があります。前任のシステム管理者のユーザネームを探してください。
+ - id: L1-JA-004
+ body: より詳しい調査は、どのアカウントがコンピュータ上に存在するか知る必要があります。前任のシステム管理者のユーザネームを探してください。
answer: daniel
hints:
- - hint: 前任のシステム管理者の名前はすでにこのページに記載されています。/home
ディレクトもヒントになります。
- - hint: /etc/passwd
ファイルはログイン関連の情報を保存するために使われます。
- - hint: $ grep -i Daniel /etc/passwd
+ - 前任のシステム管理者の名前はすでにこのページに記載されています。/home
ディレクトもヒントになります。
+ - /etc/passwd
ファイルはログイン関連の情報を保存するために使われます。
+ - $ grep Craig /etc/passwd
- - id: R-L1-005
- type: fill
- content: ネットワークに対する侵入が疑われおり,あなたは関連するログファイルを確認する必要があります。前任のシステム管理者のアカウントを使用したログインの試行が2017年3月28日に何回発生したか調べてください。
+ - id: L1-JA-005
+ body: ネットワークに対する侵入が疑われおり,あなたは関連するログファイルを確認する必要があります。前任のシステム管理者のアカウントを使用したログインの試行が2017年3月28日に何回発生したか調べてください。
answer: 54
hints:
- - hint: ログインに失敗した試行はauthenticationイベントで見つかります。
- - hint: CentOSでは認証イベントは/var/log/secure
ファイルに記録されます。
- - hint: $ sudo grep "Failed password" /var/log/secure | grep daniel | grep -c "Mar 28"
+ - ログインに失敗した試行はauthenticationイベントで見つかります。
+ - CentOSでは認証イベントは/var/log/secure
ファイルに記録されます。
+ - $ sudo grep "Failed password" /var/log/secure | grep daniel | grep -c "Mar 28"
- - id: R-L1-006
- type: choice
- content: あなたは,前管理者のアカウントのパスワードが弱すぎたためにハッキングを寄与したと考えています。彼のパスワードは何でしょうか?
- choice: "\"JasonBourne\", \"GoldenEye\", \"JamesBond\", \"CasinoRoyale\""
+ - id: L1-JA-006
+ body: あなたは,前管理者のアカウントのパスワードが弱すぎたためにハッキングを寄与したと考えています。彼のパスワードは何でしょうか?
+ choices: "\"JasonBourne\", \"GoldenEye\", \"JamesBond\", \"CasinoRoyale\""
answer: JamesBond
hints:
- - hint: これは選択式の質問であるためどれかがパスワードです。
- - hint: あなたは、コマンドsu
を用いて他のユーザに切り替えることができます。
- - hint: $ su daniel
+ - これは選択式の質問であるためどれかがパスワードです。
+ - あなたは、コマンドsu
を用いて他のユーザに切り替えることができます。
+ - $ su daniel
- - id: R-L1-007
- type: fill
- content: あなたは、誰かが前任者の管理者アカウントをハッキングした可能性があると疑っています。あなたは、ハッカーがこのマシンのroot権限を取得しているか調査する必要があります。どのコマンドでrootとして実行をシステム管理者許可しましたか?
+ - id: L1-JA-007
+ body: あなたは、誰かが前任者の管理者アカウントをハッキングした可能性があると疑っています。あなたは、ハッカーがこのマシンのroot権限を取得しているか調査する必要があります。どのコマンドでrootとして実行をシステム管理者許可しましたか?
answer: ALL
hints:
- - hint: sudo
コマンドを用いてrootとして実行が可能です。
- - hint: sudoの設定ファイルは/etc/sudoers
です。
- - hint: $ sudo grep daniel /etc/sudoers
+ - sudo
コマンドを用いてrootとして実行が可能です。
+ - sudoの設定ファイルは/etc/sudoers
です。
+ - $ sudo grep daniel /etc/sudoers
- - id: R-L1-008
- type: fill
- content: あなたは、侵入試行やシステム管理者のアカウントの弱点を上司に報告します。彼は,あなたを祝福し、継続して調査できるように追加の情報を提供します。/home/traffic.pcap
はパスワード推測攻撃による通信をキャプチャーした情報を含んでいるファイルです。攻撃元の国はどこですか?
+ - id: L1-JA-008
+ body: あなたは、侵入試行やシステム管理者のアカウントの弱点を上司に報告します。彼は,あなたを祝福し、継続して調査できるように追加の情報を提供します。/home/traffic.pcap
はパスワード推測攻撃による通信をキャプチャーした情報を含んでいるファイルです。攻撃元の国はどこですか?
answer: Russian Federation
hints:
- - hint: Wireshark(又はコマンドラインのtsharkもしくはtcpdump)と呼ばれるツールを通信を調査するために使用してください。例:$ tshark -r /home/traffic.pcap -p ssh
- - hint: SSHへのログイン試行に使用されたIPアドレスを関連の国を特定するために使います。
- - hint: $ geoiplookup IP_ADDRESS
+ - Wireshark(又はコマンドラインのtsharkもしくはtcpdump)と呼ばれるツールを通信を調査するために使用してください。例:$ tshark -r /home/traffic.pcap -p ssh
+ - SSHへのログイン試行に使用されたIPアドレスを関連の国を特定するために使います。
+ - $ geoiplookup IP_ADDRESS
- - id: R-L1-009
- type: fill
- content: あなたは、攻撃者がマシンに接続することをまだ心配しています。IPv4インターフェースで開いている全てのポートを探してください。
netstat
コマンドを使用してネットワーク状況を調査することができます。
- - hint: $ netstat -atun | grep LISTEN
- - hint: 他の方法としては、lsof
コマンドを使用することができます。$sudo lsof | grep LISTEN
+ - あなたは、netstat
コマンドを使用してネットワーク状況を調査することができます。
+ - $ netstat -atun | grep LISTEN
+ - 他の方法としては、lsof
コマンドを使用することができます。$sudo lsof | grep LISTEN
- - id: R-L1-010
- type: fill
- content: あなたのマシン上でマルウェアが動作してかもしれないと疑っています。マルウェアの名前を見つけてください。
+ - id: L1-JA-010
+ body: あなたのマシン上でマルウェアが動作してかもしれないと疑っています。マルウェアの名前を見つけてください。
answer: DAEMON
hints:
- - hint: 正しいプロセスと不正なプロセスを区別する基本的な方法は,プロセス名を確認することです。
- - hint: ps
コマンドを使って、全ての実行中のプロセスを表示できます。例:$ ps -ef
- - hint: top
コマンドで最もCPU 使用率の高いプロセスを確認できます。
+ - 正しいプロセスと不正なプロセスを区別する基本的な方法は,プロセス名を確認することです。
+ - ps
コマンドを使って、全ての実行中のプロセスを表示できます。例:$ ps -ef
+ - top
コマンドで最もCPU 使用率の高いプロセスを確認できます。
diff --git a/database/NIST-level1-range.yml b/database/NIST-level1-range.yml
index 7ca0ecd..7943470 100644
--- a/database/NIST-level1-range.yml
+++ b/database/NIST-level1-range.yml
@@ -8,12 +8,13 @@
- guest_settings:
- id: desktop
basevm_host: host_1
- basevm_config_file: /home/cyuser/images/basevm_desktop.xml
+ basevm_config_file: /home/cyuser/images/basevm_small.xml
basevm_type: kvm
tasks:
- add_account:
- account: daniel
passwd: JamesBond
+ full_name: Daniel Craig
- install_package:
- package_manager: yum