นี่คือคำสั่ง ssltap ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
ssltap - แตะที่การเชื่อมต่อ SSL และแสดงข้อมูลโดย
เรื่องย่อ
ssltap [-fhlsvx] [-p พอร์ต] [ชื่อโฮสต์:พอร์ต]
สถานภาพ
เอกสารนี้ยังคงดำเนินการอยู่ โปรดมีส่วนร่วมในการตรวจสอบเบื้องต้นใน
Mozilla เอ็นเอส ข้อผิดพลาด 836477[1]
DESCRIPTION
เครื่องมือแก้ไขจุดบกพร่อง SSL ssltap เป็นพร็อกซีบรรทัดคำสั่งที่ทราบ SSL มันดู TCP
การเชื่อมต่อและแสดงข้อมูลที่ผ่านไป หากการเชื่อมต่อเป็น SSL ข้อมูลจะแสดง
รวมถึงบันทึก SSL ที่ตีความและการจับมือกัน
OPTIONS
-f
เปิดการพิมพ์แฟนซี เอาต์พุตถูกพิมพ์ด้วย HTML สี ข้อมูลที่ส่งจากลูกค้า
ไปที่เซิร์ฟเวอร์เป็นสีน้ำเงิน คำตอบของเซิร์ฟเวอร์เป็นสีแดง เมื่อใช้กับโหมดวนซ้ำ
การเชื่อมต่อที่แตกต่างกันจะถูกคั่นด้วยเส้นแนวนอน คุณสามารถใช้ตัวเลือกนี้
เพื่ออัปโหลดผลลัพธ์ไปยังเบราว์เซอร์
-h
เปิดการพิมพ์ฐานสิบหก/ASCII แทนที่จะส่งออกข้อมูลดิบ คำสั่งจะแปลความหมาย
แต่ละเร็กคอร์ดเป็นบรรทัดตัวเลขของค่าฐานสิบหก ตามด้วยข้อมูลเดียวกันกับASCII
ตัวอักษร ทั้งสองส่วนคั่นด้วยแถบแนวตั้ง อักขระที่ไม่พิมพ์เป็น
แทนที่ด้วยจุด
-l คำนำหน้า
เปิดการวนซ้ำ; นั่นคือยอมรับการเชื่อมต่อต่อไปแทนที่จะหยุดหลังจาก
การเชื่อมต่อครั้งแรกเสร็จสมบูรณ์
-p พอร์ต
เปลี่ยนพอร์ตนัดพบเริ่มต้น (1924) เป็นพอร์ตอื่น
ต่อไปนี้เป็นหมายเลขพอร์ตที่รู้จักกันดี:
* HTTP80
* HTTPS 443
* เอสเอ็มทีพี 25
* เอฟทีพี 21
* ไอแมป 143
* IMAPS 993 (IMAP ผ่าน SSL)
* นทพ.119
* NNTPS 563 (NNTP ผ่าน SSL)
-s
เปิดการแยกวิเคราะห์และถอดรหัส SSL เครื่องมือนี้ไม่ตรวจหาเซสชัน SSL โดยอัตโนมัติ
หากคุณกำลังสกัดกั้นการเชื่อมต่อ SSL ให้ใช้ตัวเลือกนี้เพื่อให้เครื่องมือสามารถตรวจจับได้
และถอดรหัสโครงสร้าง SSL
หากเครื่องมือตรวจพบสายใบรับรอง เครื่องมือจะบันทึกใบรับรองที่เข้ารหัส DER ลงใน
ไฟล์ในไดเร็กทอรีปัจจุบัน ไฟล์มีชื่อว่า cert.0x โดยที่ x คือลำดับ
หมายเลขใบรับรอง
หากใช้ตัวเลือก -s กับ -h จะมีการพิมพ์สองส่วนแยกกันสำหรับแต่ละระเบียน: the
เอาต์พุต hex/ASCII ธรรมดา และเอาต์พุต SSL ที่แยกวิเคราะห์
-v
พิมพ์สตริงเวอร์ชันสำหรับเครื่องมือ
-x
เปิดการถ่ายโอนข้อมูล SSL hex พิเศษ
การใช้ AND ตัวอย่าง
คุณสามารถใช้เครื่องมือแก้ไขจุดบกพร่อง SSL เพื่อสกัดกั้นข้อมูลการเชื่อมต่อใดๆ แม้ว่าคุณ
สามารถเรียกใช้เครื่องมือได้ในระดับพื้นฐานที่สุดโดยออกคำสั่ง ssltap โดยไม่มีตัวเลือกอื่น ๆ
กว่า hostname:port ข้อมูลที่คุณได้รับในลักษณะนี้ไม่ค่อยมีประโยชน์ ตัวอย่างเช่น,
ถือว่าเครื่องพัฒนาของคุณเรียกว่าการสกัดกั้น วิธีที่ง่ายที่สุดในการใช้การดีบัก
เครื่องมือคือการรันคำสั่งต่อไปนี้จาก command shell:
$ssltap www.netscape.com
โปรแกรมรอการเชื่อมต่อขาเข้าบนพอร์ตเริ่มต้น 1924 ในเบราว์เซอร์ของคุณ
หน้าต่าง ป้อน URL http://intercept:1924. เบราว์เซอร์ดึงหน้าที่ร้องขอจาก
เซิร์ฟเวอร์ที่ www.netscape.com แต่เพจถูกดักและส่งต่อไปยังเบราว์เซอร์
โดยเครื่องมือดีบักในการสกัดกั้น ระหว่างทางไปยังเบราว์เซอร์ ข้อมูลจะถูกพิมพ์ไปที่
command shell ที่คุณออกคำสั่ง ข้อมูลที่ส่งจากไคลเอนต์ไปยังเซิร์ฟเวอร์
ล้อมรอบด้วยสัญลักษณ์ต่อไปนี้: --> [ data ] ข้อมูลที่ส่งจากเซิร์ฟเวอร์ไปยัง
ลูกค้ารายล้อมด้วยสัญลักษณ์ต่อไปนี้: "ลูกศรซ้าย"-- [ data ] The raw data stream
ถูกส่งไปยังเอาต์พุตมาตรฐานและไม่ได้ตีความ แต่อย่างใด ส่งผลให้มีลักษณะเฉพาะ
เอฟเฟกต์ เช่น เสียง กะพริบ และแม้แต่การหยุดทำงานของหน้าต่างเชลล์คำสั่ง เพื่อส่งออก
การตีความข้อมูลพื้นฐานที่สามารถพิมพ์ได้ ใช้ตัวเลือก -h หรือหากคุณกำลังมองหา
ที่การเชื่อมต่อ SSL ตัวเลือก -s คุณจะสังเกตเห็นว่าหน้าที่ดึงมามีลักษณะ
ไม่สมบูรณ์ในเบราว์เซอร์ นี่เป็นเพราะโดยค่าเริ่มต้น เครื่องมือจะปิดตัวลงหลังจาก
การเชื่อมต่อครั้งแรกเสร็จสมบูรณ์ เบราว์เซอร์จึงไม่สามารถโหลดภาพได้ เพื่อทำเครื่องมือ
ยังคงยอมรับการเชื่อมต่อ เปิดโหมดวนซ้ำด้วยตัวเลือก -l ต่อไปนี้
ตัวอย่างแสดงผลลัพธ์จากชุดตัวเลือกที่ใช้กันทั่วไป
1 ตัวอย่าง
$ ssltap.exe -sx -p 444 interzone.mcom.com:443 > sx.txt
เอาท์พุต
เชื่อมต่อกับ interzone.mcom.com:443
-->; [
alloclen = 66 ไบต์
[ssl2] ไคลเอนต์ HelloV2 {
รุ่น = {0x03, 0x00}
รหัส - ข้อกำหนด - ความยาว = 39 (0x27)
ความยาวด้าน = 0 (0x00)
ท้าทายความยาว = 16 (0x10)
ชุดรหัส = {
(0x010080) SSL2/RSA/RC4-128/MD5
(0x020080) SSL2/RSA/RC4-40/MD5
(0x030080) SSL2/RSA/RC2CBC128/MD5
(0x040080) SSL2/RSA/RC2CBC40/MD5
(0x060040) SSL2/RSA/DES64CBC/MD5
(0x0700c0) SSL2/RSA/3DES192EDE-CBC/MD5
(0x000004) SSL3/RSA/RC4-128/MD5
(0x00ffe0) SSL3/RSA-FIPS/3DES192EDE-CBC/SHA
(0x00000a) SSL3/RSA/3DES192EDE-CBC/SHA
(0x00ffe1) SSL3/RSA-FIPS/DES64CBC/SHA
(0x000009) SSL3/RSA/DES64CBC/SHA
(0x000003) SSL3/RSA/RC4-40/MD5
(0x000006) SSL3/RSA/RC2CBC40/MD5
}
รหัสเซสชัน = { }
challenge = { 0xec5d 0x8edb 0x37c9 0xb5c9 0x7b70 0x8fe9 0xd1d3
0x2592 }
}
]
<- [
บันทึก SSL {
0: 16 03 00 03 e5 |.....
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 997 (0x3e5)
การจับมือกัน {
0: 02 00 00 46 |...ฟ
ประเภท = 2 (เซิร์ฟเวอร์_hello)
ความยาว = 70 (0x000046)
เซิร์ฟเวอร์สวัสดี {
เซิร์ฟเวอร์_เวอร์ชัน = {3, 0}
สุ่ม = {...}
0: 77 8c 6e 26 6c 0c อีซี c0 d9 58 4f 47 d3 2d 01 45 |
wn&l.ì..XOG.-.E
10: 5c 17 75 43 a7 4c 88 c7 88 64 3c 50 41 48 4f 7f |
\.uC§L.C.d
รหัสเซสชัน = {
ความยาว = 32
เนื้อหา = {..}
0: 14 11 07 a8 2a 31 91 29 11 94 40 37 57 10 a7 32 | ...¨*1.)..@7W.§2
10: 56 6f 52 62 เฟ 3d b3 65 b1 e4 13 0f 52 a3 c8 f6 | VoRbþ=³e±...R£È
}
cipher_suite = (0x0003) SSL3/RSA/RC4-40/MD5
}
0: 0b 00 02 c5 |...อั
ประเภท = 11 (ใบรับรอง)
ความยาว = 709 (0x0002c5)
ห่วงโซ่ใบรับรอง {
ความยาวโซ่ = 706 (0x02c2)
ใบรับรอง {
ขนาด = 703 (0x02bf)
data = { บันทึกไว้ในไฟล์ 'cert.001' }
}
}
0:0c00ca|....
ประเภท = 12 (server_key_exchange)
ความยาว = 202 (0x0000ca)
0:0e 00 00 00 |....
ชนิด = 14 (เซิร์ฟเวอร์_hello_done)
ความยาว = 0 (0x000000)
}
}
]
--> [
บันทึก SSL {
0: 16 03 00 00 44 |....ด
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 68 (0x44)
การจับมือกัน {
0:10 00 00 40 |...@
ประเภท = 16 (client_key_exchange)
ความยาว = 64 (0x000040)
ลูกค้าคีย์แลกเปลี่ยน {
ข้อความ = {...}
}
}
}
]
--> [
บันทึก SSL {
0: 14 03 00 00 01 |.....
ประเภท = 20 (change_cipher_spec)
รุ่น = { 3,0 }
ความยาว = 1 (0x1)
0:01 |.
}
บันทึก SSL {
0:16 03 00 00 38 |....8
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 56 (0x38)
< เข้ารหัส >
}
]
<- [
บันทึก SSL {
0: 14 03 00 00 01 |.....
ประเภท = 20 (change_cipher_spec)
รุ่น = { 3,0 }
ความยาว = 1 (0x1)
0:01 |.
}
]
<- [
บันทึก SSL {
0:16 03 00 00 38 |....8
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 56 (0x38)
< เข้ารหัส >
}
]
--> [
บันทึก SSL {
0: 17 03 00 01 1f |.....
ประเภท = 23 (application_data)
รุ่น = { 3,0 }
ความยาว = 287 (0x11f)
< เข้ารหัส >
}
]
<- [
บันทึก SSL {
0: 17 03 00 00 a0 |....
ประเภท = 23 (application_data)
รุ่น = { 3,0 }
ความยาว = 160 (0xa0)
< เข้ารหัส >
}
]
<- [
บันทึก SSL {
0: 17 03 00 00 df |....ß
ประเภท = 23 (application_data)
รุ่น = { 3,0 }
ความยาว = 223 (0xdf)
< เข้ารหัส >
}
บันทึก SSL {
0: 15 03 00 00 12 |.....
ประเภท = 21 (แจ้งเตือน)
รุ่น = { 3,0 }
ความยาว = 18 (0x12)
< เข้ารหัส >
}
]
ซ็อกเก็ตเซิร์ฟเวอร์ปิด
2 ตัวอย่าง
ตัวเลือก -s จะเปิดการแยกวิเคราะห์ SSL เนื่องจากไม่ได้ใช้ตัวเลือก -x ในตัวอย่างนี้
ค่าที่ไม่ได้เข้ารหัสจะถูกส่งออกเป็นข้อมูลดิบ เอาต์พุตถูกส่งไปยังไฟล์ข้อความ
$ ssltap -s -p 444 interzone.mcom.com:443 > s.txt
เอาท์พุต
เชื่อมต่อกับ interzone.mcom.com:443
--> [
alloclen = 63 ไบต์
[ssl2] ไคลเอนต์ HelloV2 {
รุ่น = {0x03, 0x00}
รหัส - ข้อกำหนด - ความยาว = 36 (0x24)
ความยาวด้าน = 0 (0x00)
ท้าทายความยาว = 16 (0x10)
ชุดรหัส = {
(0x010080) SSL2/RSA/RC4-128/MD5
(0x020080) SSL2/RSA/RC4-40/MD5
(0x030080) SSL2/RSA/RC2CBC128/MD5
(0x060040) SSL2/RSA/DES64CBC/MD5
(0x0700c0) SSL2/RSA/3DES192EDE-CBC/MD5
(0x000004) SSL3/RSA/RC4-128/MD5
(0x00ffe0) SSL3/RSA-FIPS/3DES192EDE-CBC/SHA
(0x00000a) SSL3/RSA/3DES192EDE-CBC/SHA
(0x00ffe1) SSL3/RSA-FIPS/DES64CBC/SHA
(0x000009) SSL3/RSA/DES64CBC/SHA
(0x000003) SSL3/RSA/RC4-40/MD5
}
รหัสเซสชัน = { }
ความท้าทาย = { 0x713c 0x9338 0x30e1 0xf8d6 0xb934 0x7351 0x200c
0x3fd0 }
]
>-- [
บันทึก SSL {
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 997 (0x3e5)
การจับมือกัน {
ประเภท = 2 (เซิร์ฟเวอร์_hello)
ความยาว = 70 (0x000046)
เซิร์ฟเวอร์สวัสดี {
เซิร์ฟเวอร์_เวอร์ชัน = {3, 0}
สุ่ม = {...}
รหัสเซสชัน = {
ความยาว = 32
เนื้อหา = {..}
}
cipher_suite = (0x0003) SSL3/RSA/RC4-40/MD5
}
ประเภท = 11 (ใบรับรอง)
ความยาว = 709 (0x0002c5)
ห่วงโซ่ใบรับรอง {
ความยาวโซ่ = 706 (0x02c2)
ใบรับรอง {
ขนาด = 703 (0x02bf)
data = { บันทึกไว้ในไฟล์ 'cert.001' }
}
}
ประเภท = 12 (server_key_exchange)
ความยาว = 202 (0x0000ca)
ชนิด = 14 (เซิร์ฟเวอร์_hello_done)
ความยาว = 0 (0x000000)
}
}
]
--> [
บันทึก SSL {
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 68 (0x44)
การจับมือกัน {
ประเภท = 16 (client_key_exchange)
ความยาว = 64 (0x000040)
ลูกค้าคีย์แลกเปลี่ยน {
ข้อความ = {...}
}
}
}
]
--> [
บันทึก SSL {
ประเภท = 20 (change_cipher_spec)
รุ่น = { 3,0 }
ความยาว = 1 (0x1)
}
บันทึก SSL {
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 56 (0x38)
> เข้ารหัสแล้ว >
}
]
>-- [
บันทึก SSL {
ประเภท = 20 (change_cipher_spec)
รุ่น = { 3,0 }
ความยาว = 1 (0x1)
}
]
>-- [
บันทึก SSL {
พิมพ์ = 22 (จับมือ)
รุ่น = { 3,0 }
ความยาว = 56 (0x38)
> เข้ารหัสแล้ว >
}
]
--> [
บันทึก SSL {
ประเภท = 23 (application_data)
รุ่น = { 3,0 }
ความยาว = 287 (0x11f)
> เข้ารหัสแล้ว >
}
]
[
บันทึก SSL {
ประเภท = 23 (application_data)
รุ่น = { 3,0 }
ความยาว = 160 (0xa0)
> เข้ารหัสแล้ว >
}
]
>-- [
บันทึก SSL {
ประเภท = 23 (application_data)
รุ่น = { 3,0 }
ความยาว = 223 (0xdf)
> เข้ารหัสแล้ว >
}
บันทึก SSL {
ประเภท = 21 (แจ้งเตือน)
รุ่น = { 3,0 }
ความยาว = 18 (0x12)
> เข้ารหัสแล้ว >
}
]
ซ็อกเก็ตเซิร์ฟเวอร์ปิด
3 ตัวอย่าง
ในตัวอย่างนี้ อ็อพชัน -h เปลี่ยนรูปแบบ hex/ASCII ไม่มีการแยกวิเคราะห์ SSL หรือ
ถอดรหัส เอาต์พุตถูกส่งไปยังไฟล์ข้อความ
$ ssltap -h -p 444 interzone.mcom.com:443 > h.txt
เอาท์พุต
เชื่อมต่อกับ interzone.mcom.com:443
--> [
0: 80 40 01 03 00 00 27 00 00 00 10 01 00 80 02 00 | .@....'.........
10: 80 03 00 80 04 00 80 06 00 40 07 00 c0 00 00 04 | ..........@......
20: 00 ff e0 00 00 0a 00 ff e1 00 00 09 00 00 03 00 | ........NS.......
30: 00 06 9b fe 5b 56 96 49 1f 9f ca dd d5 ba b9 52 | ..þ[VI\xd9 ...º¹R
40: 6f 2d |o-
]
<- [
0: 16 03 00 03 e5 02 00 00 46 03 00 7f e5 0d 1b 1d | ........NS.......
10: 68 7f 3a 79 60 d5 17 3c 1d 9c 96 b3 88 d2 69 3b | h.:y`..<..³.Òi;
20: 78 e2 4b 8b a6 52 12 4b 46 e8 c2 20 14 11 89 05 | xK¦R.KFè. ...
30: 4d 52 91 fd 93 e0 51 48 91 90 08 96 c1 b6 76 77 | นายตี..QH.....¶vw
40: 2a f4 00 08 a1 06 61 a2 64 1f 2e 9b 00 03 00 0b | *โ..¡.a¢d......
50: 00 02 c5 00 02 c2 00 02 bf 30 82 02 bb 30 82 02 | ..อ......0...0..
60: 24 a0 03 02 01 02 02 02 01 36 30 0d 06 09 2a 86 | $.......60...*.
70: 48 86 f7 0d 01 01 04 05 00 30 77 31 0b 30 09 06 | ฮ.÷......0w1.0..
80: 03 55 04 06 13 02 55 53 31 2c 30 2a 06 03 55 04 | .U....US1,0*..U.
90: 0a 13 23 4e 65 74 73 63 61 70 65 20 43 6f 6d 6d | ..#เน็ตสเคปคอม
a0: 75 6e 69 63 61 74 69 6f 6e 73 20 43 6f 72 70 6f | ยูนิเคชั่นคอร์โป
b0: 72 61 74 69 6f 6e 31 11 30 0f 06 03 55 04 0b 13 | ration1.0...คุณ...
c0: 08 48 61 72 64 63 6f 72 65 31 27 30 25 06 03 55 | .Hardcore1'0%..U
d0: 04 03 13 1e 48 61 72 64 63 6f 72 65 20 43 65 72 | ....ฮาร์ดคอร์ เซอร์
e0: 74 69 66 69 63 61 74 65 20 53 65 72 76 65 72 20 | tificate เซิร์ฟเวอร์
f0: 49 49 30 1e 17 0d 39 38 30 35 31 36 30 31 30 33 | II0...9805160103
]
ซ็อกเก็ตเซิร์ฟเวอร์ปิด
4 ตัวอย่าง
ในตัวอย่างนี้ อ็อพชัน -s จะเปิดการแยกวิเคราะห์ SSL และอ็อพชัน -h จะเปิด hex/ASCII
รูปแบบ. ทั้งสองรูปแบบจะแสดงสำหรับแต่ละระเบียน เอาต์พุตถูกส่งไปยังไฟล์ข้อความ
$ ssltap -hs -p 444 interzone.mcom.com:443 > hs.txt
เอาท์พุต
เชื่อมต่อกับ interzone.mcom.com:443
--> [
0: 80 3d 01 03 00 00 24 00 00 00 10 01 00 80 02 00 | -
10: 80 03 00 80 04 00 80 06 00 40 07 00 c0 00 00 04 | ..........@......
20: 00 ff e0 00 00 0a 00 ff e1 00 00 09 00 00 03 03 | ........NS.......
30: 55 e6 e4 99 79 c7 d7 2c 86 78 96 5d b5 cf e9 |U..y\xb0 ,.x.]µÏé
alloclen = 63 ไบต์
[ssl2] ไคลเอนต์ HelloV2 {
รุ่น = {0x03, 0x00}
รหัส - ข้อกำหนด - ความยาว = 36 (0x24)
ความยาวด้าน = 0 (0x00)
ท้าทายความยาว = 16 (0x10)
ชุดรหัส = {
(0x010080) SSL2/RSA/RC4-128/MD5
(0x020080) SSL2/RSA/RC4-40/MD5
(0x030080) SSL2/RSA/RC2CBC128/MD5
(0x040080) SSL2/RSA/RC2CBC40/MD5
(0x060040) SSL2/RSA/DES64CBC/MD5
(0x0700c0) SSL2/RSA/3DES192EDE-CBC/MD5
(0x000004) SSL3/RSA/RC4-128/MD5
(0x00ffe0) SSL3/RSA-FIPS/3DES192EDE-CBC/SHA
(0x00000a) SSL3/RSA/3DES192EDE-CBC/SHA
(0x00ffe1) SSL3/RSA-FIPS/DES64CBC/SHA
(0x000009) SSL3/RSA/DES64CBC/SHA
(0x000003) SSL3/RSA/RC4-40/MD5
}
รหัสเซสชัน = { }
ความท้าทาย = { 0x0355 0xe6e4 0x9979 0xc7d7 0x2c86 0x7896 0x5db
0xcfe9 }
}
]
ซ็อกเก็ตเซิร์ฟเวอร์ปิด
การใช้ TIPS
เมื่อ SSL รีสตาร์ทเซสชันก่อนหน้า จะใช้ข้อมูลที่แคชไว้ทำบางส่วน
การจับมือกัน หากคุณต้องการจับภาพ SSL handshake แบบเต็ม ให้รีสตาร์ทเบราว์เซอร์เพื่อล้าง
แคชรหัสเซสชัน
หากคุณเรียกใช้เครื่องมือบนเครื่องอื่นที่ไม่ใช่เซิร์ฟเวอร์ SSL ที่คุณกำลังพยายาม
เชื่อมต่อเบราว์เซอร์จะบ่นว่าชื่อโฮสต์ที่คุณพยายามเชื่อมต่อคือ
แตกต่างจากใบรับรอง หากคุณกำลังใช้การโทรกลับ BadCert ที่เป็นค่าเริ่มต้น คุณสามารถ
ยังคงเชื่อมต่อผ่านไดอะล็อก หากคุณไม่ได้ใช้การเรียกกลับ BadCert ที่เป็นค่าเริ่มต้น
คุณจัดหาต้องอนุญาตให้เป็นไปได้นี้
ใช้ ssltap ออนไลน์โดยใช้บริการ onworks.net