Skip to content

Commit 1f56a42

Browse files
committed
SecImprove: Use internal function to parse object key/value strings
- 'parse_object_kv_list' will also validate the string format
1 parent 6ec54ad commit 1f56a42

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+148
-146
lines changed

bin/v-add-letsencrypt-host

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ is_object_unsuspended 'web' 'DOMAIN' "$domain"
4646
get_domain_values 'web'
4747

4848
# Load domain data
49-
eval $(grep "DOMAIN='$domain'" $USER_DATA/web.conf)
49+
parse_object_kv_list $(grep "DOMAIN='$domain'" $USER_DATA/web.conf)
5050

5151
# Set ssl installation to yes
5252
add_ssl="yes"

bin/v-add-remote-dns-domain

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,10 @@ IFS=$'\n'
5151
for cluster in $(grep "SUSPENDED='no'" $HESTIA/conf/dns-cluster.conf); do
5252

5353
# Parsing remote dns host parameters
54-
eval $cluster
54+
parse_object_kv_list "$cluster"
5555

5656
# Parsing domain parameters
57-
eval $str
57+
parse_object_kv_list "$str"
5858

5959
# Syncing domain data
6060
cluster_cmd v-insert-dns-domain $DNS_USER "$str" $HOSTNAME $flush 'no'

bin/v-add-remote-dns-record

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ IFS=$'\n'
5252
for cluster in $(grep "SUSPENDED='no'" $HESTIA/conf/dns-cluster.conf); do
5353

5454
# Parsing remote host parameters
55-
eval $cluster
55+
parse_object_kv_list "$cluster"
5656

5757
# Syncing serial
5858
str=$(grep "DOMAIN='$domain'" $USER_DATA/dns.conf)

bin/v-add-web-domain-ssl-force

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ check_hestia_demo_mode
3838
#----------------------------------------------------------#
3939

4040
# Load domain data
41-
eval $(grep "DOMAIN='$domain'" $USER_DATA/web.conf)
41+
parse_object_kv_list $(grep "DOMAIN='$domain'" $USER_DATA/web.conf)
4242

4343
# Check if SSL is enabled
4444
if [ "$SSL" != 'yes' ]; then

bin/v-add-web-domain-ssl-hsts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ check_hestia_demo_mode
3838
#----------------------------------------------------------#
3939

4040
# Load domain data
41-
eval $(grep "DOMAIN='$domain'" $USER_DATA/web.conf)
41+
parse_object_kv_list $(grep "DOMAIN='$domain'" $USER_DATA/web.conf)
4242

4343
# Check if SSL is enabled
4444
if [ "$SSL" != 'yes' ]; then

bin/v-change-database-owner

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ mkdir -p $BACKUP/tmp.$database
7575
$BIN/v-suspend-database $owner $database > /dev/null 2>&1
7676

7777
# Dump database
78-
eval $db_data
78+
parse_object_kv_list "$db_data"
7979
dump="$tmpdir/$database.$TYPE.sql"
8080
grants="$tmpdir/$database.$TYPE.$DBUSER"
8181
case $TYPE in
@@ -86,7 +86,7 @@ esac
8686
# Import configuration
8787
db_data=$(echo "$db_data" | sed "s/'${owner}_/'${user}_/g")
8888
echo "$db_data" >> $HESTIA/data/users/$user/db.conf
89-
eval $db_data
89+
parse_object_kv_list "$db_data"
9090

9191
# Unsuspend db
9292
$BIN/v-unsuspend-database $user $new_db > /dev/null 2>&1

bin/v-change-dns-record

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ check_hestia_demo_mode
5454

5555
# Parsing domain config
5656
line=$(grep "ID='$id'" $USER_DATA/dns/$domain.conf)
57-
eval $line
57+
parse_object_kv_list "$line"
5858

5959
# Null priority for none MX/SRV records
6060
if [ "$TYPE" != 'MX' ] && [ "$TYPE" != 'SRV' ]; then

bin/v-change-domain-owner

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ check_hestia_demo_mode
4747
web_data=$(grep "DOMAIN='$domain'" $HESTIA/data/users/$owner/web.conf)
4848
if [ ! -z "$web_data" ]; then
4949
$BIN/v-suspend-web-domain $owner $domain >> /dev/null 2>&1
50-
eval $web_data
50+
parse_object_kv_list "$web_data"
5151

5252
# Change IP
5353
if [ ! -z "$ip" ]; then
@@ -95,7 +95,7 @@ fi
9595
# DNS domain
9696
dns_data=$(grep "DOMAIN='$domain'" $HESTIA/data/users/$owner/dns.conf)
9797
if [ ! -z "$dns_data" ]; then
98-
eval $dns_data
98+
parse_object_kv_list "$dns_data"
9999

100100
# Change IP
101101
if [ ! -z "$ip" ]; then

bin/v-change-remote-dns-domain-exp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ IFS=$'\n'
4040
for cluster in $(grep "SUSPENDED='no'" $HESTIA/conf/dns-cluster.conf); do
4141

4242
# Parsing remote host parameters
43-
eval $cluster
43+
parse_object_kv_list "$cluster"
4444

4545
# Syncing domain
4646
str=$(grep "DOMAIN='$domain'" $USER_DATA/dns.conf)

bin/v-change-remote-dns-domain-soa

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ IFS=$'\n'
4040
for cluster in $(grep "SUSPENDED='no'" $HESTIA/conf/dns-cluster.conf); do
4141

4242
# Parsing remote host parameters
43-
eval $cluster
43+
parse_object_kv_list "$cluster"
4444

4545
# Syncing SOA
4646
str=$(grep "DOMAIN='$domain'" $USER_DATA/dns.conf)

0 commit comments

Comments
 (0)