ไม่ปลอดภัยเนื่องจาก cURL จะใช้การตรวจสอบเบื้องต้นที่โปรโตคอล HTTP ส่งรหัสผ่านของคุณเป็นข้อความธรรมดา เมื่อคุณระบุusername:password
สตริงมันจะถูกแปลงเป็นสตริงBASE64ในส่วนหัว HTTP:
GET / HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0
Accept: text/html
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
ทุกคนสามารถที่จะสกัดกั้นการจราจร HTTP (ผู้ให้ของคุณทุกคนเข้าถึงไร้สาย AP เช่นเดียวกับคุณ ฯลฯ ) จะสามารถกู้คืนรหัสผ่านโดยเพียงแค่ใช้แปลง BASE64 ออนไลน์
โปรโตคอล HTTPS จะทำให้สิ่งต่าง ๆ ดีขึ้นด้วยการสร้างการเชื่อมต่อแบบเข้ารหัสก่อนที่จะส่งส่วนหัวนี้ป้องกันรหัสผ่านจากการเปิดเผย อย่างไรก็ตามสิ่งนี้ใช้ได้เฉพาะเมื่อผู้ใช้ให้ความสนใจเมื่อถูกขอให้ยืนยันใบรับรองที่ไม่รู้จักอนุญาตข้อยกเว้นด้านความปลอดภัยและอื่น ๆ
โปรดทราบว่าคำสั่งอาร์กิวเมนต์อาจพร้อมใช้งานสำหรับผู้ใช้รายอื่นบนเครื่องเดียวกันเพื่อดูเช่นps -ef
/ ระบบไฟล์ proc ในประวัติทุบตีคุณและในบันทึกเทอร์มินัลของคุณ (ขอบคุณสำหรับความคิดเห็นของ @ Lambert ที่สังเกตสิ่งนี้) cURL ในบางแพลตฟอร์มพยายามซ่อนรหัสผ่านดังนั้นตัวอย่างเช่นps -ef
คุณอาจจะเห็นพื้นที่ว่างแทนรหัสผ่าน อย่างไรก็ตามแทนการส่งผ่านรหัสผ่านเป็นอาร์กิวเมนต์บรรทัดคำสั่งมีม้วนพรอมต์โดยตรงสำหรับรหัสผ่านจะดีกว่าตามที่กล่าวไว้ในคำถามที่พบบ่อยม้วน