Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Slight issue on Kali Linux 2018 #4

Open
ghost opened this issue Apr 23, 2018 · 27 comments
Open

Slight issue on Kali Linux 2018 #4

ghost opened this issue Apr 23, 2018 · 27 comments

Comments

@ghost
Copy link

ghost commented Apr 23, 2018

when I run:

...@kali:~/Downloads/trackerjacker-master$ pip3 install trackerjacker
Collecting trackerjacker
Using cached https://files.pythonhosted.org/packages/b0/a9/70c7ec302ddb2928a982954cc49fa0c42b5ff833e23cd3eb4dfc371e41b0/trackerjacker-1.7.4.tar.gz
Collecting pyaml>=17.12.1 (from trackerjacker)
Using cached https://files.pythonhosted.org/packages/17/c1/5892f756109e54ed53c753129b0da4acf6b6add8dff5a85b18667553b16d/pyaml-17.12.1-py2.py3-none-any.whl
Collecting ruamel.yaml>=0.15.35 (from trackerjacker)
Using cached https://files.pythonhosted.org/packages/98/cc/ba3b6ccd0a4f6c51d128742fc5f0f43ae570d67174342578591c50f30013/ruamel.yaml-0.15.37-cp36-cp36m-manylinux1_x86_64.whl
Collecting scapy-python3>=0.21 (from trackerjacker)
Collecting PyYAML (from pyaml>=17.12.1->trackerjacker)
Building wheels for collected packages: trackerjacker
Running setup.py bdist_wheel for trackerjacker ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-a181dxe4/trackerjacker/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" bdist_wheel -d /tmp/tmp683nwiyppip-wheel- --python-tag cp36:
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/trackerjacker
copying trackerjacker/init.py -> build/lib/trackerjacker
copying trackerjacker/dot11_mapper.py -> build/lib/trackerjacker
copying trackerjacker/macos_device_management.py -> build/lib/trackerjacker
copying trackerjacker/main.py -> build/lib/trackerjacker
copying trackerjacker/config_management.py -> build/lib/trackerjacker
copying trackerjacker/dot11_tracker.py -> build/lib/trackerjacker
copying trackerjacker/ieee_mac_vendor_db.py -> build/lib/trackerjacker
copying trackerjacker/plugin_parser.py -> build/lib/trackerjacker
copying trackerjacker/common.py -> build/lib/trackerjacker
copying trackerjacker/version.py -> build/lib/trackerjacker
copying trackerjacker/device_management.py -> build/lib/trackerjacker
copying trackerjacker/dot11_frame.py -> build/lib/trackerjacker
running egg_info
writing trackerjacker.egg-info/PKG-INFO
writing dependency_links to trackerjacker.egg-info/dependency_links.txt
writing entry points to trackerjacker.egg-info/entry_points.txt
writing requirements to trackerjacker.egg-info/requires.txt
writing top-level names to trackerjacker.egg-info/top_level.txt
reading manifest file 'trackerjacker.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'trackerjacker.egg-info/SOURCES.txt'
copying trackerjacker/oui.txt -> build/lib/trackerjacker
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/init.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/dot11_mapper.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/macos_device_management.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/main.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/config_management.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/dot11_tracker.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/ieee_mac_vendor_db.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/plugin_parser.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/common.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/version.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/device_management.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/dot11_frame.py -> build/bdist.linux-x86_64/wheel/trackerjacker
copying build/lib/trackerjacker/oui.txt -> build/bdist.linux-x86_64/wheel/trackerjacker
running install_egg_info
Copying trackerjacker.egg-info to build/bdist.linux-x86_64/wheel/trackerjacker-1.7.4.egg-info
running install_scripts
Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-build-a181dxe4/trackerjacker/setup.py", line 53, in
'Operating System :: POSIX :: Linux'
File "/usr/lib/python3/dist-packages/setuptools/init.py", line 129, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 257, in run
self.distinfo_dir)
File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 427, in egg2dist
distribution=self.distribution)
File "/usr/lib/python3/dist-packages/wheel/metadata.py", line 177, in pkginfo_to_dict
new_requirements = sorted(convert_requirements(requirements))
File "/usr/lib/python3/dist-packages/wheel/metadata.py", line 234, in convert_requirements
parsed_requirement = pkg_resources.Requirement.parse(req)
File "/usr/lib/python3/dist-packages/pkg_resources/init.py", line 2988, in parse
req, = parse_requirements(s)
ValueError: not enough values to unpack (expected 1, got 0)


