diff --git a/root/docker-mods b/root/docker-mods
index 5916fbde274ad98fc8cd685a21f2272d26993e6d..fec9f3d3cf7a2c44c551174cfba4fa41c9ee4759 100755
--- a/root/docker-mods
+++ b/root/docker-mods
@@ -12,11 +12,13 @@ if [ ! -f /usr/bin/curl ]; then
     ## Ubuntu
     apt-get update
     apt-get install --no-install-recommends -y \
-      curl
+      curl \
+      jq
   elif [ -f /sbin/apk ]; then
     # Alpine
     apk add --no-cache \
-      curl
+      curl \
+      jq
   fi
 fi
 
@@ -30,19 +32,14 @@ get_blob_sha () {
       --location \
       --request GET \
       --header "Authorization: Bearer $2" \
-      $3 |\
-      grep -A4 'layers' |\
-      grep -m1 'digest' |\
-      awk -F'"' '{print $4}'
+      $3 | jq -r '.layers[0].digest'
   else
     curl \
       --silent \
       --location \
       --request GET \
       --header "Authorization: Bearer $2" \
-      $3 |\
-      grep -m1 "blobSum" |\
-      awk -F'"' '{print $4}'
+      $3 | jq -r '.fsLayers[0].blobSum'
   fi
 }
 
@@ -101,8 +98,7 @@ for DOCKER_MOD in "${DOCKER_MODS[@]}"; do
     --silent \
     --header 'GET' \
     "${AUTH_URL}" \
-    | grep -m1 "token" \
-    | awk -F'"' '{print $4}' \
+    | jq -r '.token' \
   )"
   # Determine first and only layer of image
   SHALAYER=$(get_blob_sha "${MODE}" "${TOKEN}" "${MANIFEST_URL}")