Câu hỏi và trả lời SO này có tiêu đề: Có một tiêu chuẩn xác định SSID và mật khẩu hợp lệ là gì không? trả lời một số câu hỏi của bạn
đoạn trích
Mục 7.3.2.1 của 802,11-2007 đặc điểm kỹ thuật ( http://standards.ieee.org/getieee802/download/802.11-2007.pdf ) định nghĩa SSID.
SSID hợp lệ là 0-32 octet với nội dung tùy ý. SSID có độ dài 0 biểu thị SSID ký tự đại diện (ví dụ trong khung yêu cầu thăm dò).
Không có bộ ký tự nào được liên kết với SSID - chuỗi NUL-byte 32 byte là SSID hợp lệ.
Điều này nghĩa là:
- bạn không bao giờ nên sử dụng các hàm chuỗi bình thường khi thao tác SSID chung (strcpy () và bạn bè).
- bạn không nên cho rằng SSID có thể in được, ví dụ, khi đăng nhập nó vào đĩa
Cũng có nhận xét này về câu trả lời cho câu hỏi SO:
Đã có phiên bản cập nhật của tiêu chuẩn ( http: // st Chuẩns.ieee.org / getieee802 / doad / 802.11-2012.pdf ), trong đó xác định SSIDEncoding
trường. Nó có thể là UNSPECIFIED
(đối với dữ liệu tùy ý) hoặc UTF8
.
Vì vậy, tôi sẽ tìm đến tiêu chuẩn mới nhất để được hướng dẫn và đảm bảo bạn có thể giải quyết những gì hợp pháp dựa trên điều đó.
Còn gì nữa không
Ngoài ra, tôi có thể có xu hướng tự bảo vệ mình bằng cách bình thường hóa đầu vào của người dùng bằng cách sử dụng một số dạng chức năng mã hóa URL (một cái gì đó sẽ hoạt động với SSID rõ ràng) hoặc đơn giản là loại bỏ các ký tự bất hợp pháp và đơn giản là không cho phép họ trước khi viết các chuỗi này vào tệp này .
Nhân vật kỳ lạ?
Vấn đề duy nhất tôi có thể tìm thấy với các ký tự lạ / đặc biệt liên quan đến interfaces
tệp là các loại lỗi được gửi chống lại trình cài đặt debian.
debian-Installer yêu cầu thông tin mạng không dây của tôi và sử dụng thành công để kết nối không dây với mạng. Nó cũng đã viết thông tin mạng không dây của tôi vào / etc / mạng / giao diện. Tuy nhiên, khóa WPA mà tôi đã nhập chứa ít nhất một ký tự đặc biệt và trình cài đặt debian không thoát hoặc trích dẫn (các) ký tự đặc biệt trong / etc / network / giao diện. Kết quả là, khi khởi động lại, hệ thống đã treo trong một thời gian rất dài trong quá trình khởi động khi nó cố gắng (không thành công) để kết nối lại với mạng không dây. Tôi đã khắc phục sự cố bằng cách trích dẫn khóa WPA được liệt kê trong / etc / network / giao diện. Điều này sẽ tự động xảy ra nếu khóa chứa các ký tự đặc biệt.
Ngoài ra còn có các lỗi này, một lỗi liên quan đến khoảng trắng trong SSID, các lỗi khác liên quan đến cụm mật khẩu:
Trong cả hai trường hợp, dường như việc bọc các chuỗi bằng dấu ngoặc kép là đủ để bảo vệ các giá trị cho cả hai.
Ví dụ bổ sung
Tài liệu chính thức
Đi sâu vào tài liệu chính thức tôi tìm thấy bit này ở đây:
Các tài liệu chính thức cho thấy ví dụ này:
ap_scan=2
network={
ssid="test adhoc"
mode=1
frequency=2412
proto=WPA
key_mgmt=WPA-NONE
pairwise=NONE
group=TKIP
psk="passphrase"
}
Vì vậy, dường như các khoảng trắng được cho phép, miễn là chúng được trích dẫn chính xác. Ngoài ra còn có ví dụ này giải thích cách cung cấp SSID có khoảng trắng cho iwconfig
công cụ:
Thêm tên (ssid) cho mạng bạn muốn tạo / tham gia. Sử dụng dấu ngoặc đơn nếu có một khoảng trắng trong tên.
$ sudo iwconfig eth1 essid 'name'
Trình duyệt web
Tôi đã tìm thấy ví dụ này có vẻ là Debian dưới vỏ bọc, vì vậy ví dụ này có thể phù hợp với tình huống của bạn, nhưng thật khó để nói chắc chắn. Tôi chỉ đưa nó lên vì nó cho thấy một ví dụ về cách tôi mong muốn một phương thức mã hóa URI được phơi bày để bảo vệ chống lại các ký tự bất hợp pháp.
đoạn trích
Ví dụ 4 "Không gian trong ESSID", tiểu luận phát sóng 'Hopstock Gjestenett', với khóa WPA uiopzxcv
Vui lòng tránh các khoảng trắng trong ESSID. Trong trường hợp này, chúng tôi giải quyết với một encodeURI ('Hopstock Gjestenett'), để có được công thức khởi động sau:
wpa-ssid=Hopstock%20Gjestenett wpa-psk=uiopzxcv
Vì vậy, bạn có thể mã hóa các khoảng trắng hiển thị trong SSID bằng cách sử dụng %20
.
SSID
Tìm hiểu sâu hơn nữa tôi thấy nhận xét này từ trang Wikipedia trên Bộ dịch vụ (mạng 802.11) .
Mỗi BSS hoặc ESS được xác định bởi một mã định danh bộ dịch vụ (SSID) - chuỗi 1 đến 32 byte. Đây thường là một chuỗi có thể đọc được và do đó thường được gọi là "tên mạng". 6 Trong IBSS, SSID được chọn bởi thiết bị khách khởi động mạng và việc phát SSID được thực hiện theo thứ tự giả ngẫu nhiên bởi tất cả các thiết bị là thành viên của mạng.
Nhận xét này được hỗ trợ bởi bài trình bày này từ Blackhat EU 2013, có tiêu đề: Khai thác thực tế bằng cách sử dụng Mã định danh bộ dịch vụ độc hại (SSID) .
đoạn trích
- Không có giới hạn nào được xác định đối với những ký tự nào có thể được sử dụng trong SSID (IEEE Std 802.11 ™ -2012)
- Một số hạn chế dựa trên sản phẩm
- Một số giới hạn ký tự (chỉ ascii)
- Unicode
Vì vậy, về mặt kỹ thuật, bất kỳ ký tự nào cũng được phép trong SSID, các cách triển khai khác nhau như Windows XP, Windows 7, so với các phiên bản Linux khác nhau cho phép / không cho phép các tập hợp con của các ký tự trong SSID.
Người giới thiệu
wpa-ssid my ssid
.