Failed building wheel for trackerjacker
Running setup.py clean for trackerjacker
Failed to build trackerjacker
Installing collected packages: PyYAML, pyaml, ruamel.yaml, scapy-python3, trackerjacker
Running setup.py install for trackerjacker ... done
Successfully installed PyYAML-3.12 pyaml-17.12.1 ruamel.yaml-0.15.37 scapy-python3-0.23 trackerjacker-1.7.4
....@kali:~/Downloads/trackerjacker-master$

Is that expected output ? Also would it be possible to add email alert for a specified device mac ?

Seems like a useful project!

Thanks in advance.

@calebmadrigal
Copy link
Owner

Hey @rafaleon69, thanks for reporting this. Very strange error, I'll have to look into it later. It looks like trackerjacker was still successfully installed though (based on that log)?

As for email output, you could use something like IFTTT to accomplish that (if Webhook, then email). With the IFTTT Webhook "service", you can just curl the url they specify to trigger something, which you could easily do from a script that you have trackerjacker call on matches with the --trigger-command or --trigger-plugin switches.

@ghost
Copy link
Author

ghost commented Apr 24, 2018

Thanks for a quick reply, I managed to get it installed by cloning the github repo and instaling using sudo python3 setup.py install. Seems to be working fine this way, although previous way returned errors as described yet still it ran, but i prefer to have no errors in my installation. Thanks for an advice, time to tinker, thanks a lot!

@calebmadrigal
Copy link
Owner

Sweet. Ya, I feel the same way about errors on installation. It's odd, because those errors are coming from stdlib files. Thanks for the update.

@ghost
Copy link
Author

ghost commented Apr 24, 2018

One more thing if I may contribute. When I run it on a RPi Kali linux it does not work with any of the wireless cards I tried:

root@RPiKali:~# trackerjacker -i wlan2
Map output file: wifi_map.yaml
Monitoring all available channels on wlan2: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 36, 38, 40, 42, 44, 46, 48, 52, 56, 58, 60, 62, 64, 149, 153, 157, 161, 165]
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 235, in getattr
fld, v = self.getfield_and_val(attr)
TypeError: 'NoneType' object is not iterable

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 235, in getattr
fld, v = self.getfield_and_val(attr)
TypeError: 'NoneType' object is not iterable

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 235, in getattr
fld, v = self.getfield_and_val(attr)
TypeError: 'NoneType' object is not iterable

and so on for a couple of lines and then at the end:

Traceback (most recent call last):
File "/usr/local/bin/trackerjacker", line 11, in
load_entry_point('trackerjacker==1.7.4', 'console_scripts', 'trackerjacker')()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.4-py3.6.egg/trackerjacker/main.py", line 277, in main
tj.start()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.4-py3.6.egg/trackerjacker/main.py", line 202, in start
scapy.sniff(iface=self.iface_manager.iface, prn=self.process_packet, store=0)
File "/usr/local/lib/python3.6/dist-packages/scapy/sendrecv.py", line 780, in sniff
r = prn(p)
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.4-py3.6.egg/trackerjacker/main.py", line 145, in process_packet
frame = dot11_frame.Dot11Frame(pkt, int(self.iface_manager.current_channel), iface=self.iface_manager.iface)
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.4-py3.6.egg/trackerjacker/dot11_frame.py", line 61, in init
self.signal_strength = frame[scapy.RadioTap].dbm_antsignal
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 237, in getattr
return self.payload.getattr(attr)
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 237, in getattr
return self.payload.getattr(attr)
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 237, in getattr
return self.payload.getattr(attr)
[Previous line repeated 14 more times]
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 235, in getattr
fld, v = self.getfield_and_val(attr)
File "/usr/local/lib/python3.6/dist-packages/scapy/packet.py", line 1291, in getfield_and_val
raise AttributeError(attr)
AttributeError: dbm_antsignal

However on my laptop running same distro Kali Linux it runs fine for few minutes and crashes with:

Disabling monitor mode for interface: wlan1
Traceback (most recent call last):
File "/usr/local/bin/trackerjacker", line 11, in
load_entry_point('trackerjacker==1.7.4', 'console_scripts', 'trackerjacker')()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker/main.py", line 277, in main
tj.start()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker/main.py", line 202, in start
scapy.sniff(iface=self.iface_manager.iface, prn=self.process_packet, store=0)
File "/usr/local/lib/python3.6/dist-packages/scapy/sendrecv.py", line 594, in sniff
p = s.recv(MTU)
File "/usr/local/lib/python3.6/dist-packages/scapy/arch/linux.py", line 503, in recv
pkt, sa_ll = self.ins.recvfrom(x)
OSError: [Errno 100] Network is down

@ghost
Copy link
Author

ghost commented Apr 24, 2018

There were no error with the installation script:

root@RPiKali:~/trackerjacker# python3 setup.py install
running install
running bdist_egg
running egg_info
writing trackerjacker.egg-info/PKG-INFO
writing dependency_links to trackerjacker.egg-info/dependency_links.txt
writing entry points to trackerjacker.egg-info/entry_points.txt
writing requirements to trackerjacker.egg-info/requires.txt
writing top-level names to trackerjacker.egg-info/top_level.txt
reading manifest file 'trackerjacker.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'trackerjacker.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-armv7l/egg
running install_lib
running build_py
copying trackerjacker/device_management.py -> build/lib/trackerjacker
creating build/bdist.linux-armv7l/egg
creating build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/dot11_tracker.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/config_management.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/version.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/main.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/init.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/oui.txt -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/plugin_parser.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/dot11_mapper.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/dot11_frame.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/ieee_mac_vendor_db.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/common.py -> build/bdist.linux-armv7l/egg/trackerjacker
copying build/lib/trackerjacker/device_management.py -> build/bdist.linux-armv7l/egg/trackerjacker
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/dot11_tracker.py to dot11_tracker.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/config_management.py to config_management.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/version.py to version.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/main.py to main.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/init.py to init.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/plugin_parser.py to plugin_parser.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/dot11_mapper.py to dot11_mapper.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/dot11_frame.py to dot11_frame.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/ieee_mac_vendor_db.py to ieee_mac_vendor_db.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/common.py to common.cpython-36.pyc
byte-compiling build/bdist.linux-armv7l/egg/trackerjacker/device_management.py to device_management.cpython-36.pyc
creating build/bdist.linux-armv7l/egg/EGG-INFO
copying trackerjacker.egg-info/PKG-INFO -> build/bdist.linux-armv7l/egg/EGG-INFO
copying trackerjacker.egg-info/SOURCES.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying trackerjacker.egg-info/dependency_links.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying trackerjacker.egg-info/entry_points.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying trackerjacker.egg-info/requires.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying trackerjacker.egg-info/top_level.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
trackerjacker.pycache.config_management.cpython-36: module references file
trackerjacker.pycache.ieee_mac_vendor_db.cpython-36: module references file
creating 'dist/trackerjacker-1.7.4-py3.6.egg' and adding 'build/bdist.linux-armv7l/egg' to it
removing 'build/bdist.linux-armv7l/egg' (and everything under it)
Processing trackerjacker-1.7.4-py3.6.egg
creating /usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.4-py3.6.egg
Extracting trackerjacker-1.7.4-py3.6.egg to /usr/local/lib/python3.6/dist-packages
Adding trackerjacker 1.7.4 to easy-install.pth file
Installing trackerjacker script to /usr/local/bin

Installed /usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.4-py3.6.egg
Processing dependencies for trackerjacker==1.7.4
Searching for scapy-python3==0.23
Best match: scapy-python3 0.23
Processing scapy_python3-0.23-py3.6.egg
scapy-python3 0.23 is already the active version in easy-install.pth
Installing UTscapy script to /usr/local/bin
Installing scapy script to /usr/local/bin

Using /usr/local/lib/python3.6/dist-packages/scapy_python3-0.23-py3.6.egg
Searching for ruamel.yaml==0.15.37
Best match: ruamel.yaml 0.15.37
Processing ruamel.yaml-0.15.37-py3.6-linux-armv7l.egg
ruamel.yaml 0.15.37 is already the active version in easy-install.pth

Using /usr/local/lib/python3.6/dist-packages/ruamel.yaml-0.15.37-py3.6-linux-armv7l.egg
Searching for pyaml==17.12.1
Best match: pyaml 17.12.1
Processing pyaml-17.12.1-py3.6.egg
pyaml 17.12.1 is already the active version in easy-install.pth

Using /usr/local/lib/python3.6/dist-packages/pyaml-17.12.1-py3.6.egg
Searching for PyYAML==3.12
Best match: PyYAML 3.12
Adding PyYAML 3.12 to easy-install.pth file

Using /usr/lib/python3/dist-packages
Finished processing dependencies for trackerjacker==1.7.4

@calebmadrigal
Copy link
Owner

Both errors should be fixed in version 1.7.5. Let me know if they still persist.

@ghost
Copy link
Author

ghost commented Apr 24, 2018

That was the one! I run it on my laptop and managed to get it installed on RPi without any hiccups , thank you. Fascinating project I was looking for a long time for something like this. Question though, as I am reading the help of trackerjacker if I am not mistaken, it can monitor devices connected to an AP by using a prefix -a, am I right ? I figured I needed to lock the channel to monitor it, otherwise it would scan all. My AP is on channel 5 in this case.

So when I run: trackerjacker -i wlan0 --channels-to-monitor 5 -a xx:xx:xx:xx:xx:xx
It shows mac devices, but they are foreign ones from other AP's and just few from my own network. It seems like -a command is not recognized or have I done something wrong?. I used netdiscover and my router config to compare them. Can it discover devices like Kismet can and display them during scan ? I have looked through wifi_map.yaml and tracker got them spot on! Not a big issue for what I am trying to do but just a observation.

@calebmadrigal
Copy link
Owner

@rafaleon69 Sweet. Filtering by AP is still kind of in the works for mapping. The -a flag (along with the -m flag) is mostly for tracking, so you can give it a list of APs to track and, when seen, trigger some action.

@ghost
Copy link
Author

ghost commented Apr 24, 2018

I see ,I still have a lot to explore if its potential. Some food for though, I am trying to build WiFi surveillance system on my RPi and one of the projects I used was WUDS that looks at probes that devices send and tries to determine who is in range. Perhaps an extension like this would be useful in trackerjacker as WUDS is no longer maintained?

@calebmadrigal
Copy link
Owner

calebmadrigal commented Apr 24, 2018

This kind of thing should really work well with trackerjacker's plugin system (e.g. https://github.com/calebmadrigal/trackerjacker/blob/master/plugin_examples/plugin_example1.py).

The plugin system is very powerful. I actually implemented some of the functionality I wanted in triggers (https://github.com/calebmadrigal/trackerjacker/blob/master/trackerjacker/plugins/foxhunt.py).

If you write any really cool plugins that could be useful to a wider audience, I'd potentially incorporate them into the builtin plugins (like foxhunt).

@ghost
Copy link
Author

ghost commented Apr 25, 2018

Hey, I hate to come back to you like that but when I try to load a plugin feature, even built in one I get:

Traceback (most recent call last):
File "/usr/local/bin/trackerjacker", line 11, in
load_entry_point('trackerjacker==1.7.6', 'console_scripts', 'trackerjacker')()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/main.py", line 272, in main
config = config_management.build_config(argparse_args)
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/config_management.py", line 241, in build_config
parsed_trigger_plugin = plugin_parser.parse_trigger_plugin(trigger_plugin_path, config['plugin_config'])
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/plugin_parser.py", line 36, in parse_trigger_plugin
with open(trigger_path, 'r') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'foxhunt'

Any other suggestion ?

All the best.

@calebmadrigal
Copy link
Owner

No worries, any feedback is helpful. Can you give the command you're running?

Builtin plugins (currently just foxhunt) should be run without specifying the .py like this: trackerjacker -i wlan1337 --track --trigger-plugin foxhunt, while any other plugins should simply specify the path to the plugin (e.g. trackerjacker -i wlan1337 --track --trigger-plugin plugin_examples/plugin_example1.py).

@ghost
Copy link
Author

ghost commented Apr 25, 2018

i run it like that:

@kali:~$ sudo trackerjacker -i wlan1 --track --trigger-plugin foxhunt
Traceback (most recent call last):
File "/usr/local/bin/trackerjacker", line 11, in
load_entry_point('trackerjacker==1.7.6', 'console_scripts', 'trackerjacker')()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/main.py", line 272, in main
config = config_management.build_config(argparse_args)
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/config_management.py", line 241, in build_config
parsed_trigger_plugin = plugin_parser.parse_trigger_plugin(trigger_plugin_path, config['plugin_config'])
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/plugin_parser.py", line 36, in parse_trigger_plugin
with open(trigger_path, 'r') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'foxhunt'

@ghost
Copy link
Author

ghost commented Apr 25, 2018

is it because I installed it through sudo python3 setup.py install maybe? And yes I have noticed you have released 1.7.6, i got this one. I also tried with the specified path by:
kali:~/Downloads/trackerjacker-1.7.6$ sudo trackerjacker -i wlan1 --track --trigger-plugin /home/rafaleon/Downloads/trackerjacker-1.7.6/foxhunt.py (thats were I put a plgin for convenience)

It seems to run for a sec, black screen appears for a sec and comes back crashing.

PS. the packed version I downloaded does not contain plugins folder, I copied it from the master version to the downloaded one.

@calebmadrigal
Copy link
Owner

Oh shoot, good catch - it only works if you're in the trackerjacker dir. I'll fix that later tonight. Thanks for finding this.

@ghost
Copy link
Author

ghost commented Apr 25, 2018

I dont have to be in the trackjacker dir to get it running. It runs from anywhere.

rafaleon@kali:/Downloads$ ls
'comptia-pentest-exam-objectives-(2-0).pdf'
'O'''Reilly Network Security Assessment (2nd Edition).pdf'
teamviewer_13.1.3026_amd64.deb
trackerjacker-1.7.6
trackerjacker-1.7.6.tar.gz
trackerjacker-master
trackerjacker-master.zip
rafaleon@kali:
/Downloads$ trackjacker -h
bash: trackjacker: command not found
rafaleon@kali:/Downloads$ trackerjacker -h
trackerjacker requires r00t!
rafaleon@kali:
/Downloads$ sudo trackerjacker -h
[sudo] password for rafaleon:
usage: trackerjacker [-h] [--map] [--track] [--monitor-mode-on]
[--monitor-mode-off] [--set-channel CHANNEL]
[--mac-lookup MAC_LOOKUP] [--print-default-config] [-v]
[-i IFACE] [-m DEVICES_TO_WATCH] [-a APS_TO_WATCH]
[--channels-to-monitor CHANNELS_TO_MONITOR]
[-w THRESHOLD_WINDOW]
[--map-save-interval MAP_SAVE_INTERVAL]
[--threshold THRESHOLD] [--power POWER]
[--trigger-plugin TRIGGER_PLUGIN]
[--plugin-config PLUGIN_CONFIG]
[--trigger-command TRIGGER_COMMAND]
[--trigger-cooldown TRIGGER_COOLDOWN]
[--display-all-packets] [--beep-on-trigger]
[--map-file MAP_FILE] [--log-path LOG_PATH]
[--log-level LOG_LEVEL] [-c CONFIG]

@ghost
Copy link
Author

ghost commented Apr 25, 2018

and it seems like 1.7.6 version still have this error:

sudo trackerjacker -i wlan1
Map output file: wifi_map.yaml
Monitoring all available channels on wlan1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
Traceback (most recent call last):
File "/usr/local/bin/trackerjacker", line 11, in
load_entry_point('trackerjacker==1.7.6', 'console_scripts', 'trackerjacker')()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/main.py", line 286, in main
tj.start()
File "/usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.6-py3.6.egg/trackerjacker/main.py", line 205, in start
scapy.sniff(iface=self.iface_manager.iface, prn=self.process_packet, store=0, exceptions=True)
File "/usr/local/lib/python3.6/dist-packages/scapy/sendrecv.py", line 731, in sniff
*arg, **karg)] = iface
TypeError: init() got an unexpected keyword argument 'exceptions'

@calebmadrigal
Copy link
Owner

Looks like older versions of scapy don't support that kwarg (I probably need to specify the version of scapy more precisely). But in the meantime, I put in a check. Try version 1.7.7 - it should fix the errors you mentioned.

@ghost
Copy link
Author

ghost commented Apr 25, 2018

1.7.7 works as it should.

@ghost
Copy link
Author

ghost commented Apr 26, 2018

With the plugin bit, there is a step forward:

sudo trackerjacker -i wlan1 --track --trigger-plugin foxhunt
Possible builtin path: /usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.7-py3.6.egg/trackerjacker/plugins/foxhunt.py
Possible builtin path: /usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.7-py3.6.egg/trackerjacker/plugins/foxhunt.py
|||

Wireless adapter blinks so does ||| rectangle sign but returns above information.

No further output.

@ghost
Copy link
Author

ghost commented Apr 26, 2018

Just saw new version, i got the 1.7.8. Now plugin system does not give this message, so step forward:

Possible builtin path: /usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.7-py3.6.egg/trackerjacker/plugins/foxhunt.py
Possible builtin path: /usr/local/lib/python3.6/dist-packages/trackerjacker-1.7.7-py3.6.egg/trackerjacker/plugins/foxhunt.py

Cursor blinks without any output, like it cannot load the plugin. Is it something off on my side I wonder?
Other plugins I tried to load, just return standard output.

@calebmadrigal
Copy link
Owner

calebmadrigal commented Apr 26, 2018 via email

@ghost
Copy link
Author

ghost commented Apr 26, 2018

pip3 install scapy-python3
Requirement already satisfied: scapy-python3 in /usr/local/lib/python3.6/dist-packages/scapy_python3-0.23-py3.6.egg

I tried other plugins, example1.py seems to work, returns a lot of those, with the correct mac addresses and few like this: 33:33:00:00:00:01 seen at: [1524753594.9933338]
Example2 is used to detect threshold which I managed to get it running. But even when I provide path to foxhunt, this one in particular would not run - or without path.

@calebmadrigal
Copy link
Owner

Ya, I think the combination of scapy and your wifi card may not support the RadioTap layer (which is where the signal power level comes from). Without that, the foxhunt mode doesn't work (since it's based off the signal power level).

@ghost
Copy link
Author

ghost commented Apr 26, 2018

I am just trying to narrow the problem. I have installed trackerjacker on a fresh raspbian os and foxhunt did not work either. Strangely even pip3 install trackerjacker would not compile it either. I tried it on a different box, with Kali installed and the plugin loaded for a minute and crashed. That was with internal wifi card (capable of being in a monitor mode and promisc)

Can I ask what OS and WiFi adapter you are using ?

@ghost
Copy link
Author

ghost commented Apr 26, 2018

I can only imagine that debugging can be hard, but can I make a suggestion. I have been browsing around and I have found this program, similar to yours but based on probe responses, right off the bat it shows SIGNAL strength, might be worth looking if you need an inspiration : https://github.com/hkm/whoishere.py/

@logix2
Copy link

logix2 commented Aug 15, 2018

PIP3 installation fails on Ubuntu 18.04 too. It looks like it detects it as MacOS?

  Copying trackerjacker.egg-info to build/bdist.linux-x86_64/wheel/trackerjacker-1.8.7-py3.6.egg-info
  running install_scripts
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-build-x8c4r_zi/trackerjacker/setup.py", line 54, in <module>
      'Operating System :: MacOS'
    File "/home/logix/.local/lib/python3.6/site-packages/setuptools/__init__.py", line 129, in setup
      return distutils.core.setup(**attrs)
    File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 257, in run
      self.distinfo_dir)
    File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 427, in egg2dist
      distribution=self.distribution)
    File "/usr/lib/python3/dist-packages/wheel/metadata.py", line 177, in pkginfo_to_dict
      new_requirements = sorted(convert_requirements(requirements))
    File "/usr/lib/python3/dist-packages/wheel/metadata.py", line 234, in convert_requirements
      parsed_requirement = pkg_resources.Requirement.parse(req)
    File "/home/logix/.local/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2995, in parse
      req, = parse_requirements(s)
  ValueError: not enough values to unpack (expected 1, got 0)
  
  ----------------------------------------
  Failed building wheel for trackerjacker
  Running setup.py clean for trackerjacker
  Running setup.py bdist_wheel for scapy ... done
  Stored in directory: /home/logix/.cache/pip/wheels/cf/03/88/296bf69fee1f9ec7a87e122da52253b65f3067f6ea8719b473
  Running setup.py bdist_wheel for PyYAML ... done
  Stored in directory: /home/logix/.cache/pip/wheels/ad/da/0c/74eb680767247273e2cf2723482cb9c924fe70af57c334513f

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants