SagerNet / SagerNet/sing-box

SFM sing-box.app 默认沙箱,禁止 exec hipreport.sh

Open
#4,335 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Go
Stars
38.1k
Forks
4.6k
Avg merge
19d 15h
Merged PRs (30d)
1

Description

操作系统

macOS

系统版本

Darwin 25.5.0 arm64

安装类型

sing-box for macOS 图形客户端程序

如果您使用图形客户端程序,请提供该程序版本。

版本1.14.0-alpha.50 (1)

版本

描述

openconnect browser authentication 需要GUI图形客户端打开浏览器进行SSO认证,但是 GUI图形客户端 sing-box.app 是 App Store 沙箱应用,被 macOS 硬性禁止执行任何外部程序,无法执行 hipreport.sh,导致 GlobalProtect 认证失败。

启动 openconnect client 浏览器认证,报错: start GlobalProtect HIP wrapper: fork/exec /Users/leo/.config/hipreport.sh: operation not permitted

已经做了:

xattr -c ~/.config/hipreport.sh
chmod +x ~/.config/hipreport.sh

https://github.com/SagerNet/sing-openconnect/blob/main/gp_hip.go
https://gitlab.com/openconnect/openconnect/-/blob/master/trojans/hipreport.sh
/Library/Logs/PaloAltoNetworks/GlobalProtect/pan_gp_hrpt.xml

重现方式
"endpoints": [
    {
        "type": "openconnect",
        "tag": "oc-client",
        "server": "globalprotect.vpn.com",
        "flavor": "gp",
        "mtu": 1280,
        "no_udp": true,
        "hip": {
            "wrapper_path": "/Users/leo/.config/hipreport.sh"
        }
    }
],
日志
ERROR[0046] endpoint/openconnect[oc-client]: client terminated: start GlobalProtect HIP wrapper: fork/exec /Users/leo/.config/hipreport.sh: operation not permitted
支持我们
完整性要求
  • 我保证阅读了文档,了解所有我编写的配置文件项的含义,而不是大量堆砌看似有用的选项或默认值。
  • 我保证提供了可以在本地重现该问题的服务器、客户端配置文件与流程,而不是一个脱敏的复杂客户端配置文件。
  • 我保证提供了可用于重现我报告的错误的最简配置,而不是依赖远程服务器、TUN、图形界面客户端或者其他闭源软件。
  • 我保证提供了完整的配置文件与日志,而不是出于对自身智力的自信而仅提供了部分认为有用的部分。

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the openconnect endpoint configuration and the referenced sing-openconnect gp_hip.go entry point, then compare its wrapper_path handling with macOS App Store sandbox restrictions. Reproduce the fork/exec failure using the provided configuration and log. Done means GlobalProtect browser authentication has a supported path for the hipreport.sh wrapper in the macOS graphical client.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, macos
Domain
desktop, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.