WinSCP เก็บรหัสผ่านของไซต์ไว้ที่ไหน


17

ที่ไม่WinSCPเก็บข้อมูลของเว็บไซต์หรือรหัสผ่าน? ฉันหามันไม่เจอในเอกสารและการตั้งค่า ...


ฉันรู้ว่าวิธีนี้จะง่ายเกินไปสำหรับ superusers;) แต่ถ้าคุณไม่ต้องการที่จะได้รับในมือสกปรกหรือเพียงแค่ต้องดูรหัสผ่านโดยเร็ว IMHO ตัวเลือกที่ดีคือการใช้ SmartFTP ของเครื่องมือเพิ่มเติมกู้คืนรหัสผ่าน ฉันไม่ต้องการโฆษณาหรืออะไร แต่สำหรับฉันมันเป็นอรรถประโยชน์ที่มีประโยชน์จริงๆ btw ที่นี่เป็น tut ด่วนวิธีการดูรหัสผ่านเหล่านั้น: digitalette.com/web/recover-lost-ftp-passwords-winscpหวังว่าฉันช่วย
flasherr

คำตอบ:


9

ไฟล์การกำหนดค่าจะถูกเก็บไว้ในรีจิสทรีของ Windows หรือหากคุณใช้รุ่นพกพาในไฟล์ INI ( ดูเอกสารประกอบ ) ที่ตั้งของรีจิสทรีคือ:

HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2

คุณสามารถส่งออกการตั้งค่าไปยังไฟล์ INI ได้ตลอดเวลาโดยกดExportในกล่องโต้ตอบการตั้งค่า

โปรดทราบว่ารหัสผ่านของคุณจะไม่ถูกเก็บไว้ในรูปแบบของข้อความ แต่ถูกเข้ารหัส แม้ว่าจะถอดรหัสยาก แต่ก็เป็นไปไม่ได้


4
ใน WinSCP 5.2.x และใหม่กว่าฟังก์ชั่นการส่งออกได้ถูกย้ายไปที่เครื่องมือ> ส่งออก / กำหนดค่าการสำรองข้อมูลในกล่องโต้ตอบเข้าสู่ระบบ
Martin Prikryl

20

ลองวิธีนี้

เข้าสู่ระบบในเซสชันที่คุณบันทึกไว้

ไปที่เมนูเซสชั่น

คลิกที่สร้าง URL

ตรวจสอบตัวเลือกชื่อผู้ใช้และรหัสผ่านเท่านั้น (หากคุณต้องการเส้นทางไดเรกทอรีปัจจุบันคลิกที่ตัวเลือกนี้เช่นกัน)

คุณมีหลายตัวเลือก URL / Script / .Net Assembly เลือกที่ต้องการ

คลิกที่คัดลอกไปยังบอร์ดคลิป

มันจะมีชื่อผู้ใช้และรหัสผ่าน

แค่นั้นแหละ.


2
ช่วยชีวิตฉันมีบัญชีเกือบ 100 บัญชีพร้อมรหัสผ่าน (บันทึกไว้) ที่ไม่รู้จัก นี่คือสิ่งที่ได้ผลสำหรับฉัน
Andy Gee

2
นี่คือคำตอบที่ง่ายที่สุด
Gajotres

1
ให้แน่ใจว่าจะทำ URL ถอดรหัสถ้า PSW คุณมีอักขระพิเศษ
คุง

9

นี่เป็นCesar'sคำตอบที่ง่ายมากและถือว่ารหัสผ่านของคุณยังคงใช้งานได้ใน SCP

สร้างแบตช์ไฟล์ชื่อecho.cmdที่มีข้อมูลต่อไปนี้:

echo %*
pause

วางไว้ในที่ที่เหมาะสมเช่นเดสก์ท็อปของคุณ

ไฟ WinSCP และเชื่อมต่อกับเว็บไซต์ของคุณ คลิกที่Options -> Preferences:

การตั้งค่า WinSCP

Integration -> Applicationsในการตั้งค่าการโต้ตอบไปที่ แทนที่สิ่งที่ก่อนหน้านี้ในเส้นทาง PuTTY ด้วยพา ธ ไปยังecho.cmdไฟล์แบตช์ที่สร้างขึ้นใหม่ เลือกตัวเลือกด้วย:

Remember session password and pass it to PuTTY (SSH)

WinSCP Putty Preferences

OKคลิก

ตอนนี้เปิดตัว PuTTY จากภายใน WinSCP

รหัสผ่านที่เก็บไว้ก่อนหน้านี้ของคุณควรจะปรากฏบนหน้าจอ!


6

สร้างแอปพลิเคชันคอนโซล C # ใหม่จากนั้นพิมพ์โปรแกรมต่อไปนี้:

namespace ConsoleApplication8
{
    class Program
    {
        static void Main(string[] args)
        {
            foreach (var str in args)
                System.Console.WriteLine(str);
            System.Console.ReadLine();
        }
    }
}

หากคุณไม่ใช่โปรแกรมเมอร์ภาษา C # คุณสามารถทำได้อย่างง่ายดายกับภาษาอื่น ๆ ที่คุณอาจคุ้นเคย จุดประสงค์ก็เพื่อพิมพ์ค่าใด ๆ ที่ถูกส่งผ่านเป็นอาร์กิวเมนต์ไปยังโปรแกรมของคุณ คุณสามารถทำได้ด้วยสคริปต์หากคุณคุ้นเคยกับมันมากขึ้น

ตอนนี้รวบรวมโปรแกรมของคุณและคว้าไบนารีของคุณ (เช่น ConsoleApplication8.exe) วางไว้ในที่ที่เหมาะสมเช่นเดสก์ท็อปของคุณ

ตอนนี้ถ้ารหัสผ่านของคุณยังใช้งานได้ไฟ WinSCP และเชื่อมต่อกับเว็บไซต์ของคุณ คลิกที่ตัวเลือก -> การตั้งค่า

ป้อนคำอธิบายรูปภาพที่นี่

ในกล่องโต้ตอบการตั้งค่าให้ไปที่ Integration -> Applications แทนที่สิ่งที่ก่อนหน้านี้ในเส้นทาง PuTTY ด้วยเส้นทางไปยังไบนารีที่สร้างขึ้นใหม่ของคุณ เลือกตัวเลือก "จดจำรหัสผ่านของเซสชันและส่งผ่านไปยัง PuTTY (SSH)"

ป้อนคำอธิบายรูปภาพที่นี่

คลิกตกลงจากนั้นลองเรียกใช้ PuTTY จากภายใน WinSCP

รหัสผ่านที่เก็บไว้ก่อนหน้านี้ของคุณควรจะปรากฏบนหน้าจอของคุณ


2
มันค่อนข้างฉลาด!
Paul Lammertsma

6

ฉันมีกรณีการใช้งานที่แปลกมากฉันจำเป็นต้องกู้คืนรหัสผ่านของฉัน แต่ผู้ดูแลระบบของฉันได้ล็อคสภาพแวดล้อมของฉันลงดังนั้นฉันจึงไม่สามารถเรียกใช้ไฟล์ปฏิบัติการที่ไม่ได้อยู่ในรายการที่ปลอดภัย

วิธีแก้ปัญหาของฉันคือชี้บรรทัดคำสั่ง Putty ไปที่ Notepad ++ แทน

เมื่อมันวิ่งมันบอกว่า "File -pw" ไม่มีอยู่ฉันควรสร้างมันขึ้นมาหรือไม่

จากนั้นมีข้อความว่า "ไฟล์ {รหัสผ่านแสดงที่นี่} ไม่มีอยู่ฉันควรสร้างหรือไม่" และอีกครั้งที่คุณพูดตอนนี้และแบมก็มีรหัสผ่านในข้อความที่ชัดเจน


1
เคล็ดลับดี ฉันสงสัยว่าพารามิเตอร์บรรทัดคำสั่งสามารถทำให้มองเห็นได้ด้วยเช่นกันพูด Windows Task Manager? (ใน Unix การเรียกใช้psจะแสดงรหัสผ่านหากมีการระบุไว้ในบรรทัดคำสั่งรวมทั้งกระบวนการย่อยหากจะให้ทำงานต่อไปในบางครั้ง)
Arjan

2

คุณสามารถใช้เครื่องมือเช่น WireShark เพื่อ "ดู" สิ่งที่เกิดขึ้นกับสาย สิ่งที่ฉันหมายถึงคือการมีเซสชันการจับแพ็คเก็ตที่ทำงานอยู่ (ใน WireShark) จากนั้นเข้าสู่เซิร์ฟเวอร์ FTP ของคุณ (โดยใช้ WinSCP โดยไม่มีการเข้ารหัส)

จากนั้นโดยดูที่เซสชันที่ลงทะเบียนใน WireShark เราสามารถระบุ "การสนทนา" ได้อย่างง่ายดาย (กรองโดย IP ปลายทางเช่น) จากนั้นระบุคำขอ: USER blabla และคำขอ: PASS blabla ที่ระดับ FTP ของ "การสนทนา"


2

ฉันมาที่คำตอบนี้ในขณะที่ค้นคว้าปัญหาที่แตกต่างออกไปเล็กน้อย แต่สิ่งนี้มีประโยชน์และฉันต้องการแบ่งปันสิ่งที่ฉันทำ

ปัญหาของฉันคือฉันใช้ WinSCP ด้วยรหัสผ่านที่บันทึกไว้ใน Windows XP ภายในโดเมน Active Directory ซึ่งเปลี่ยนไป ด้วยโดเมน Active Directory ใหม่โปรไฟล์ผู้ใช้ของฉันก็เปลี่ยนไปเช่นกันทำให้ WinSCP ไม่แสดงโปรไฟล์การเข้าสู่ระบบที่บันทึกไว้

ในการกู้คืนโปรไฟล์การเข้าสู่ระบบ WinSCP ก่อนหน้านี้ฉันได้ดำเนินการดังต่อไปนี้

เริ่มขึ้นregeditการประยุกต์ใช้และไม่ค้นหาสำหรับคีย์ใด ๆ Martin Prikrylที่มีชื่อของ หลังจากการแข่งขันที่ผิดหลายครั้งฉันพบกุญแจด้วยสิ่งที่ดูเหมือนว่าจะเป็นข้อมูลเซสชั่นที่ถูกต้อง

ฉันส่งออกคีย์รีจิสทรีของเซสชัน WinSCP โดยใช้ regeditคำสั่งส่งออกไปยังไฟล์ข้อความ

ต่อไปฉันแก้ไขข้อความที่ส่งออกในไฟล์ข้อความเพื่อที่จะใช้ HKEY_CURRENT_USERเป็นจุดเริ่มต้นของคีย์สมบูรณ์ด้านหน้าของคีย์ย่อยของซอฟต์แวร์

ถัดไปโดยใช้ regeditฉันนำเข้าข้อมูลเพื่อปรับเปลี่ยนคีย์รีจิสทรีของ Windows ที่ WinSCP ใช้สำหรับผู้ใช้ปัจจุบัน

การกระทำเหล่านี้ทำสิ่งต่อไปนี้: (1) พบข้อมูลเซสชันการเข้าสู่ระบบ WinSCP สำหรับโปรไฟล์ผู้ใช้เก่า (2) ทำสำเนาของข้อมูลนั้น (3) แก้ไขคีย์รีจิสทรีของ Windows เพื่ออนุญาตให้นำเข้าด้วย regeditเพื่อแก้ไขผู้ใช้ปัจจุบัน (4) นำเข้าข้อมูลที่แก้ไขรายการรีจิสทรี WinSCP สำหรับโปรไฟล์ผู้ใช้ปัจจุบัน

หลังจากทำตามขั้นตอนนี้ฉันสามารถเข้าถึงเว็บเซิร์ฟเวอร์ด้วย WinSCP

อาจมีเหตุผลสองประการที่ทำให้เรื่องนี้ตรงไปตรงมาและทำงานได้ ครั้งแรกของพีซีทั้งหมดนี้ถูกใช้โดยบุคคลเพียงคนเดียวดังนั้นจึงไม่ใช้ร่วมกันลดการจับคู่ที่ผิดพลาด ประการที่สองฉันมีสิทธิ์ผู้ดูแลระบบไปยังพีซี อันดับที่สามคือ Windows XP และไม่ใช่ Windows 7/8


1

การถามคำถามที่พบบ่อยของ WinSCP ฉันสามารถกู้คืนรหัสผ่านที่เก็บไว้ในเซสชัน WinSCP ได้หรือไม่ :

วิธีหนึ่งคือการกู้คืนรหัสผ่านของคุณคือการเปิดใช้งานการตั้งค่าการบันทึกรหัสผ่าน ดูบันทึกรหัสผ่านและตัวเลือกการตั้งค่าข้อมูลที่ละเอียดอ่อนอื่น ๆ จากนั้นตรวจสอบไฟล์บันทึกเซสชันเพื่อค้นหารหัสผ่านที่เก็บไว้

 . 2017-06-13 07:41:11.313 ---------------------------------------------------------------
 . 2017-06-13 07:41:11.313 WinSCP Version 5.9.5 (Build 7441) (OS 10.0.15063 - Windows 10)
 . 2017-06-13 07:41:11.313 Configuration: HKCU\Software\Martin Prikryl\WinSCP 2\
 . 2017-06-13 07:41:11.313 Log level: Normal, Logging passwords
 ...
 . 2017-06-13 07:41:11.313 ---------------------------------------------------------------
 . 2017-06-13 07:41:11.313 Session name: My server (Site)
 . 2017-06-13 07:41:11.313 Host name: example.com (Port: 22)
 . 2017-06-13 07:41:11.313 User name: martin (Password: mypassword, Key file: No)

นอกจากนี้คุณยังสามารถใช้ฟังก์ชั่นGenerate Session URL / Codeเพื่อดึงรหัสผ่านที่บันทึกไว้ โปรดทราบว่าสัญลักษณ์พิเศษในรหัสผ่านอาจถูกหลีกเลี่ยงได้ คุณมักจะเห็นรหัสผ่านไม่เป็นอันตรายในรหัสแอสเซมบลี. NETโดยที่จะใส่เครื่องหมายคำพูดคู่เท่านั้น (ในทุกภาษาที่รองรับ)

ป้อนคำอธิบายรูปภาพที่นี่


คำแนะนำจากคำถามที่พบบ่อยของ WinSCP เป็นวิธีแก้ปัญหาในกรณีของฉัน ฉันมีลูกค้าเปลี่ยน IP ของพวกเขาสำหรับเซิร์ฟเวอร์ FTP และใช้รหัสผ่านเดิมอีกครั้ง โซลูชันอื่น ๆ อีกมากมายที่โพสต์ไว้ที่นี่ต้องการให้คุณสร้างการเชื่อมต่อก่อนซึ่งเป็นไปไม่ได้ในกรณีของฉัน ฉันเปิดใช้งานการบันทึกข้อมูลที่ละเอียดอ่อนเป็นการชั่วคราวพยายามเชื่อมต่อกับ IP เก่าอนุญาตให้ล้มเหลวและรหัสผ่านที่ใช้ในความพยายามนั้นมีอยู่ในบันทึก
รูต

0

เพียงตั้งค่าระดับการบันทึกเป็นสูงสุดใน WinSCP และเชื่อมต่อในเซิร์ฟเวอร์ บันทึกประกอบด้วยรหัสผ่านธรรมดา

บันทึกการตั้งค่า


มันไม่ได้เป็นระดับการบันทึก แต่เกี่ยวกับ"รหัสผ่านเข้าสู่ระบบและข้อมูลที่สำคัญอื่น ๆ"
Martin Prikryl

ขอโทษ ใช่ต้องตรวจสอบตัวเลือก "รหัสผ่านบันทึก ... "
Eduardo GonçalvesCorrêa
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.