Firmadyne libnvram trace
===
---
###### tags: `firmadyne` `security`
本篇以觀察 `qemu.initial.serial.log` 來追蹤呼叫 libnvram.so 的過程
我下手的點是先找有哪些 Code 是實際輸出到 `qemu.initial.serial.log`
再從 log 的訊息反推執行過程
本篇觀察的 `qemu.initial.serial.log` 是 qemu 模擬以下 kernel 的產物:
https://github.com/firmadyne/kernel-v2.6.32
---
**目錄**
[TOC]
# Source Code
libnvram: https://github.com/firmadyne/libnvram/tree/68ad8e9a9c25cb9d1202c690c1469df59e3f7cb3
## `nvram.c`
### PRINT_MSG(fmt, ...)
首先先看有一個 macro:
```c=35
#define PRINT_MSG(fmt, ...) do { if (DEBUG) { fprintf(stderr, "%s: "fmt, __FUNCTION__, __VA_ARGS__); } } while (0)
```
輸出的格式會是 `FUNCTION名稱(__FUNCTION__): 輸出資訊(fmt)`
在最後一節 `qemu.initial.serial.log` 節錄的便是使用 PRINT_MSG() 輸出出來的 log
### Tracing
看到第一個 log,是 `nvram_get_buf` 這個 function 輸出出來的,直覺地就去找找看 `nvram_get_buf` 到底被誰 call 到
先找找看 kernel 有機會 call 它的地方
透過 github 搜尋:

看來是沒有。
那就找找看 libnvram 專案本身有機會 call 到它的地方,發現以下 function 都有機會:
- `nvram_get`
- `nvram_match`
- `nvram_list_add`
- `nvram_list_exist`
- `nvram_list_del`
再回頭找 kernel 有機會 call 到這些 function 的地方。
- `nvram_get`

所以 kernel 有機會 call 到 `nvram_get`
- `nvram_match`
在 kernel 搜尋沒找到,在 libnvram 本身找到以下 function 有機會 call 它
- `nvram_invmatch`
但沒有在 kernel 搜尋到有可能 call 到 `nvram_invmatch` 的地方
所以 kernel 沒機會 call 到 `nvram_match`
- `nvram_list_add`
在 kernel 搜尋沒找到,在 libnvram 本身也沒找到其他有機會 call 它的 function
所以 kernel 沒機會 call 到 `nvram_list_add`
- `nvram_list_exist`
在 kernel 搜尋沒找到,在 libnvram 本身找到以下 function 有機會 call 它
- `nvram_list_add`
- `nvram_list_del`
但兩者都沒在 kernel 搜尋到,所以 kernel 沒機會 call 到`nvram_list_exist`
- `nvram_list_del`
一樣,沒機會。
所以產生 log `nvram_get_buf: sys_cli_debug` 唯一有可能的過程就是 `nvram_get` -> `nvram_get_buf`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf`
看看 `nvram_get_buf` 這個 function
```c=369
char path[PATH_MAX] = MOUNT_POINT;
```
定義一個字串,空間大小為 PATH_MAX,內容為 `"/firmadyne/libnvram/"`
```c=382
PRINT_MSG("%s\n", key);
```
產生 log `nvram_get_buf: sys_cli_debug`
反推 key 是 `sys_cli_debug`
```c=384
strncat(path, key, ARRAY_SIZE(path) - ARRAY_SIZE(MOUNT_POINT) - 1);
```
將 key 串接到 path 後頭
path 現在為 `"/firmadyne/libnvram/sys_cli_debug"`
```c=419
sem_lock()
```
call 進 `sem_lock`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock`
看看 `sem_lock`
```c=113
// If not initialized, check for existing mount before triggering NVRAM init
if (!init) {
if ((mnt = setmntent("/proc/mounts", "r"))) {
while ((ent = getmntent_r(mnt, &entry, temp, BUFFER_SIZE))) {
if (!strncmp(ent->mnt_dir, MOUNT_POINT, sizeof(MOUNT_POINT) - 2)) {
init = 1;
PRINT_MSG("%s\n", "Already initialized!");
endmntent(mnt);
goto cont;
}
}
endmntent(mnt);
}
PRINT_MSG("%s\n", "Triggering NVRAM initialization!");
nvram_init();
}
```
init 一開始是 0,會進入 Line 114 的 if
看第二行 log,可推測 Line 115、116、117 其中一個條件式沒滿足
並且執行到 Line 127 輸出了第二行 log
並且 call 進 Line 128 `nvram_init`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init`
看看 `nvram_init`
```c=172
PRINT_MSG("%s\n", "Initializing NVRAM...");
```
沒錯,match log line 3
```c=174
if (init) {
PRINT_MSG("%s\n", "Early termination!");
return E_SUCCESS;
}
init = 1;
sem_lock();
```
根據 log line 4 不是 `"nvram_init: Early termination!"`
可以斷定沒有進 Line 174 的 if
並且設定了 init = 1,然後再呼叫 `sem_lock`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `sem_lock`
init 為 1,所以不會進 Line 114 的 if
```c=133
if ((semid = sem_get()) == -1) {
PRINT_MSG("%s\n", "Unable to get semaphore!");
return;
}
```
call 進 `sem_get`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `sem_lock` -> `sem_get`
```c=66
PRINT_MSG("Key: %x\n", key);
```
match log line 4,反推 key 為 0x4101a018
中間有點小複雜,先忽略做了什麼,先根據 log line 5 判斷安然的 return 了
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `sem_lock`
回到 Line 133
根據 log line 5 判斷沒進 Line 133 的 if
```c=140
if (semop(semid, &sembuf, 1) == -1) {
PRINT_MSG("%s\n", "Unable to lock semaphore!");
}
return;
```
根據 log line 5 判斷也沒進 Line 140 的 if
安然的 return
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init`
回到執行完 Line 180
```c=182
if (mount("tmpfs", MOUNT_POINT, "tmpfs", MS_NOEXEC | MS_NOSUID | MS_SYNCHRONOUS, "") == -1) {
sem_unlock();
PRINT_MSG("Unable to mount tmpfs on mount point %s!\n", MOUNT_POINT);
return E_FAILURE;
}
```
根據 log line 5,判斷沒進去這 if,成功 mount `"/firmadyne/libnvram"` 到 `tmpfs`
```c=188
// Checked by certain Ralink routers
if ((f = fopen("/var/run/nvramd.pid", "w+")) == NULL) {
PRINT_MSG("Unable to touch Ralink PID file: %s!\n", "/var/run/nvramd.pid");
}
else {
fclose(f);
}
sem_unlock();
```
根據 log line 5,判斷開啟 `/var/run/nvramd.pid` 失敗
呼叫 `sem_unlock`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `sem_unlock`
```c=155
if ((semid = sem_get(NULL)) == -1) {
PRINT_MSG("%s\n", "Unable to get semaphore!");
return;
}
```
呼叫 `sem_get`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `sem_unlock` -> `sem_get`
match log line 6,反推 key 為 0x410d002a
中間有點小複雜,先忽略做了什麼,先根據 log line 7 判斷安然的 return 了
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `sem_unlock`
回到 Line 155,根據 log line 7,判斷安然 return
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init`
回到執行完 Line 196
```c=198
return nvram_set_default();
```
呼叫 `nvram_set_default`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `nvram_set_default`
看看 `nvram_set_default`
```c=572
int ret = nvram_set_default_builtin();
```
呼叫 `nvram_set_default_builtin`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `nvram_set_default` -> `nvram_set_default_builtin`
看看 `nvram_set_default_builtin`
```c=602
PRINT_MSG("%s\n", "Setting built-in default values!");
```
match log line 7。
```c=604
#define ENTRY(a, b, c) \
if (b(a, c) != E_SUCCESS) { \
PRINT_MSG("Unable to initialize built-in NVRAM value %s!\n", a); \
ret = E_FAILURE; \
}
NVRAM_DEFAULTS
#undef ENTRY
```
這個寫法第一次看到真心覺得酷
Line 604 DEFINE 了 ENTRY(a, b, c) 要被展開成的樣子
Line 610 展開定義在 `config.h` 的 `NVRAM_DEFAULTS`:
```c=45
#define NVRAM_DEFAULTS \
/* Linux kernel log level, used by "WRT54G3G_2.11.05_ETSI_code.bin" (305) */ \
ENTRY("console_loglevel", nvram_set, "7") \
/* Reset NVRAM to default at bootup, used by "WNR3500v2-V1.0.2.10_23.0.70NA.chk" (1018) */ \
ENTRY("restore_defaults", nvram_set, "1") \
ENTRY("sku_name", nvram_set, "") \
ENTRY("wla_wlanstate", nvram_set, "") \
ENTRY("lan_if", nvram_set, "br0") \
ENTRY("lan_ipaddr", nvram_set, "192.168.0.50") \
ENTRY("lan_bipaddr", nvram_set, "192.168.0.255") \
ENTRY("lan_netmask", nvram_set, "255.255.255.0") \
/* Set default timezone, required by multiple images */ \
ENTRY("time_zone", nvram_set, "EST5EDT") \
/* Set default WAN MAC address, used by "NBG-416N_V1.00(USA.7)C0.zip" (12786) */ \
ENTRY("wan_hwaddr_def", nvram_set, "01:23:45:67:89:ab") \
/* Attempt to define LAN/WAN interfaces */ \
ENTRY("wan_ifname", nvram_set, "eth0") \
ENTRY("lan_ifnames", nvram_set, "eth1 eth2 eth3 eth4") \
/* Used by "TEW-638v2%201.1.5.zip" (12898) to prevent crash in 'goahead' */ \
ENTRY("ethConver", nvram_set, "1") \
/* Used by "Firmware_TEW-411BRPplus_2.07_EU.zip" (13649) to prevent crash in 'init' */ \
ENTRY("lan_proto", nvram_set, "dhcp") \
ENTRY("wan_ipaddr", nvram_set, "0.0.0.0") \
ENTRY("wan_netmask", nvram_set, "255.255.255.0") \
ENTRY("wanif", nvram_set, "eth0") \
/* Used by "DGND3700 Firmware Version 1.0.0.17(NA).zip" (3425) to prevent crashes */ \
ENTRY("time_zone_x", nvram_set, "0") \
ENTRY("rip_multicast", nvram_set, "0") \
ENTRY("bs_trustedip_enable", nvram_set, "0")
```
展開後又發現 ENTRY 可以進一步展開,舉例
```c
ENTRY("console_loglevel", nvram_set, "7")
```
它會被展開成
```c
if (nvram_set("console_loglevel", "7") != E_SUCCESS) { \
PRINT_MSG("Unable to initialize built-in NVRAM value %s!\n", a); \
ret = E_FAILURE; \
}
```
所以其實整個展開完後,會執行好幾個 `nvram_set`
---
log line 8~10 為 `nvram_set("console_loglevel", "7")` 產出的
一直到 log line 67 都是執行這段展開。
最後展開的部分都執行完後
```c=613
return ret;
```
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `nvram_set_default`
回到 Line 573
```c=573
PRINT_MSG("Loading built-in default values = %d!\n", ret);
```
match log line 68
```c=575
#define NATIVE(a, b) \
if (!system(a)) { \
PRINT_MSG("Executing native call to built-in function: %s (%p) = %d!\n", #b, b, b); \
}
#define TABLE(a) \
PRINT_MSG("Checking for symbol \"%s\"...\n", #a); \
if (a) { \
PRINT_MSG("Loading from native built-in table: %s (%p) = %d!\n", #a, a, nvram_set_default_table(a)); \
}
#define PATH(a) \
if (!access(a, R_OK)) { \
PRINT_MSG("Loading from default configuration file: %s = %d!\n", a, foreach_nvram_from(a, (void (*)(const char *, const char *, void *)) nvram_set, NULL)); \
}
NVRAM_DEFAULTS_PATH
#undef PATH
#undef NATIVE
#undef TABLE
```
類似的 code 結構,展開定義在 config.h 的 `NVRAM_DEFAULTS_PATH`
```c=30
#define NVRAM_DEFAULTS_PATH \
/* "DIR-505L_FIRMWARE_1.01.ZIP" (10497) */ \
PATH("/var/etc/nvram.default") \
/* "DIR-615_REVE_FIRMWARE_5.11.ZIP" (9753) */ \
PATH("/etc/nvram.default") \
/* "DGL-5500_REVA_FIRMWARE_1.12B05.ZIP" (9469) */ \
TABLE(router_defaults) \
PATH("/etc/nvram.conf") \
PATH("/etc/nvram.deft") \
PATH("/etc/nvram.update") \
TABLE(Nvrams) \
PATH("/etc/wlan/nvram_params") \
PATH("/etc/system_nvram_defaults")
```
在 file-system 中有 `/etc/nvram.default`,所以當
```c
PATH("/etc/nvram.default")
```
展開成
```c
if (!access("/etc/nvram.default", R_OK)) { \
PRINT_MSG("Loading from default configuration file: %s = %d!\n", "/etc/nvram.default", foreach_nvram_from("/etc/nvram.default", (void (*)(const char *, const char *, void *)) nvram_set, NULL)); \
}
```
access 成功,執行
```c
foreach_nvram_from("/etc/nvram.default", (void (*)(const char *, const char *, void *)) nvram_set, NULL))
```
再來 PRINT_MSG
```c
PRINT_MSG("Loading from default configuration file: %s = %d!\n", "/etc/nvram.default", 剛剛 foreach_nvram_from 的執行結果);
```
match log line 69 ~ 444
`foreach_nvram_from` implement 在 libnvram 專案的 `alias.c` 裡面
這個 function 簡單來說,就是把檔案中的每筆長成以下格式的資訊
```
key=value
```
傳進 `nvram_set(key, value)`

其他的 PATH 都沒在 file-system,access fail,就不會進 if
TABLE 的部分 match log line 445 446,並且也是沒進 if
這部分的展開都執行完畢後,繼續到下一行程式碼
```c=596
return nvram_set_default_image()
```
呼叫 `nvram_set_default_image`
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `nvram_set_default` -> `nvram_set_default_image`
看看 `nvram_set_default_image`
```c=617
PRINT_MSG("%s\n", "Copying overrides from defaults folder!");
```
match log line 447
```c=618
sem_lock();
system("/bin/cp "OVERRIDE_POINT"* "MOUNT_POINT);
sem_unlock();
return E_SUCCESS;
```
Line 618 執行後 match log line 448
Line 619 因為 `/firmadyne/libnvram.override` 底下根本是空的,所以噴出 log line 449
Line 620 執行後 match log ling 450
return E_SUCCESS
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init` -> `nvram_set_default`
return E_SUCCESS
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock` -> `nvram_init`
回到 Line 198,return E_SUCCESS
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf` -> `sem_lock`
回到執行完 Line 128
```c=133
if ((semid = sem_get()) == -1) {
```
`sem_get` 輸出 match log line 451
return
---
當前呼叫的過程: `nvram_get` -> `nvram_get_buf`
```c=388
if ((f = fopen(path, "rb")) == NULL) {
sem_unlock();
PRINT_MSG("Unable to open key: %s!\n", path);
return E_FAILURE;
}
```
這裡的 path 是 `/firmadyne/libnvram/sys_cli_debug`
file-system 裡面沒有這個東西,所以進 if
Line 389 match log line 452
Line 390 match log line 453
return E_FAILURE
---
當前呼叫的過程: `nvram_get`
回到 Line 344
```c=344
return (nvram_get_buf(key, temp, BUFFER_SIZE) == E_SUCCESS) ? strndup(temp, BUFFER_SIZE) : NULL;
```
return NULL
# `qemu.initial.serial.log`
以下節錄部分 log
```=
nvram_get_buf: sys_cli_debug
sem_lock: Triggering NVRAM initialization!
nvram_init: Initializing NVRAM...
sem_get: Key: 4101a018
nvram_init: Unable to touch Ralink PID file: /var/run/nvramd.pid!
sem_get: Key: 410d002a
nvram_set_default_builtin: Setting built-in default values!
nvram_set: console_loglevel = "7"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: restore_defaults = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sku_name = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wla_wlanstate = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_if = "br0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_ipaddr = "192.168.0.50"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_bipaddr = "192.168.0.255"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_netmask = "255.255.255.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_zone = "EST5EDT"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wan_hwaddr_def = "01:23:45:67:89:ab"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wan_ifname = "eth0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_ifnames = "eth1 eth2 eth3 eth4"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ethConver = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_proto = "dhcp"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wan_ipaddr = "0.0.0.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wan_netmask = "255.255.255.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wanif = "eth0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_zone_x = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: rip_multicast = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: bs_trustedip_enable = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set_default: Loading built-in default values = 1!
nvram_set: admin_username = "admin"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: admin_password = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_eth = "eth2"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: lan_bridge = "br0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipaddr = "192.168.0.50"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_netmask = "255.255.255.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_gateway = "0.0.0.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_primary_dns = "0.0.0.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_secondary_dns = "0.0.0.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_device_name = "dlinkap"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: dhcpc_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_dot11_mode = "11anac"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_channel = "36"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_auto_channel_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_beacon_interval = "100"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_dtim = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_txpower = "100"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_wmm_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_wep_display = "hex"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_psk_cipher_type = "both"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_wep64_key = "0000000000"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_wep128_key = "00000000000000000000000000"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_11n_protection = "auto"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_dfs_enable = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_rts_threshold = "2347"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_5g_fragmentation = "2346"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_channel = "6"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_auto_channel_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_dot11_mode = "11bgn"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_ssid_broadcast = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_wep64_key = "0000000000"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_wep128_key = "00000000000000000000000000"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_wep_display = "hex"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_psk_cipher_type = "both"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_txpower = "100"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_beacon_interval = "100"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_rts_threshold = "2347"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_fragmentation = "2346"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_dtim = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_partition = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_short_gi = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_wmm_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_11n_protection = "auto"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_gkey_rekey_time = "3600"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_txchainmask = "3"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_rxchainmask = "3"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_disablecoext = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_wps_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_wps_configured_mode = "5"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan0_disable_wps_pin = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan_repeater_mode = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_ssid = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_security = "disable"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_wep64_key = "0000000000"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_wep128_key = "00000000000000000000000000"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_wep_display = "hex"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_psk_cipher_type = "both"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_psk_pass_phrase = "1234567890"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_wps_enable = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_11n_protection = "auto"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: hostname = "DAP-1520"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: model_number = "DAP-1520"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: friendlyname = "DAP-1520"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: manufacturer = "D-Link"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: manufacturer_url = "http://www.dlink.com"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: model_name = "D-Link Repeater"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: model_url = "http://support.dlink.com"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: serial_number = "none"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: system_time = "2011/01/01/00/00/00"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: graph_enable = "none"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: session_timeout = "180"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ntp_client_enable = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_zone = "-128"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_zone_area = "4"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ntp_server = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ntp_default_server = "ntp1.dlink.com,ntp.dlink.com.tw"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ntp_sync_interval = "168"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_enable = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_start_month = "3"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_start_week = "3"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_start_day_of_week = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_start_time = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_end_month = "11"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_end_week = "2"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_end_day_of_week = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_saving_end_time = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: time_daylight_offset = "3600"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: syslog_server = "0/0.0.0.0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_system_activity = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_debug_information = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_attacks = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_dropped_packets = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_notice = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_per_page = "10"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_total_page = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_current_page = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: log_response_type = "system|debug|attack|dropped|notice"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: setup_wizard_ap = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wlan1_wps_wizard = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: default_downlink_ssid = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_type = "Repeater"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_type_new = "WiFiAccessPoint"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_device_name = "D-Link Systems DAP-1520"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_vendor_name = "D-Link"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_model_description = "Wireless Repeater"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_presentation_url = "/Device_Info.htm"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_wireless_url = "/wireless.htm"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_wireless_url_new = "/Wireless.htm"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_block_url = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_parental_url = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_reboot_page = "reboot.htm"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: pure_support_url = "http://support.dlink.com/products/view.asp?productid=DAP-1520"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_wan_proto = "ipv6_autoconfig"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_static_lan_ip = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_static_prefix_length = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_static_default_gw = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_static_primary_dns = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_static_secondary_dns = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_autoconfig_dns_enable = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_autoconfig_primary_dns = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_autoconfig_secondary_dns = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: ap_ipv6_wan_specify_dns = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: language = "default"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: uplink_set_by_user = "0"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set_default: Loading from default configuration file: /etc/nvram.default = 1!
nvram_set_default: Checking for symbol "router_defaults"...
nvram_set_default: Checking for symbol "Nvrams"...
nvram_set_default_image: Copying overrides from defaults folder!
sem_get: Key: 410d002a
cp: /firmadyne/libnvram.override/*: No such file or directory
sem_get: Key: 410d002a
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: Unable to open key: /firmadyne/libnvram/sys_cli_debug!
nvram_set: sys_fw_version = "1.05"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_fw_build = "02"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_fw_version_build = "1.05b02"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_fw_date = "22, Aug, 2014"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_fw_week = "Fri"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_kernel_info_version = "2.6.36"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_region = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_lang_en = "multi"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_config_version_major = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_config_version_minor = "01"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_fw_query_url = "http://wrpd.dlink.com/router/firmware/query.aspx?model="
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_fw_query_str = "DAP-1520_Ax_Default"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: wizard_lang = "1"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_hw_version = "XX"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_lan_mac = "00:12:34:56:78:9A"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_5g_wlan_mac = "00:12:34:56:78:9C"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_wlan_domain = "0x10"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_wlan_ssid = "������"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_wlan_key = "�����������������������������"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_wlan_5g_ssid = "���������������������������������"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_set: sys_wlan_5g_key = ""
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: sys_lan_mac
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "00:12:34:56:78:9A"
nvram_set: sys_ath1_mac = "02:12:34:56:78:9A"
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: admin_username
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "admin"
nvram_get_buf: admin_password
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: lan_eth
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "eth2"
nvram_get_buf: lan_bridge
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "br0"
nvram_get_buf: ap_ipaddr
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "192.168.0.50"
nvram_get_buf: ap_netmask
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "255.255.255.0"
nvram_get_buf: ap_gateway
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0.0.0.0"
nvram_get_buf: ap_primary_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0.0.0.0"
nvram_get_buf: ap_secondary_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0.0.0.0"
nvram_get_buf: ap_device_name
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "dlinkap"
nvram_get_buf: dhcpc_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_5g_dot11_mode
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "11anac"
nvram_get_buf: wlan0_5g_channel
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "36"
nvram_get_buf: wlan0_5g_auto_channel_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_5g_beacon_interval
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "100"
nvram_get_buf: wlan0_5g_dtim
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_5g_txpower
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "100"
nvram_get_buf: wlan0_5g_wmm_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_5g_wep_display
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "hex"
nvram_get_buf: wlan0_5g_psk_cipher_type
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "both"
nvram_get_buf: wlan0_5g_wep64_key
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0000000000"
nvram_get_buf: wlan0_5g_wep128_key
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "00000000000000000000000000"
nvram_get_buf: wlan0_5g_11n_protection
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "auto"
nvram_get_buf: wlan0_5g_dfs_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: wlan0_5g_rts_threshold
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "2347"
nvram_get_buf: wlan0_5g_fragmentation
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "2346"
nvram_get_buf: wlan0_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_channel
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "6"
nvram_get_buf: wlan0_auto_channel_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_dot11_mode
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "11bgn"
nvram_get_buf: wlan0_ssid_broadcast
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_wep64_key
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0000000000"
nvram_get_buf: wlan0_wep128_key
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "00000000000000000000000000"
nvram_get_buf: wlan0_wep_display
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "hex"
nvram_get_buf: wlan0_psk_cipher_type
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "both"
nvram_get_buf: wlan0_txpower
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "100"
nvram_get_buf: wlan0_beacon_interval
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "100"
nvram_get_buf: wlan0_rts_threshold
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "2347"
nvram_get_buf: wlan0_fragmentation
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "2346"
nvram_get_buf: wlan0_dtim
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_partition
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: wlan0_short_gi
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_wmm_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_11n_protection
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "auto"
nvram_get_buf: wlan0_gkey_rekey_time
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "3600"
nvram_get_buf: wlan0_txchainmask
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "3"
nvram_get_buf: wlan0_rxchainmask
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "3"
nvram_get_buf: wlan0_disablecoext
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: wlan0_wps_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan0_wps_configured_mode
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "5"
nvram_get_buf: wlan0_disable_wps_pin
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan_repeater_mode
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan1_ssid
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: wlan1_security
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "disable"
nvram_get_buf: wlan1_wep64_key
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0000000000"
nvram_get_buf: wlan1_wep128_key
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "00000000000000000000000000"
nvram_get_buf: wlan1_wep_display
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "hex"
nvram_get_buf: wlan1_psk_cipher_type
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "both"
nvram_get_buf: wlan1_psk_pass_phrase
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1234567890"
nvram_get_buf: wlan1_wps_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan1_11n_protection
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "auto"
nvram_get_buf: hostname
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "DAP-1520"
nvram_get_buf: model_number
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "DAP-1520"
nvram_get_buf: friendlyname
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "DAP-1520"
nvram_get_buf: manufacturer
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "D-Link"
nvram_get_buf: manufacturer_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "http://www.dlink.com"
nvram_get_buf: model_name
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "D-Link Repeater"
nvram_get_buf: model_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "http://support.dlink.com"
nvram_get_buf: serial_number
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "none"
nvram_get_buf: system_time
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "2011/01/01/00/00/00"
nvram_get_buf: graph_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "none"
nvram_get_buf: session_timeout
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "180"
nvram_get_buf: ntp_client_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: time_zone
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "-128"
nvram_get_buf: time_zone_area
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "4"
nvram_get_buf: ntp_server
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ntp_default_server
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "ntp1.dlink.com,ntp.dlink.com.tw"
nvram_get_buf: ntp_sync_interval
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "168"
nvram_get_buf: time_daylight_saving_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: time_daylight_saving_start_month
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "3"
nvram_get_buf: time_daylight_saving_start_week
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "3"
nvram_get_buf: time_daylight_saving_start_day_of_week
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: time_daylight_saving_start_time
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: time_daylight_saving_end_month
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "11"
nvram_get_buf: time_daylight_saving_end_week
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "2"
nvram_get_buf: time_daylight_saving_end_day_of_week
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: time_daylight_saving_end_time
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: time_daylight_offset
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "3600"
nvram_get_buf: syslog_server
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0/0.0.0.0"
nvram_get_buf: log_system_activity
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: log_debug_information
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: log_attacks
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: log_dropped_packets
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: log_notice
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: log_per_page
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "10"
nvram_get_buf: log_total_page
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: log_current_page
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: log_response_type
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "system|debug|attack|dropped|notice"
nvram_get_buf: setup_wizard_ap
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: wlan1_wps_wizard
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: default_downlink_ssid
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "1"
nvram_get_buf: pure_type
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "Repeater"
nvram_get_buf: pure_type_new
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "WiFiAccessPoint"
nvram_get_buf: pure_device_name
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "D-Link Systems DAP-1520"
nvram_get_buf: pure_vendor_name
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "D-Link"
nvram_get_buf: pure_model_description
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "Wireless Repeater"
nvram_get_buf: pure_presentation_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "/Device_Info.htm"
nvram_get_buf: pure_wireless_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "/wireless.htm"
nvram_get_buf: pure_wireless_url_new
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "/Wireless.htm"
nvram_get_buf: pure_block_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: pure_parental_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: pure_reboot_page
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "reboot.htm"
nvram_get_buf: pure_support_url
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "http://support.dlink.com/products/view.asp?productid=DAP-1520"
nvram_get_buf: ap_ipv6_wan_proto
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "ipv6_autoconfig"
nvram_get_buf: ap_ipv6_static_lan_ip
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_static_prefix_length
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_static_default_gw
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_static_primary_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_static_secondary_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_autoconfig_dns_enable
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: ap_ipv6_autoconfig_primary_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_autoconfig_secondary_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = ""
nvram_get_buf: ap_ipv6_wan_specify_dns
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
nvram_get_buf: language
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "default"
nvram_get_buf: uplink_set_by_user
sem_get: Key: 410d002a
sem_get: Key: 410d002a
nvram_get_buf: = "0"
```