Skip to content

Instantly share code, notes, and snippets.

@mokocup
Forked from cipherknight/cracking.md
Created April 18, 2023 06:42
Show Gist options
  • Save mokocup/5c69ced2e49adfb08a730c6e12f427ae to your computer and use it in GitHub Desktop.
Save mokocup/5c69ced2e49adfb08a730c6e12f427ae to your computer and use it in GitHub Desktop.
Cracking guide for Sublime Text 3 Build 3200/3202 and Sublime Merge - Build 1109/1111 (Linux x86_64) - Updated #3 (20190327)

screen

Sublime Text 3 - Build 3200/3202 - Linux x64

For Build 3202:

Desciption Offset Original Patched
Initial License Check 1 0x3127B9 0x38 0x08
Initial License Check 2 0x3127BA 0x00 0x01
Persistent License Check 0x3BF0A8 0x84 0x86
Disable Nag 0x31C209 0x48 0xC3

After some time, the registration information in "About" is reset to unregistered. Only in Build 3202. Thes does not affect the work program. Work on the patch is underway.

How to patch the executable:

#!/bin/bash
#
printf '\x08' | dd seek=$((0x3127B9)) conv=notrunc bs=1 of=./sublime_text
printf '\x01' | dd seek=$((0x3127BA)) conv=notrunc bs=1 of=./sublime_text
printf '\x86' | dd seek=$((0x3BF0A8)) conv=notrunc bs=1 of=./sublime_text
printf '\xC3' | dd seek=$((0x31C209)) conv=notrunc bs=1 of=./sublime_text
#
exit 0

For Build 3200:

Desciption Offset Original Patched
Initial License Check 0x3BEB98 0x84 0x85
Persistent License Check 0x477C6E 0x75 0x74
Disable Nag 0x31BFED 0x48 0xC3

How to patch the executable:

#!/bin/bash
#
printf '\x85' | dd seek=$((0x3BEB98)) conv=notrunc bs=1 of=/opt/sublime_text/sublime_text
printf '\x74' | dd seek=$((0x477C6E)) conv=notrunc bs=1 of=/opt/sublime_text/sublime_text
printf '\xC3' | dd seek=$((0x31BFED)) conv=notrunc bs=1 of=/opt/sublime_text/sublime_text
#
exit 0

IP addresses to block:

iptables -A OUTPUT -d 45.55.41.223/32 -j REJECT
iptables -A OUTPUT -d 45.55.255.55/32 -j REJECT

For Ubuntu UFW:

$ sudo ufw insert 1 deny out to 45.55.255.55/32 comment 'Block Sublime host-1'
$ sudo ufw insert 2 deny out to 45.55.41.223/32 comment 'Block Sublime host-2'
$ sudo ufw status numbered verbose
$ sudo dpkg-reconfigure iptables-persistent

Entries to add to /etc/hosts

0.0.0.0 www.sublimemerge.com
0.0.0.0 sublimemerge.com
0.0.0.0 www.sublimetext.com
0.0.0.0 sublimetext.com
0.0.0.0 sublimehq.com
0.0.0.0 telemetry.sublimehq.com
0.0.0.0 license.sublimehq.com
0.0.0.0 download.sublimetext.com
0.0.0.0 download.sublimemerge.com
0.0.0.0 45.55.255.55
0.0.0.0 45.55.41.223

st

Sublime Merge - Build 1109/1111 - Linux x64

For Build 1111:

Desciption Offset Original Patched
Initial License Check 0x2F6298 0x84 0x85
Persistent License Check 0x501B2A 0x75 0x74
Disable Nag 0x30F34A 0x48 0xC3

How to patch the executable:

#!/bin/bash
#
printf '\x85' | dd seek=$((0x2F6298)) conv=notrunc bs=1 of=./sublime_merge
printf '\x74' | dd seek=$((0x501B2A)) conv=notrunc bs=1 of=./sublime_merge
printf '\xC3' | dd seek=$((0x30F34A)) conv=notrunc bs=1 of=./sublime_merge
#
exit 0

For Build 1109:

Desciption Offset Original Patched
Initial License Check 0x2F6298 0x84 0x85
Persistent License Check 0x501B06 0x75 0x74
Disable Nag 0x30F34A 0x48 0xC3

How to patch the executable:

#!/bin/bash
#
printf '\x85' | dd seek=$((0x2F6298)) conv=notrunc bs=1 of=./sublime_merge
printf '\x74' | dd seek=$((0x501B06)) conv=notrunc bs=1 of=./sublime_merge
printf '\xC3' | dd seek=$((0x30F34A)) conv=notrunc bs=1 of=./sublime_merge
#
exit 0

IP addresses to block:

iptables -A OUTPUT -d 45.55.41.223/32 -j REJECT
iptables -A OUTPUT -d 45.55.255.55/32 -j REJECT

For Ubuntu UFW:

$ sudo ufw insert 1 deny out to 45.55.255.55/32 comment 'Block Sublime host-1'
$ sudo ufw insert 2 deny out to 45.55.41.223/32 comment 'Block Sublime host-2'
$ sudo ufw status numbered verbose
$ sudo dpkg-reconfigure iptables-persistent

Entries to add to /etc/hosts

0.0.0.0 www.sublimemerge.com
0.0.0.0 sublimemerge.com
0.0.0.0 www.sublimetext.com
0.0.0.0 sublimetext.com
0.0.0.0 sublimehq.com
0.0.0.0 telemetry.sublimehq.com
0.0.0.0 license.sublimehq.com
0.0.0.0 download.sublimetext.com
0.0.0.0 download.sublimemerge.com
0.0.0.0 45.55.255.55
0.0.0.0 45.55.41.223

sm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment