Git Product home page Git Product logo

crocodilehunter's People

Contributors

ceset avatar cgurity avatar cooperq avatar dependabot[bot] avatar navyjeff avatar simonft avatar threesixes avatar void-elf avatar ynasser avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

crocodilehunter's Issues

Wigle API daily limit

From some testing I did today, it seems like you get at most 7 queries/day, which isn't ideal.

Improve GPS stability

GPS will often loose it's connection especially in a dense urban environment. One large problem this causes is that all tower readings are held in memory until GPS connects again at which time they are all suddenly added to the database with the current GPS location instead of the correct one. We should figure out a way to have a more stable GPS connection.

Save pcaps

Pcaps generated by srsUE for each crocodile hunter session should be saved to the data directory, perhaps named with their timestamp?

Add disable GPS flag

Sometimes you are in a faraday cage and GPS doesn't work so you should be able to disable it.

Get list of EARFCN to scan

Before we start we should get a list of earfcn to scan which are present in the local area, either from Wigle or OpencellID (or both)

figure out rsrp vs rssi

Based on a call with an LTE researcher, there are different times when we'd want to use each of these values.

Check for missing BTS features (e.g. no SIB 13)

It's likely that for both hobbyist and commercial ICs, they'll be missing the full range of what a normal IC is capable of. We should put in some checks to see if some of that basic stuff is missing.

Different band scanning approaches

We've had a variety of different ideas for doing wider scans:

  1. Separate processes to scan all the LTE bands in the background, and update the EARFCN list with anything it finds. (This should take 5-10 minutes.) Alternatively we could do this at the very beginning before we start the scan.
  2. Also sometimes scanning outside of the North American specific LTE bands might be a good idea, esp since e.g. outside of consulates or in an international area, phones from there will still be receptive to using non-NA LTE bands.

add checks + scanning on higher priority frequences

Based on this paper, it says that one technique for tricking phones using LTE to connecting to a CSS is to exploit the "absolute priority based cell reselection" feature. Basically we'll need to parse SIB 4,5,6, and 7 messages to figure out these frequencies and then scan to see if there's anything on them.

Bandwidth checking

We should look for unusual bandwidth values in some scenarios. Lower (e.g. 5 MHz) is probably an indicator of a homebrew IC.

Specifically, dl-bandwidth that's sent in the MIB.

srsUE, frequent crashes

srsUE frequently crashes while it is running. Crashes seem to happen more when the rig is moving.

Create logging subystem

Watchdog, webui, and crocodile hunter should have a logging convenience class that they can all call which will take care of appropriately formatting output as well as logging to a file.

UI Polish

  • infobox for map
  • clicking enodeb hilights on map
  • all antennas by CID with trilat page
  • cid details page
  • polish details page
  • better tables for mobile
  • fix padding on map
  • distance from nearest tower
  • call out new or decaying towers

Machine learning

Some initial steps:

  • @ynasser to contact ML researchers we collaborated with in the past
  • start saving binary blog pcaps

Also, UW researchers suggested clustering and unsupervised learning, and then an iterative labeling approach.

Add disable wigle flag

#17 pointed out that if you don't have a wigle pro account it's not a very useful check. We can add a flag to disable wigle for users who don't have a pro account.

Look for lack of paging messages

one theory is that a CSS will have a distinct lack of paging messages being sent that a normal enodeb would have. We should look for this.

Refactor cell scanning code

In EFForg/srsLTE there is a file in the examples directory that measures and decodes sib1 data called cell_measurement.cc. I have modified this to scan an entire band and decode any sib1 packets it finds.
We should further modify it to:

  • scan a specific list of EARFCN which we can get from wigle when crocodile hunter starts.
  • We also need to add socket communication to cell_measurement.cc so that it can talk to crocodile hunter. This can then replace the call to srsue!

ARM cross-compilation

It turns out the rasp pi isn't powerful enough to compile srsLTE. Next step to try and get it working on there is cross-compilation on one of our laptops and then trying to run it on the pi.

update README to include srsLTE submodule instructions

I think we need to do this? When I cloned this repo, /srsLTE was empty. I had to delete it, then:

git submodule init
git submodule update

... otherwise running the crocodile hunter python script failed because it was empty.

argument for project name

if one travels to another city or is debugging one might want crocodile hunter data to be a seperate "project" this can create a new folder to store the database and pcap (#6) files in

sync to external DB and web UI

For eventual analysis of logs from other users we should sync the data to an externally hosted DB and webui for examining. Create an API and a service for this. Syncing should happen in batches assuming internet connections will be unstable.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.