tauri-apps/tauri

[bug]

Open

#10,492 opened on Aug 5, 2024

View on GitHub
 (4 comments) (1 reaction) (0 assignees)Rust (106,642 stars) (3,597 forks)batch import
help wantedstatus: needs triagetype: bug

Description

Describe the bug

When trying to to send command to a plugin the requested path will be like plugin:plugin_name and windows will reject the request and will log this error:

Source:        ASP.NET 4.0.30319.0
Date:          07/24/2024 8:10:41 AM
Event ID:      1309
Task Category: Web Event
Level:         Warning
Keywords:      Classic
User:          N/A
Computer:      PC-JanatAbad
Description:
Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 7/24/2024 8:10:41 AM 
Event time (UTC): 7/24/2024 4:40:41 AM 
Event ID: 39404e09dbd243c3b5085fdf9e9d8d0a 
Event sequence: 3 
Event occurrence: 2 
Event detail code: 0 
 
Application information: 
    Application domain: /LM/W3SVC/1/ROOT-1-133662695080433835 
    Trust level: Full 
    Application Virtual Path: / 
    Application Path: C:\inetpub\wwwroot\ 
    Machine name: PC-JANATABAD 
 
Process information: 
    Process ID: 81960 
    Process name: w3wp.exe 
    Account name: IIS APPPOOL\DefaultAppPool 
 
Exception information: 
    Exception type: HttpException 
    Exception message: A potentially dangerous Request.Path value was detected from the client (:).
   at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
   at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)

 
 
Request information: 
    Request URL: http://ipc.localhost/plugin:printer|get_printers 
    Request path: /plugin:printer|get_printers 
    User host address: ::1 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: IIS APPPOOL\DefaultAppPool 
 
Thread information: 
    Thread ID: 9 
    Thread account name: IIS APPPOOL\DefaultAppPool 
    Is impersonating: False 
    Stack trace:    at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
   at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)```

Reproduction

Just add printer plugin and try to get list of printers

Expected behavior

No response

Full tauri info output

This is the environment I build the application. Output show Windows 10 but actually my windows version is windows 11 pro 23H2

[✔] Environment
    - OS: Windows 10.0.22631 X64
    ✔ WebView2: 126.0.2592.113
    ✔ MSVC: Visual Studio Build Tools 2022
    ✔ rustc: 1.78.0 (9b00956e5 2024-04-29)
    ✔ cargo: 1.78.0 (54d8815d0 2024-03-26)
    ✔ rustup: 1.27.1 (54dd3d00f 2024-04-24)
    ✔ Rust toolchain: stable-x86_64-pc-windows-msvc (default)
    - node: 20.14.0
    - pnpm: 9.1.3
    - npm: 10.8.1

[-] Packages
    - tauri [RUST]: 2.0.0-beta.23
    - tauri-build [RUST]: 2.0.0-beta.18
    - wry [RUST]: 0.41.0
    - tao [RUST]: 0.28.1
    - @tauri-apps/api [NPM]: 2.0.0-rc.0
    - @tauri-apps/cli [NPM]: 2.0.0-rc.0

[-] App
    - build-type: bundle
    - CSP: unset
    - frontendDist: ../build
    - devUrl: http://localhost:8080/
    - framework: React
    - bundler: Vite

Stack trace

No response

Additional context

The application will crash and error log will be logged in windows event viewer. This will happen in windows versions less than 11.

Contributor guide