Sharing files
When using RF Swift for your assesment, you would like to retrieve the reports, logs, capture, or any file resulting the mission.
Let see with two examples how we can to it.
Binding directories
General
Sharing file between host and guest is possible throught the binding -b
parameter when using run
command.
First, create a directory you want to share with the guest on your host:
mkdir shared
Then you can simply use bindings when issuing the run
command as follows:
rfswift run -i penthertz/rfswift:telecom -n supertelecom2 -b /home/user/shared:/root/shared
The container summary will display you the bindings that are used:
🧊 Container Summary
╭────────────────────────────────────────────────────────────────────────────╮
│ Container Name │ supertelecom2 │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ X Display │ :0 │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Shell │ /bin/zsh │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Privileged Mode │ true │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Network Mode │ host │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Image Name │ penthertz/rfswift:telecom (Obsolete) │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Size on Disk │ 11150.42 MB │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Bindings │ /tmp/.X11-unix:/tmp/.X11-unix,/dev/bus/usb:/dev/bus/usb, │
│ │ │
│ │ /home/user/shared:/root/shared │
├─────────────────┼──────────────────────────────────────────────────────────┤
│ Extra Hosts │ pluto.local:192.168.2.1 │
╰────────────────────────────────────────────────────────────────────────────╯
-b
parameter of run
command.
Running the command ls
inside the container, you will see that a directory is present:
┌─[root@topms] - [~] - [Wed Sep 04, 13:46]
└─[$]> ls
config scripts shared
Let us go inside this shared
directory and put a file inside:
┌─[root@topms] - [~] - [Wed Sep 04, 13:48]
└─[$]> cd shared
┌─[root@topms] - [~/shared] - [Wed Sep 04, 13:49]
└─[$]> touch superfile
If you look on your host, the file will be present.
Binding devices
Example with proxmark3
By default, Proxmark3 tool already has /dev/ttyACM0
binded by default. But you have multiple devices, you can add them using -b
when running a new container:
rfswift run -i penthertz/rfswift:rfid -n superrfid -b /dev/ttyACM1:/dev/ttyACM1
Example with Bluetooth HCI devices
For HCI devices, you can bind /dev/vchi
as follows:
rfswift run -i penthertz/rfswift:rfid -n superrfid -b /dev/vchi:/dev/vchi
Example with Harogic devices
Sharing calibration data
Along with a Spectrum Analyzer and other stuff, Harogic provides a USB key where you can find a CalFile
directory:
To avoid any problem, let us copy this directory to the host side:
$ cp -R /media/fluxius/37B6-82D6/CalFile .
$ ls
build-windows.bat CalFile go images install.sh LICENSE README.md rfswift rules run shared
And share it with a container based on sdr_light
images:
rfswift run -i penthertz/rfswift:sdr_light -n harogictest -b <host/path/of/CalFile>:/rftools/analysers/SAStudio4_x86_64_05_23_17_06/bin/CalFile
Then you can run sastudio
inside the container, and you get your Harogic device running:
Running SDR++ with Harogic
To run SDR++
with Harogic devices, you will need only to copy the CalFile in /rftools/analysers/SAStudio4_x86_64_05_23_17_06/bin/CalFile
inside your container to /usr/bin
that way:
cp -R /rftools/analysers/SAStudio4_x86_64_05_23_17_06/bin/CalFile /usr/bin
And then you can start SDR++ with Harogic, and voilà!
Next
Dive right into the following section to get started: