Accelerate3g5 -- blobb¶
Trying to come up with a fuzzing interface.
- André (email: email@example.com)
First setting up the femtocell and understand necessary basics of UMTS communication to do so. (done)
Collecting information e.g. slides, talks, docu about fuzzing of wireless protocols. (done)
Writing some code to craft requests and run fuzz tests against subscriber. (to be done)
Note: first time fuzzing.
TD1: Samsung Galaxy S5 Mini (G800F)
OS: Lineage OS (14.1/7.1.1)
TD2: LG Nexus 5 (hammerhead)
OS: Android Marshmallow (6.0)
TD3: HTC One M9
OS: Android Lollipop (5.1)
SIM: NanoSIM (cutted MicroSIM)
TD4: Samsung S3 (GT-I9300)
OS: Android Jelly Bean (4.3)
Pick up package at Sysmocom office.
Having an informative conversation with Neels about Jenkins, Docker and build artifacts.
Set up wiki page.
Seeing femtocell on network interface.
Compiled source as described, but couldn't configure/launch CN successfully (yet).
Next time will try Neels' launch script and same IP range.
Collecting input about fuzzing:
MobiDeke: Fuzzing the GSM Protocol Stack - S. Dudek & G. Delugr, hack.lu 2012
Base Jumping - Attacking the GSM BB and BTS - grugq, 2010
Fuzzing your GSM phone - Harald Welte, 26c3 2009
Fuzzing the Phone in your Phone - C. Miller & C. Mulliner, Blackhat 2009
Injecting SMS Messages into Smart Phones for Security Analysis - C. Mulliner, 2009
Security Testing esp. Fuzzing - E. Poll, ????
Resolving HLR issue and set correct IPs in *.cfg files.
hNodeB connects to hnbgw, but no UE is connecting to it.
[issue from wiki: ...unable to resolve DNS record look up of 0.ipaccess.pool.ntp.org... no trx].
Connect femtocell to LAN with internet access to resolve DNS record look up issue, still no phones are connecting (yet).
Adding SIM cards to hlr.db, after creating db successfully [thanks to andreas]
Create and attach build_3G.sh (adapted from build_2G.sh).
Rebuild with correct branch/tag (openbsc:vlr_3G,libosmo-sccp:old_sua).
TD1 and TD2 successfully connected to femtocell!!! \o/
Voice calls work (TD1<->TD2).
Create and attach configure_nano3G.exp.
Invoke expect script within run.sh to automate initial nano3G configuration via telnet.
SMS work (TD1<->TD2), probably worked before but have been tested "today".
Compile OpenBSC with --enable-mgcp-transcoding flag and create 127.0.0.2 on lo. :)
Attach refactored version of build_3G.sh.
Data "works" (TD1<->TD2, TDx<->tun0/192.168.42.1
Note: data "worked" before (UEs got IP 2017-4-20). But I didn't manage to forward packets from tun0->eth0->inet yet, although the following iptable rule has been applied:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Create and attach find_nano3G.sh.
Picked up TD4 at a friend's place. Now I don't need to change the SIM/USIM card in TD1, which is my "normal" cell phone to test functionality. Thanks a lot buddy, in case you might read this.
As it actually belongs to the accelerate3g5 project, I add the hands-on repo this journal.
It provides functionality to clone necessary git repos and build accerelate3g5 stack.
- UE's are connecting and voice calls are working.
- network LED does not indicate whether IP has been assigned by DHCP server.
- umts LED does indicate whether cell is connected to hnbgw, etc pp.