diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8c26404..1348bf9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -57,7 +57,7 @@ jobs: run: | mkdir package-output rsync -av sdk/"${SDK_FILENAME%.tar.xz}"/bin/packages/mips_24kc/base/"${{ env.owrt-package }}"*.ipk package-output/ - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v3 with: name: ${{ steps.generate-name.outputs.artifact-name }} path: package-output/ diff --git a/Makefile b/Makefile index cc745db..a287e3b 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=blue-merle -PKG_VERSION:=2.0.5 +PKG_VERSION:=2.0.0 PKG_RELEASE:=$(AUTORELEASE) PKG_MAINTAINER:=Matthias @@ -44,7 +44,7 @@ define Package/blue-merle/preinst if [ -f "/tmp/sysinfo/model" ] && [ -f "/etc/glversion" ]; then echo "You have a `cat /tmp/sysinfo/model`, running firmware version `cat /etc/glversion`." fi - echo "blue-merle has only been tested with GL-E750 Mudi Versions up to 4.3.26" + echo "blue-merle has only been tested with GL-E750 Mudi Version 4.3.8." echo "The device or firmware version you are using have not been verified to work with blue-merle." echo -n "Would you like to continue on your own risk? (y/N): " read answer @@ -63,11 +63,11 @@ define Package/blue-merle/preinst if grep -q "GL.iNet GL-E750" /proc/cpuinfo; then GL_VERSION=$$(cat /etc/glversion) case $$GL_VERSION in - 4.3.26) - echo Version $$GL_VERSION is supported - exit 0 - ;; - 4.*) + 4.3.8) + echo Version $$GL_VERSION is supported + exit 0 + ;; + 4.*) echo Version $$GL_VERSION is *probably* supported ABORT_GLVERSION ;; diff --git a/README.md b/README.md index e3fa686..8397f8e 100644 --- a/README.md +++ b/README.md @@ -11,14 +11,14 @@ The *blue-merle* software package enhances anonymity and reduces forensic tracea ## Compatibility -**This README covers the v2.0 release**, which has been verified to work with GL-E750 Mudi version 4.3.8 - 4.3.12 . +**This README covers the v2.0 release**, which has been verified to work with GL-E750 Mudi version 4.3.8. Refer back to the [v1.0 README file](https://github.com/srlabs/blue-merle/tree/cb4d73731fe432e0f101284307101c250ca4b845) for information about the first release, which works on older firmware releases. A MCU version >= 1.0.7 is required. The MCU may be updated through the *blue-merle* package installer or [manually](https://github.com/gl-inet/GL-E750-MCU-instruction). SRLabs cannot guarantee that the project assets within this Git repository will be compatible with future firmware updates. ## Installation -### Online install & upgrade +### Online install The online install method requires an **active Internet connection** on your Mudi device to **download up-to-date dependencies**. @@ -28,10 +28,6 @@ Download the [prebuilt v2.0 release package](https://github.com/srlabs/blue-merl opkg update opkg install blue-merle*.ipk ``` -To uprade blue-merle, download the newest blue-merle*.ipk, copy it to your Mudi and reinstall with: -```sh -opkg install --force-reinstall blue-merle*.ipk -``` ### Offline install diff --git a/files/lib/blue-merle/imei_generate.py b/files/lib/blue-merle/imei_generate.py index 856dca9..39ea788 100644 --- a/files/lib/blue-merle/imei_generate.py +++ b/files/lib/blue-merle/imei_generate.py @@ -28,6 +28,7 @@ modes.add_argument("-r", "--random", help="Sets random IMEI", # Example IMEI: 490154203237518 imei_length = 14 # without validation digit +# IDEA: make prefix configurable via CLI option imei_prefix = ["35674108", "35290611", "35397710", "35323210", "35384110", "35982748", "35672011", "35759049", "35266891", "35407115", "35538025", "35480910", "35324590", "35901183", "35139729", diff --git a/files/usr/bin/blue-merle b/files/usr/bin/blue-merle index a3acacc..2615e6a 100644 --- a/files/usr/bin/blue-merle +++ b/files/usr/bin/blue-merle @@ -107,9 +107,6 @@ if [[ "$old_imei" == "$new_imei" ]]; then else mkdir -p /tmp/modem.1-1.2 echo "$new_imei" > /tmp/modem.1-1.2/modem-imei - # prevent imei leak via the LPA - echo "$new_imei" > /root/esim/imei - shred -u /root/esim/log.txt # unclear if the imei/imsi will be loged here, just a precaution fi echo "You should now reset the modem or shutdown the device." diff --git a/files/usr/bin/blue-merle-switch-stage2 b/files/usr/bin/blue-merle-switch-stage2 index 21620cb..23ab6a4 100644 --- a/files/usr/bin/blue-merle-switch-stage2 +++ b/files/usr/bin/blue-merle-switch-stage2 @@ -34,29 +34,21 @@ sleep 1 new_imsi=$(READ_IMSI) if [[ "$old_imsi" == "$new_imsi" ]]; then - mcu_send_message "WARNING: Old IMSI equals new IMSI. Did you swap the SIM?" + mcu_send_message "WARNING: Old IMSI equals new IMSI." sleep 3 fi -old_imei=$(READ_IMEI) + mcu_send_message "Setting random IMEI" timeout 15 python3 /lib/blue-merle/imei_generate.py -r new_imei=$(READ_IMEI) - if [[ "$old_imei" == "$new_imei" ]]; then mcu_send_message "WARNING: Old IMEI equals new IMEI." sleep 3 else - #FIXME old_imei is not the real old imei because in stage1 its already generated a new one - # so this is a bit missleading but for the prupose of visualy see the change it works - mcu_send_message "IMEI Old:...... ${old_imei}IMEI New:...... ${new_imei}" - sleep 5 mkdir -p /tmp/modem.1-1.2 echo "$new_imei" > /tmp/modem.1-1.2/modem-imei - # prevent imei leak via the LPA - echo "$new_imei" > /root/esim/imei - shred -u /root/esim/log.txt # unclear if the imei/imsi will be loged here, just a precaution fi logger -p notice -t blue-merle-toggle "Changed IMEI from ${old_imei} to ${new_imei}"