• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Whiskers

Search This thread
S

SevenRains

Guest
[Map Overview]

whiskersMapDisplay.php


Green dots represent Access Points
Blue dots represent Bluetooth Devices

Map updates on page refresh and is based on user uploads.

[About]
Whiskers is an educational PocketPC application under the GNU/GPL license which tries to exploit all the hardware available on most common PDAs providing a link between different features such as GPS-Bluetooth-Wireless. Generally whiskers was built with radio reconnaissance in mind as help for geocachers or wardrivers but also as penetration and audit tool. There is support for in depth device scanning, triggering actions based on filters when certain devices are in range, centralized GPS logging with search functions for private or public databases and much more.

[Requirements]

  • WM5 onward
  • Compact Framework 3.5
  • Microsoft Bluetooth Stack (?unconfirmed?)

[Features]

  • Continuous scanning for Wireless and Bluetooth
  • Device logging (open, save etc..)
  • Bluejacking (two supported methods, more to come soon).
  • Autojacking
  • Device scripting, triggering specific actions when a device is in range based on filters such as device name, address, device class (laptop, phone, smartphone whatever...).
  • GPS logging based on GPX file with centralized database
  • Ability to contribute to the database: scan and upload to the central database.
  • Searching for devices in the database by name, address and Wireless or Bluetooth radio.
  • More to come :)

[Screenshots]

whiskers_4.jpg


[Download]
Stable releases are those who were thoroughly tested by several people. They don't contain the latest features, modifications or bugfixes but they are bound to work and be compatible. Snapshot releases are development releases with new features and enhancements and are thus prone to not work correctly. In either case, if you've found a bug, please report it and I'll fix it asap! The stable releases also contain the source code. You can find the most recent cab file after you extract the archive at WhiskersCAB/Release/WhiskersCAB.CAB

[Stable]
HERE or HERE

[Snapshots]
Top most is the most recent version! If you post bug reports please post them for the top most version in the list below. The others below the top most are there just for history purpose. Please download the top most as it contains the recent changes and bugfixes.
http://rapidshare.com/files/203178761/Whiskers-200902272712.CAB
http://rapidshare.com/files/195599015/Whiskers-200908024416.CAB
http://rapidshare.com/files/194612862/Whiskers-200902060010.CAB
http://rapidshare.com/files/193026445/Whiskers-200902024318.CAB
http://rapidshare.com/files/192192948/Whiskers-200901310821.CAB
http://rapidshare.com/files/191631039/Whiskers-200901301416.CAB
http://rapidshare.com/files/190308621/Whiskers-200901273619.CAB
http://rapidshare.com/files/188808467/Whiskers-200901243517.CAB

[ SVN ]
You can always grab the latest SVN version from HERE. Please note that this will change in time and is considered the most unstable version of Whiskers. If you just want to browse the repository, you can do so HERE.

[TODO]
- Add documentation
- Test on different platforms (other than mine)

[Changes]
current:
0.1:

  • Initial release

[More]
http://www.sourceforge.net/projects/whiskers

[Install]

  • If you downloaded the CAB file, just copy to your device and install as normal. In case you've downloaded the stable version, you'll find the CAB file in WhiskersCAB/Release and you can copy it to your device and install.
[Uninstall]

  • Just uninstall from add/remove programs.
[Credits]
My first thanks go to the xda-developers forum for providing continuous support and testing for Sunscape. I am pretty sure no project would have gotten very far without this invaluable input. Secondly, I want to thank the creator of btCrawler for being an inspiration and going down as a true martyr when the eh... "German Law of Cybercrime" got him. I feel you c0rnholio!

-*-
 
Last edited:
S

SevenRains

Guest
[Documentation]

In this documentation I will refer to the screenshots in the initial post. If you look at the tabs at the bottom you'll see four of them: "Scan", "Jack", "Script" and "Track". I'll try to walk you through all of those step-by-step since currently there is no documentation.


  • Scan
This is the main tab of Whiskers. It will not only scan for devices whether Bluetooth or Wireless but you will also be able to do various things with the found devices.


  • For a quick start, your bluetooth and/or wireless adapter has to be switched on. Whiskers doesn't do this for you and should fail silently if it doesn't find the adapter turned on.

  • Then you can just hit the Scan button and Whiskers will start to scan for devices or access points around you.

  • You can press "Clear" to flush current found devices or press "Delete" to remove individual devices from the list. Naturally, if Whiskers is scanning it will probably find the device again.

  • The input box right next to the Start button is the scanning time interval measured in milliseconds. That is, the time for which Whiskers will pause between scanning. You can set it at your convenience but 1000ms (1s) is quite a good value.

  • The Open / Save buttons you can use to open a saved list or store a saved list.
Let's move on to the Comm tab.

  • Comm
This tab is meant for communicating with other users using Whiskers. Although it's only based on bluetooth and hence the short range, it may come in handy when other Whiskers features will be implemented.

  • To communicate with a device, first make sure you've scanned it using the Scan tab, enter your message in the box below and click Send. If the other device is using Whiskers and is in listening mode, after a couple of tries your message should appear on your screen and on the other device's screen.

  • To receive messages, you must have clicked the Start Listening button which will make Whiskers listen to all incoming messages.
And now the Jack tab.

  • Jack
This tab is meant for jacking / autojacking. I have some development ideas which I won't divulge just yet but for the time being only this form of eh... annoyance is possible. The whole concept started from quite an old java applet I used to have on my mobile phone... You could set it to jack a message continuously and you'd just stroll around and it would jack any device which came in range.


  • To jack a device (only bluetooth devices, of course) you select a device in the Scan tab, then select the Jack method, either pairing or file, enter your message (the shorter the message the better!) and press the Jack button.

  • To autojack, you enter your message and and select a jacking logic (rotation - Whiskers will rotate in a round-robin fashion going through all devices, first in - Whiskers will jack any "new" device it finds, random - Whiskers will randomly select devices from the Scan tab) and press the Start AutoJack button. If you switch to the Scan tab you will see which device Whiskers is currently jacking. The time to live (TTL) is how much Whiskers will wait for a timeout while jacking a device (10 000ms, 10 seconds should give enough time to properly jack a device).
Please use this feature responsibly :) Let's move on to the Script tab.


  • Script
The purpose of this feature is to execute certain commands when a specific device is detected. You can search for a specific address, device name, type of device (the drop down boxes will help you choose), and whether it should be a BT (Bluetooth) device or an AP (access point).


  • To add a script, you may choose to fill any or none of the filters. You can search for a device name... Or maybe just a device class... Then you write or browse for an executable and fill in any optional parameters and click Add. You can later add the script by just clicking the script in the big box.

  • The next step is to enable scripts by clicking the Enable Scripts button. The time frequency (in milliseconds) is how often the scripts will trigger on the devices it finds.
That's it for the Script tab.


  • Track
Uh. This is a difficult one. The Track tab, given you have a GPS device, will log at what latitude and longitude it found a device. It will store this in a GPX file along with the device name and device address. Optionally, of course, once you've gathered some data, you may choose to press the Upload button which will upload the GPX file to a central server [I'll explain this more in the next post]. Given that some user spotted a specific device and has uploaded it to the server, you can search for devices using the search feature. This will place dots on the map [They may be hard to see on the default map, and I'm sorry for this, I'm still searching for solutions] at the respective locations. You can then choose to save the map with the dots using the Save button or you can clear all the dots by pressing the Reset button.

[Considerations]

  • You can use the program to scan for devices continuously. I used it to track around and discover what devices people are using. Needless to say that some had quite funny names or just adverts. I also picked up a TomTom device from a car. It's quite interesting and does fulfill some voyeuristic pleasure I guess. It's impressive though how many devices I've found... Tons of them, pages and pages of scrolling.

  • You can use the program to jack devices eh... In an educational manner, of course. Or to autojack while Whiskers discovers new devices. Please don't over-abuse it since it can be pretty annoying. In comparison to btCrawler or Bloover or whatever, Whiskers is meant to be the first tool before you use any of those. Bluesnarfing on newer devices is quite possible IF and only IF the user has accepted to pair with you. From then on, you could use one of those nifty tools which grant you access to all the cool and nasty features. I've seen a lot of discussion about being able to snarf without the user having to accept the pairing and, from what I've seen, sadly there is no such tool. Whiskers will try to get you paired but development in this department is halted for the time being.

  • The tracking feature currently uses my personal server. In time, when things get more stable I'll also publish the server-side part of Whiskers so you can make your own server (I have to, this is OpenSource). Of course, the search feature is only useful if you have a big enough database. It will also be possible to add your own maps rather than the default map.
 
Last edited:
S

SevenRains

Guest
[Pinboard]


  • The requirements state you need Microsoft Bluetooth Stack however, Whiskers relies on a third party library for Bluetooth management so it's not yet certain if it supports other stacks too.

  • Bluetooth and/or Wireless must be turned on or Whiskers won't report any device.

  • Currently I don't have many devices in the database for the Track tab. You are free to upload anything and if you want that file for yourself I'll send it happily. For the time being you can try searching for "khan" and type BT or "Wireless" and type AP. It will place some points in the UK and Romania. Once again, sorry, the dots are really small and hard to spot. What you could do is press the Save button, save the file and then view it on your computer screen. The dots should be light greenish and light blueish...

  • After using this program, please check in Settings -> System -> Device ID that your device name is still there. On a crash it may just leave the jack message there. Simply rename it back to what it was before.

  • [ Program may crash if you press the Upload or Search button and don't have an active internet connection. This will be fixed soon, I just wanted it to crash to spot some bugs but I forgot it on. The next unstable CAB will just fail gracefully ] - fixed.

  • Of course, with scanning on, the Scan tab will clutter up with devices that aren't in range anymore. Just save the log if you like and hit the clear button and it will update with devices currently in range.

  • There is currently no report whether the upload was successful or not and the same for the search. If you do choose to upload, make sure you search for a device you just uploaded using the search feature. If the upload was successful, it should show up.

  • The current Track logic is: if we found a new device and if we have a fix, log to GPX file. Best practice is to start tracking and then scanning. Once Whiskers has a satellite fix, it will log new devices to the GPX file. Once you hit the Track button, Whiskers will try to get a lock as fast as it can. Of course, as for any GPS device, it's good to try it while outside.
 
Last edited:

l3v5y

Retired Senior Moderator
Sep 13, 2007
7,485
44
29
Bristol
Looks interesting!

I feel like some "auditing".

Might it be an idea to have a direct link to the cab, so one doesn't have to download the whole VS solution?

Thanks!

EDIT:
First find:
Needs .Net CF 3.5 I think, not 2.0. Or at least it gave an error that required NETCFv35.Messages.EN.wm.cab to be installed to show the error.
 
S

SevenRains

Guest
Looks interesting!

I feel like some "auditing".

Might it be an idea to have a direct link to the cab, so one doesn't have to download the whole VS solution?

Thanks!

Hey l3v5y, nice to see you on a new quest! Yes, everything is a bit shaky at the moment but I'm updating the posts as fast as I can. Also, you may want to wait for some documentation because there is currently NONE. A lot of stuff needs explaining. For a quick start though: you need to turn on your bluetooth and/or your wireless (the program doesn't do this automatically for you). I hope you have a MS stack. I rely on some external libraries and I'm not sure what they have under the hood. Thanks!

EDIT: Bingo, I'll update to 3.5 thanks!
 

cspannos

Member
Jul 8, 2007
16
2
I'm getting this:

Code:
Whiskers.exe
DirectoryNotFoundException
An error message cannot be displayed because an optional resource assembly containing it cannot be found

at System.IO.__Error.WinIOError()
at System.IO.FileStream..ctor()
at System.IO.FileStream..ctor()
at System.Drawing.Bitmap..ctor()
at Whiskers.Whiskers..ctor()
at Whiskers.Program.Main()

...and I have NETCFv35 and NETCFv35.Messages both installed. How do I tell what bluetooth stack I have? I have a Sprint Touch Pro. Thanks!
 
S

SevenRains

Guest
I'm getting this:

Code:
Whiskers.exe
DirectoryNotFoundException
An error message cannot be displayed because an optional resource assembly containing it cannot be found

at System.IO.__Error.WinIOError()
at System.IO.FileStream..ctor()
at System.IO.FileStream..ctor()
at System.Drawing.Bitmap..ctor()
at Whiskers.Whiskers..ctor()
at Whiskers.Program.Main()
...and I have NETCFv35 and NETCFv35.Messages both installed. How do I tell what bluetooth stack I have? I have a Sprint Touch Pro. Thanks!

You're doing fine, sorry the CAB file is broken: Give me 5 minutes, I'll upload the fix.

EDIT: Ok, fixed and uploaded. Please try again...
 
Last edited:
S

SevenRains

Guest

Yes, it seems that mirror screwed up the archive. You can try the:

http://sourceforge.net/projects/whiskers

and follow the download links. Sourceforge takes a while to replicate the file to all mirrors. It seems that the surfnet mirror broke the file.

EDIT: I'll see if I can re-add the zip file to sourceforge. Don't know what they did with it...

EDIT: Ok, I re-added the file to sourceforge, it should be ok after it replicates. I'll add the source to opening post for convenience.

EDIT: Mirror for source/stable added to opening post.
 
Last edited:
S

SevenRains

Guest
Sorry peeps, I think I'm done with messing around with the release files. It's always like this at the beginning. Sourceforge took an older version (which would crash like the cab file did) and replicated that instead of the proper release.

Please use the CAB file. At the moment the CAB and the stable release are identical. I replaced the CAB with the proper version.

Initial post updated!
 

jab1a

Senior Member
Oct 13, 2005
171
6
This seems like an excellent sort of application, thank you for all your hard work.

I am just wandering if the latest version works on the Trinity?

I have installed the .CAB from the release folder but when I try the jack or auto jack feature the program crashes. I have turned bluetooth on and also left it off before trying but the same problem, also do i need beam on or off? or am I just not doing something simple.

Thank you for your help in advance
 
S

SevenRains

Guest
This seems like an excellent sort of application, thank you for all your hard work.

I am just wandering if the latest version works on the Trinity?

I have installed the .CAB from the release folder but when I try the jack or auto jack feature the program crashes. I have turned bluetooth on and also left it off before trying but the same problem, also do i need beam on or off? or am I just not doing something simple.

Thank you for your help in advance

Hello, thanks for taking interest in Whiskers!

If you didn't get a crash when pressing the scan button, then the libraries are working correctly and Whiskers should definitely work on your device.

The release version had some bugs which have been fixed in the new Snapshot releases. Could you please try the latest snapshot release? (Whiskers-200901273619.CAB at the top will do fine!)

If you are still gettting a crash with the latest snapshot, could you please provide a few lines from the crash? (You can access those by pressing Details when the crash screen comes up)

Please tell me if this works for you!
 

jab1a

Senior Member
Oct 13, 2005
171
6
Ok I have just installed Whiskers-200901273619.CAB and im getting the same problem. On the first tab (scan) I can hit scan but nothing happens, a few titles at the bottom are greyed out but thats it until I hit hit stop. If I go to the jack tab and hit jack or start autojack then it frezzes for a second and then crashes, here are a few lines from the details section:

Whiskers.exe
ArgumentOutOfRangeException
ArgumentOutOfRangeException
Parameter name: index

at
System.Collections.Array.get_Item(Int32 Index)
at

Does this help or do you need more?

Thank you again for your help