seemoo-lab/owl

Program says cannot put device in monitor mode, but it is already in monitor mode.

Jcwscience opened this issue · 3 comments

When I run “sudo owl -i airlink1” (an rtl8812au adapter), I get

ERROR: Error while receiving via netlink: Operation not supported
ERROR: Could not put device in monitor mode: airlink1
ERROR: could not initialize core

If I run “airmon-ng” it reports

ASUSTek Computer, Inc. USB-AC56 802.11a/b/g/n/ac [Realtek RTL8812AU]
                (mac80211 monitor mode already enabled for [phy1]airlink1 on [phy1]airlink1)

Any ideas?
Thanks!

I have the same problem. I'm running kernel 5.15.14-1-lts on Arch and I installed using the AUR package: https://aur.archlinux.org/packages/owlink-git/

I'm using a lenovo X13 that has an Intel AX210 that has an integrated WiFi/Bluetooth chip. And I'm able to manually put it into monitor mode but OWL still doesn't recognize it.

Edit:
Building from source also fails:

❯ make
Consolidate compiler generated dependencies of target radiotap
[  5%] Built target radiotap
Consolidate compiler generated dependencies of target awdl
[ 51%] Built target awdl
Consolidate compiler generated dependencies of target owl
[ 64%] Built target owl
Consolidate compiler generated dependencies of target gtest
[ 67%] Building CXX object googletest/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
In file included from /home/santiago/owl/googletest/googletest/src/gtest-all.cc:42:
/home/santiago/owl/googletest/googletest/src/gtest-death-test.cc: In function 'bool testing::internal::StackGrowsDown()':
/home/santiago/owl/googletest/googletest/src/gtest-death-test.cc:1301:24: error: 'dummy' may be used uninitialized [-Werror=maybe-uninitialized]
 1301 |   StackLowerThanAddress(&dummy, &result);
      |   ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/home/santiago/owl/googletest/googletest/src/gtest-death-test.cc:1290:13: note: by argument 1 of type 'const void*' to 'void testing::internal::StackLowerThanAddress(const void*, bool*)' declared here
 1290 | static void StackLowerThanAddress(const void* ptr, bool* result) {
      |             ^~~~~~~~~~~~~~~~~~~~~
/home/santiago/owl/googletest/googletest/src/gtest-death-test.cc:1299:7: note: 'dummy' declared here
 1299 |   int dummy;
      |       ^~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [googletest/googletest/CMakeFiles/gtest.dir/build.make:76: googletest/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:322: googletest/googletest/CMakeFiles/gtest.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

@santiago-mooser checkout #50; this allowed me to build it from source. However, ^ bug still persists for me.

See issue #9 that mention this. Your device needs to support active monitor mode, it is not the same as monitor mode alone.

I found a GitHub that is very well maintained and I discussed the issue with the owner. Here is a link for the discussion that can help you find an adapter that will work for you.
The owner told me which chipset works with active monitor mode, and if you grab this info you can search on the README of his GitHub an adapter with the mentioned chipset that will work for you: morrownr/USB-WiFi#73

thanks to him, we now have a very modern device list that will work with OWL.