Score:0

Dovecot SQL password_query ยูเนี่ยน

ธง cn

ฉันมีตารางผู้ใช้และโดเมนแยกกัน เมื่อโดเมนถูกทำเครื่องหมายว่าไม่ได้ใช้งาน ฉันต้องการให้ผู้ใช้ทั้งหมดสำหรับโดเมนนั้นไม่ผ่านการตรวจสอบสิทธิ์

ข้อความค้นหานี้ใช้ได้ดี

รหัสผ่าน_query = \
         เลือก CONCAT("5500") AS gid, CONCAT("5500") AS uid, \
         CONCAT("/mail/dir/",'%d','/','%n') AS home,อีเมลในฐานะผู้ใช้, รหัสผ่านเป็นรหัสผ่าน \
         จาก users_table โดยที่ Email='%u' และ active=1;

ตอนนี้ฉันกำลังพยายามเพิ่มการตรวจสอบเพื่อดูว่าโดเมนถูกทำเครื่องหมายว่าใช้งานอยู่หรือไม่ การเพิ่ม เลือกชื่อโดเมนจาก domains_table UNION. (ซึ่งฉันจะขยายในภายหลัง) แต่เมื่อฉันเพิ่มสิ่งนี้ แบบสอบถามล้มเหลว ชื่อตารางและส่วนหัวถูกต้อง เหตุใดบรรทัดนี้จึงทำให้แบบสอบถามล้มเหลว

นอกจากนี้ ข้อความแสดงเงื่อนไขรองรับที่นี่หรือไม่ ฉันต้องการเพิ่ม IF (โดเมนใช้งานอยู่) แล้ว (ผ่านแบบสอบถาม)

รหัสผ่าน_query = \
         เลือกชื่อโดเมนจาก domains_table \
         UNION SELECT CONCAT("5500") AS gid, CONCAT("5500") AS uid, \
         CONCAT("/mail/dir/",'%d','/','%n') AS home,อีเมลในฐานะผู้ใช้, รหัสผ่านเป็นรหัสผ่าน \
         จาก users_table โดยที่ Email='%u' และ active=1;

ข้อความค้นหาแต่ละรายการดูเหมือนจะใช้งานได้ก็ต่อเมื่อส่งคืนตัวแปร gid, uid, home, user & password

ขอบคุณ

Score:0
ธง cn

แก้ไขปัญหาโดยทำดังต่อไปนี้

  1. เปิดใช้งาน auth-deny.conf.ext โดยยกเลิกการแสดงความคิดเห็นใน dovecot.conf

  2. เปลี่ยน auth-deny.conf.ext เพื่อใช้ไดรเวอร์ sql และเพิ่มไฟล์ใหม่เป็น arg

  3. ในไฟล์ใหม่เพิ่ม password_query อื่นด้วยรหัสต่อไปนี้ที่ส่งคืน ปฏิเสธ ตัวแปร

    รหัสผ่าน_query =
    SELECT ('%u') AS ปฏิเสธจาก domain_table โดยที่ DomainName ='%d' AND active=0 ;

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

โพสต์คำตอบ

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