Có cách nào để vô hiệu hóa chính sách Cùng nguồn gốc trên trình duyệt Chrome của Google không?
peter.sh
trang, vì vậy phải khá hợp pháp.
--disable-web-security --user-data-dir
Có cách nào để vô hiệu hóa chính sách Cùng nguồn gốc trên trình duyệt Chrome của Google không?
peter.sh
trang, vì vậy phải khá hợp pháp.
--disable-web-security --user-data-dir
Câu trả lời:
Đóng chrome (hoặc crom) và khởi động lại với --disable-web-security
đối số. Tôi vừa kiểm tra điều này và xác minh rằng tôi có thể truy cập nội dung của iframe với src = "http://google.com" được nhúng trong một trang được phân phát từ "localhost" (được thử nghiệm theo chromium 5 / ub Ubuntu). Đối với tôi lệnh chính xác là:
Lưu ý: Giết tất cả các phiên bản chrome trước khi chạy lệnh
chromium-browser --disable-web-security --user-data-dir="[some directory here]"
Trình duyệt sẽ cảnh báo bạn rằng "bạn đang sử dụng một dòng lệnh không được hỗ trợ" khi lần đầu tiên mở, bạn có thể bỏ qua.
Từ nguồn crom:
// Don't enforce the same-origin policy. (Used by people testing their sites.)
const wchar_t kDisableWebSecurity[] = L"disable-web-security";
Trước Chrome 48, bạn chỉ có thể sử dụng:
chromium-browser --disable-web-security
open /Applications/Google\ Chrome.app --args --disable-web-security
--user-data-dir
.
Vâng. Đối với OSX, mở Terminal và chạy:
$ open -a Google\ Chrome --args --disable-web-security --user-data-dir
--user-data-dir được yêu cầu trên Chrome 49+ trên OSX
Đối với Linux chạy:
$ google-chrome --disable-web-security
Ngoài ra nếu bạn đang cố gắng truy cập các tệp cục bộ cho mục đích phát triển như AJAX hoặc JSON, bạn cũng có thể sử dụng cờ này.
-–allow-file-access-from-files
Đối với Windows, hãy vào dấu nhắc lệnh và đi vào thư mục chứa Chrome.exe và nhập
chrome.exe --disable-web-security
Điều đó sẽ vô hiệu hóa chính sách nguồn gốc tương tự và cho phép bạn truy cập các tệp cục bộ.
Cập nhật: Đối với Chrome 22+, bạn sẽ thấy thông báo lỗi cho biết:
Bạn đang sử dụng cờ dòng lệnh không được hỗ trợ: --disable-web-security. Sự ổn định và bảo mật sẽ bị ảnh hưởng.
Tuy nhiên, bạn chỉ có thể bỏ qua tin nhắn đó trong khi phát triển.
--disable-web-security
không hoạt động trừ khi bạn cũng đưa ra một cách rõ ràng --user-data-dir
. tức là OSX /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security --user-data-dir=~/ChromeUserData/
.
open -n
. Đơn giản chỉ cần chạy open -n -a Google\ Chrome --args --disable-web-security --user-data-dir=/tmp/chrome
. Điều này sẽ mở phiên bản ứng dụng Chrome thứ hai trên máy Mac của bạn và bạn có thể sử dụng chúng cạnh nhau.
Đối với người dùng Windows:
Vấn đề với giải pháp được chấp nhận ở đây, theo tôi là nếu bạn đã mở Chrome và thử chạy nó thì nó sẽ không hoạt động.
Tuy nhiên, khi nghiên cứu vấn đề này, tôi đã bắt gặp một bài đăng trên Super User, Có thể chạy Chrome cùng lúc và không có bảo mật web không? .
Về cơ bản, bằng cách chạy lệnh sau (hoặc tạo lối tắt với nó và mở Chrome thông qua đó)
chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security
bạn có thể mở một phiên bản Chrome "không an toàn" mới cùng lúc với việc bạn giữ các phiên bản trình duyệt "an toàn" khác của mình mở và hoạt động như bình thường.
Quan trọng : xóa / xóa C:/Chrome dev session
thư mục mỗi khi bạn mở cửa sổ vì lần thứ hai --disable-web-security
sẽ không hoạt động. Vì vậy, bạn không thể lưu các thay đổi của mình và sau đó mở lại dưới dạng phiên bản không an toàn thứ hai của Chrome với --disable-web-security
.
"C:\..\chrome.exe" --disable-web-security --user-agent="Android" --user-data-dir="C:/temp-chrome-eng" --app="file:///C:/apps/index.html"
open -a Google\ Chrome --args --disable-web-security -–allow-file-access-from-files --user-data-dir="/Users/myuser/temp/chromeData"
, nó chỉ làm cho cửa sổ chrome hiện tại đạt được trọng tâm, không có gì khác?
open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/chrome_dev_session" --disable-web-security
(Bạn có thể cần tạo thư mục tạm thời trước)
Đối với Windows :
Thực hiện lệnh sau:
chrome.exe --user-data-dir="C://Chrome dev session" --disable-web-security
Đối với máy Mac :
Thực hiện lệnh sau:
open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/Chrome dev session" --disable-web-security
Một trình duyệt chrome bị vô hiệu hóa bảo mật web mới sẽ mở ra với thông báo sau:
Run
.
Đối với người dùng windows có Chrome Phiên bản 60.0.3112.78 (ngày giải pháp đã được thử nghiệm và hoạt động) và ít nhất là cho đến ngày hôm nay 19.01.2019 (phiên bản 71.0.3578.98) . Bạn không cần phải đóng bất kỳ trường hợp chrome nào.
HÃY THƯỞNG THỨC KHÔNG SỬ DỤNG VIỆC NGAY LẬP TỨC THAM GIA NÀY ĐỂ KIẾM ĐƯỢC VÌ BẠN CÓ THỂ ĐƯỢC HACK VỚI NÓ!
EDIT 3: Có vẻ như tiện ích mở rộng không còn tồn tại ... Thông thường để đi xung quanh CORS những ngày này tôi đã thiết lập một phiên bản Chrome khác với một thư mục riêng hoặc tôi sử dụng Firefox với https://addons.mozilla.org/en-US/ firefox / addon / cors-ở mọi nơi / thay vào đó.
EDIT 2: Tôi không còn có thể làm điều này hoạt động ổn định.
EDIT: Tôi đã thử sử dụng vào một ngày khác cho một dự án khác và nó đã ngừng hoạt động. Gỡ cài đặt và cài đặt lại tiện ích mở rộng đã sửa nó (để đặt lại mặc định).
Câu trả lời gốc:
Tôi không muốn khởi động lại Chrome và vô hiệu hóa bảo mật web của mình (vì tôi đang duyệt trong khi phát triển) và tình cờ tìm thấy tiện ích mở rộng Chrome này.
Về cơ bản, đó là một công tắc bật tắt nhỏ để bật và tắt kiểm tra Kiểm soát cho phép truy cập nguồn gốc. Hoạt động hoàn hảo cho tôi cho những gì tôi đang làm.
--disable-web-security
tắc trong trường hợp đó.
--allow-file-access-from-files
thay vì vô hiệu hóa tất cả bảo mật web.
Có vẻ như không có giải pháp nào ở trên đang thực sự hoạt động. Các --disable-web-an ninh không còn được hỗ trợ trong phiên bản chrome gần đây.
Cho phép-Kiểm soát-Cho phép-Xuất xứ: * - tiện ích chrome đã giải quyết được một phần vấn đề. Nó chỉ hoạt động nếu yêu cầu của bạn đang sử dụng phương thức GET và không có Tiêu đề HTTP tùy chỉnh. Nếu không, chrome sẽ gửi yêu cầu HTTP TÙY CHỌN dưới dạng yêu cầu trước chuyến bay. Nếu máy chủ không hỗ trợ CORS, nó sẽ phản hồi với mã trạng thái 404 HTTP. Plugin không thể sửa đổi mã trạng thái phản hồi HTTP. Vì vậy, chrome sẽ từ chối yêu cầu này. Không có cách nào để plugin chrome sửa đổi mã trạng thái HTTP phản hồi dựa trên API tiện ích chrome hiện tại. Và bạn không thể thực hiện chuyển hướng cũng như yêu cầu bắt đầu XHR.
Không chắc chắn tại sao Chrome làm cho cuộc sống của các nhà phát triển khó khăn như vậy. Nó chặn tất cả các cách có thể để vô hiệu hóa kiểm tra bảo mật XSS ngay cả đối với việc sử dụng phát triển là điều hoàn toàn không cần thiết.
Sau nhiều ngày vật lộn và nghiên cứu, một giải pháp hoàn hảo đối với tôi: sử dụng corsproxy . Bạn có hai tùy chọn ở đây: 1. sử dụng [ https://cors-anywhere.herokuapp.com/] 2. cài đặt corsproxy trong hộp cục bộ: npm install -g corsproxy
[Cập nhật vào ngày 23 tháng 6 năm 2018] Gần đây tôi đang phát triển một ứng dụng SPA cần sử dụng lại corsproxy. Nhưng dường như không có corsproxy nào trên github có thể đáp ứng yêu cầu của tôi.
Vì vậy, tôi quyết định phát triển phiên bản corsproxy của riêng mình với nodejs. Nó thực sự rất đơn giản. Tôi đã xuất bản nó như là một ý chính trên github. Đây là ý chính của mã nguồn: https://gist.github.com/jianwu/8e76eaec95d9b1300c59596fbfc21b10
Để khởi động máy chủ CORSProxy (cổng http 8080): nút static_server.js 8080
để truy cập proxy: http: // host: 8080 / http: //www.somesite.com
Đối với Windows ... hãy tạo lối tắt Chrome trên máy tính để bàn của bạn.
Nhấp chuột phải> thuộc tính> Phím tắt
Chỉnh sửa đường dẫn "đích":
"C:\Program Files\Google\Chrome\Application\chrome.exe" --args --disable-web-security
(Thay đổi 'C: .... \ chrome.exe' thành vị trí chrome của bạn).
et voilà :)
Hãy thử lệnh này trên thiết bị đầu cuối Mac-
open -n -a "Google Chrome" --args --user-data-dir=/tmp/temp_chrome_user_data_dir http://localhost:8100/ --disable-web-security
Nó mở một phiên bản khác của chrome với bảo mật bị vô hiệu hóa và không còn vấn đề CORS nữa. Ngoài ra, bạn không cần phải đóng các trường hợp chrome khác nữa. Thay đổi URL localhost thành URL của bạn.
Tôi thấy cách tốt nhất để thực hiện việc này là sao chép phím tắt Chrome hoặc Chrome Canary trên màn hình nền Windows của bạn. Đổi tên phím tắt này thành "NO CORS" sau đó chỉnh sửa các thuộc tính của phím tắt đó.
trong mục tiêu thêm --disable-web-security --user-data-dir="D:/Chrome"
vào cuối đường dẫn đích.
mục tiêu của bạn sẽ trông giống như thế này:
Cập nhật: Đã thêm cờ mới.
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="D:/Chrome"
sử dụng phiên bản chrome mới nhất hiện tại (83.0.4103.61 (Bản dựng chính thức) (64 bit)), cách duy nhất để làm cho nó hoạt động trong thử nghiệm của tôi là khởi động chrome bằng các cờ bên dưới (thay đổi D: \ temp theo ý thích của bạn) . Giải pháp này sẽ bắt đầu chrome dưới dạng hộp cát để thử nghiệm và nó sẽ không ảnh hưởng đến cấu hình chrome chính:
--disable-site-cô lập-thử nghiệm --disable-web-security --user-data-dir = "D: \ temp"
trong cửa sổ, nhấp vào nút bắt đầu, sau đó sao chép dán bên dưới:
chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"
chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"
trên run
cửa sổ trên windows 10. Cảm ơn rất nhiều.
Bạn có thể sử dụng plugin chrome này có tên "Cho phép kiểm soát-Cho phép-Xuất xứ: *" ... Nó làm cho nó trở nên đơn giản và hoạt động rất tốt. kiểm tra nó ở đây: *
Đối với Selenium WebSearch, bạn có thể khởi động Selenium Chrome bằng các đối số thích hợp (hoặc "công tắc") trong trường hợp này.
@driver = Selenium::WebDriver.for(:Chrome, {
:detach => false,
:switches => ["--disable-web-security"]
})
Nếu bạn đang sử dụng Google Chrome trên Linux, lệnh sau sẽ hoạt động.
google-chrome --disable-web-security
Plugin Chrome này hoạt động với tôi: Cho phép-Kiểm soát-Cho phép-Xuất xứ: * - Cửa hàng Chrome trực tuyến
Đừng làm điều này! Bạn đang mở tài khoản của mình để tấn công . Khi bạn thực hiện việc này, bất kỳ trang web bên thứ 3 nào cũng có thể bắt đầu gửi yêu cầu đến các trang web khác, các trang web mà bạn đã đăng nhập.
Thay vào đó hãy chạy một máy chủ cục bộ. Dễ dàng như mở shell / terminal / dòng lệnh và gõ
cd path/to/files
python -m SimpleHTTPServer
Sau đó trỏ trình duyệt của bạn tới
http://localhost:8000
Nếu bạn thấy nó quá chậm hãy xem xét giải pháp này
Mọi người đánh giá thấp câu trả lời này nên đi qua đây và downvote câu trả lời này quá phù hợp. Không biết tại sao câu trả lời của tôi lại bị đánh giá thấp và câu trả lời tương tự ở đây là câu trả lời được bình chọn hàng đầu.
Bạn đang tự mở các cuộc tấn công. Mỗi tập lệnh của bên thứ 3 mà bạn đưa vào trên trang web của mình từ xa hoặc cục bộ như qua npm giờ đây có thể tải lên dữ liệu của bạn hoặc đánh cắp thông tin đăng nhập của bạn. Bạn đang làm một cái gì đó bạn không cần phải làm. Giải pháp được đề xuất không khó, mất 30 giây, không để bạn mở cuộc tấn công. Tại sao bạn lại chọn làm cho mình dễ bị tổn thương khi điều tốt hơn để làm là đơn giản như vậy?
Nói với mọi người để vô hiệu hóa bảo mật cũng giống như bảo bạn bè của bạn mở khóa cửa trước và / hoặc chìa khóa dưới thảm chùi chân. Chắc chắn tỷ lệ cược có thể thấp nhưng nếu chúng bị đánh cắp, mà không có bằng chứng buộc phải nhập cảnh, chúng có thể gặp khó khăn trong việc thu tiền bảo hiểm. Tương tự như vậy nếu bạn vô hiệu hóa bảo mật, bạn đang thực hiện việc vô hiệu hóa bảo mật đó . Thật vô trách nhiệm khi làm điều này khi bạn có thể giải quyết vấn đề một cách đơn giản mà không vô hiệu hóa bảo mật. Tôi sẽ ngạc nhiên nếu bạn không thể bị sa thải tại một số công ty vì vô hiệu hóa bảo mật.
Bạn chỉ có thể sử dụng tiện ích mở rộng chrome này Cho phép-Kiểm soát-Cho phép-Xuất xứ
chỉ cần nhấp vào biểu tượng của phần mở rộng để bật bật chia sẻ tài nguyên chéo BẬT hoặc TẮT theo ý muốn
CHỈ DÀNH CHO MAC USER
open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/someFolderName" --disable-web-security
chromium-browser --disable-web-security --user-data-dir=~/ChromeUserData/
Trên Windows 10, phần sau sẽ hoạt động.
<<path>>\chrome.exe --allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt
Theo câu trả lời của Ola Karlsson, thực sự cách tốt nhất là mở Chrome không an toàn trong một phiên khác. Bằng cách này, bạn không cần lo lắng về việc đóng tất cả các tab hiện đang mở và cũng có thể tiếp tục lướt web an toàn với phiên Chrome gốc.
Các tệp bó này sẽ chỉ hoạt động cho bạn trên Windows.
Đặt nó trong tệp Chrome_CORS.bat để dễ sử dụng
start "" "c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="c:/_chrome_dev" --disable-web-security
Cái này là dành cho Chrome Canary . Canary_CORS.bat
start "" "c:\Users\%USERNAME%\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --user-data-dir="c:/_canary_dev" --disable-web-security
Trên Linux- Ubuntu, để chạy đồng thời một phiên bình thường và một phiên không an toàn chạy lệnh sau:
google-chrome --user-data-dir=/tmp --disable-web-security
cho người dùng mac:
open -a "Google Chrome" --args --disable-web-security --user-data-dir
và trước Chrome 48, bạn chỉ có thể sử dụng:
open -a "Google Chrome" --args --disable-web-security
Có một tiện ích mở rộng Chrome có tên CORS Toggle.
Nhấp vào đây để truy cập và thêm nó vào Chrome .
Sau khi thêm nó, chuyển nó vào trên vị trí để cho phép các yêu cầu cross-domain.
Cho cửa sổ:
(sử dụng windows 8.1, chrome 44.0 )
Đầu tiên, đóng google chrome.
Sau đó, mở dấu nhắc lệnh và đi đến thư mục chứa 'chrome.exe'.
( for me: 'chrome.exe' is here "C:\Program Files (x86)\Google\Chrome\Application".
Vì vậy, tôi gõ
cd C:\Program Files (x86)\Google\Chrome\Application
:)
bây giờ gõ: chrome.exe --disable-web-security
một cửa sổ mới của chrome sẽ mở ra.
Được sử dụng lệnh bên dưới trong Ubuntu để khởi động chrome (vô hiệu hóa chính sách gốc và mở chrome ở chế độ tách rời):
nohup google-chrome --disable-web-security --user-data-dir='/tmp' &
Trên Windows:
1) Tạo lối tắt mới:
2) Dán đường dẫn sau:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="c:\temp\chrome"
3) Trong loại trang tiếp theo:
Unsafe Chrome.exe
Bây giờ bạn có một chrome không an toàn trên máy tính để bàn để sử dụng để gỡ lỗi các ứng dụng CORS. Hy vọng câu trả lời đồ họa này sẽ giúp một số người!
Hãy thử truy cập trang này và vô hiệu hóa chính sách bảo mật tên miền cho tên miền trang web của bạn.
chrome://net-internals/#hsts
Input a domain name to delete its dynamic domain security policies (HSTS and Expect-CT). (You cannot delete preloaded entries.):
.