2021-05-13 15:45:39 +00:00
<!--
Author: Xianjun jiao
SPDX-FileCopyrightText: 2021 UGent
SPDX-License-Identifier: AGPL-3.0-or-later
-->
2021-07-06 10:08:43 +00:00
[ACM WiSec 2021. Openwifi CSI fuzzer for authorized sensing and covert channels ](https://dl.acm.org/doi/pdf/10.1145/3448300.3468255 )
2021-05-18 08:18:19 +00:00
2021-06-09 10:50:52 +00:00
CSI (Channel State Information) of WiFi systems is available in some WiFi chips and can be used for sensing the environment (keystrokes, people, object) passively and secretly.
2021-06-22 07:36:24 +00:00
## Concept
2021-05-16 14:14:26 +00:00
How could a CSI fuzzer stop unauthorized sensing?
2021-05-13 15:45:39 +00:00
2021-05-16 14:14:26 +00:00
![](./csi-fuzzer-system-before-vs-now.png)
CSI fuzzer implementation principle.
![](./csi-fuzzer-principle.png)
2021-06-22 07:36:24 +00:00
## Demo instructions
2021-05-16 14:14:26 +00:00
2022-04-01 08:04:21 +00:00
Thanks to the full-duplex capability and CSI extraction feature of openwifi, you can monitor the artificial channel response via [side channel ](./csi.md ) by Tx-Rx over the air coupling without affecting the normal operation/traffic of openwifi. Before fuzzing the CSI, please follow [WiFi CSI radar via self CSI capturing ](radar-self-csi.md ) app note to setup normal self CSI monitoring.
2021-05-16 14:14:26 +00:00
2022-04-01 08:04:21 +00:00
Then, start another ssh session to the openwifi board:
2021-06-22 07:36:24 +00:00
```
ssh root@192.168.10.122
(password: openwifi)
cd openwifi
./csi_fuzzer_scan.sh 1
(CSI fuzzer applies possible artificial CSI by scanning all values)
(csi_fuzzer.sh is called. Please read both scripts to understand these commands)
2021-05-16 14:14:26 +00:00
```
2022-04-01 08:04:21 +00:00
Now you should see that CSI keeps changing like in this [video ](https://youtu.be/aOPYwT77Qdw ).
2021-06-22 07:36:24 +00:00
# Further explanation on parameters
CSI fuzzer in openwifi system architecture and related commands.
![](./csi-fuzzer-implementation.png)
# Example fuzzed CSI
2021-05-16 14:14:26 +00:00
CSI self-monitoring before fuzzing.
2021-05-13 15:45:39 +00:00
![](./csi-fuzzer-beacon-ant-back-0.jpg)
2022-04-01 08:04:21 +00:00
CSI self-monitoring after fuzzing command: `./csi_fuzzer.sh 1 45 0 13`
2021-05-13 15:45:39 +00:00
![](./csi-fuzzer-beacon-ant-back-1-45-0-13.jpg)
2021-05-16 14:14:26 +00:00
`csi_fuzzer_scan.sh` can scan the c1 and c2 in different styles/modes by calling `csi_fuzzer.sh` .