คำถามติดแท็ก security

หัวข้อที่เกี่ยวข้องกับความปลอดภัยของแอปพลิเคชันและการโจมตีซอฟต์แวร์ โปรดอย่าใช้แท็กนี้เพียงอย่างเดียวซึ่งส่งผลให้เกิดความกำกวม หากคำถามของคุณไม่เกี่ยวกับปัญหาการเขียนโปรแกรมที่เฉพาะเจาะจงโปรดลองถามคำถามที่ Information Security SE: https://security.stackexchange.com แทน

4
วิธีเพิ่มกลุ่มผู้ใช้ Active Directory เมื่อเข้าสู่ระบบใน SQL Server
ฉันมีแอปพลิเคชัน. net ซึ่งเชื่อมต่อกับ SQL Server โดยใช้การตรวจสอบสิทธิ์ของ windows เราไม่สามารถใช้การรับรองความถูกต้องของ SQL Server ในแอปพลิเคชัน เรามีผู้ใช้ Active Directory จำนวนมากสำหรับโครงการของเรา ดังนั้นเราจึงต้องสร้างบัญชีล็อกอินแยกกันสำหรับผู้ใช้ Active Directory แต่ละรายใน SQL Server แทนที่จะสร้างบัญชีล็อกอินแยกต่างหากสำหรับผู้ใช้ AD แต่ละรายมีวิธีใดบ้างในการใช้กลุ่มผู้ใช้ Active Directory ใน SQL Server

20
ลบ Server Response Header IIS7
มีวิธีใดในการลบส่วนหัวการตอบกลับ "เซิร์ฟเวอร์" ออกจาก IIS7 หรือไม่ มีบางบทความที่แสดงให้เห็นว่าการใช้ HttpModules เราสามารถบรรลุสิ่งเดียวกันได้ สิ่งนี้จะเป็นประโยชน์หากเราไม่มีสิทธิ์ผู้ดูแลระบบในเซิร์ฟเวอร์ ฉันไม่ต้องการเขียนตัวกรอง ISAPI ฉันมีสิทธิ์ระดับผู้ดูแลระบบในเซิร์ฟเวอร์ของฉัน เลยไม่อยากทำของข้างบน ดังนั้นโปรดช่วยฉันทำเช่นเดียวกัน

12
การเอาชนะบอทโป๊กเกอร์
ล็อค คำถามนี้และคำตอบถูกล็อกเนื่องจากคำถามไม่ตรงประเด็น แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ยังไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ มีใหม่บอโป๊กเกอร์ที่มาเปิดที่เรียกว่าเป็นPokerPirate ฉันสนใจวิธีการสร้างสรรค์ใด ๆ ที่เว็บแอปพลิเคชันสามารถตรวจจับ / ขัดขวาง / เอาชนะบอทโป๊กเกอร์ได้ (นี่คือการอภิปรายทางวิชาการล้วนๆด้วยจิตวิญญาณเดียวกันกับที่ PokerPirate เขียนขึ้น)

2
จะทำการตรวจสอบสิทธิ์แบบไม่ระบุสถานะ (ไม่มีเซสชัน) และไม่ใช้คุกกี้ได้อย่างไร
Bob ใช้เว็บแอปพลิเคชันเพื่อบรรลุบางสิ่งบางอย่าง และ: เบราว์เซอร์ของเขาคือในอาหารจึงไม่สนับสนุนคุกกี้ เว็บแอปพลิเคชันเป็นที่นิยมซึ่งเกี่ยวข้องกับผู้ใช้จำนวนมากในช่วงเวลาหนึ่ง - ต้องปรับขนาดให้ดี ตราบใดที่การเก็บรักษาเซสชันจะจำกัด จำนวนการเชื่อมต่อพร้อมกันและแน่นอนว่าจะนำมาซึ่งการลงโทษด้านประสิทธิภาพที่ไม่สำคัญเราอาจต้องการให้มีระบบที่ไม่ใช้เซสชัน :) หมายเหตุสำคัญบางประการ: เรามีความปลอดภัยในการขนส่ง ( HTTPSและเพื่อนที่ดีที่สุด) หลังม่านที่ได้รับมอบหมายโปรแกรมประยุกต์บนเว็บจำนวนมากของการดำเนินงานเพื่อให้บริการภายนอกในปัจจุบันนามของผู้ใช้ (ระบบเหล่านั้นทำรู้จักบ๊อบเป็นหนึ่งของผู้ใช้) - ที่นี้หมายถึงว่าเราจะต้องส่งต่อให้ข้อมูลประจำตัวของบ๊อบ ตอนนี้เราจะตรวจสอบความถูกต้องของ Bob (ในแต่ละคำขอ) ได้อย่างไร? วิธีใดเป็นวิธีที่เหมาะสมในการนำสิ่งดังกล่าวไปปฏิบัติ การเล่นเทนนิสด้วยข้อมูลประจำตัวผ่านช่องที่ซ่อนอยู่ในรูปแบบ HTML ... ลูกบอลมีข้อมูลประจำตัว ( ชื่อผู้ใช้และรหัสผ่าน ) และไม้ทั้งสองคือเบราว์เซอร์และเว็บแอปพลิเคชันตามลำดับ กล่าวอีกนัยหนึ่งเราอาจขนส่งข้อมูลไปมาผ่านช่องแบบฟอร์มแทนที่จะใช้คุกกี้ ตามคำขอของเว็บแต่ละครั้งเบราว์เซอร์จะโพสต์ข้อมูลรับรอง แม้ว่าในกรณีของแอปพลิเคชันหน้าเดียวอาจดูเหมือนการเล่นสควอชกับกำแพงยางแทนที่จะเล่นเทนนิสเนื่องจากเว็บฟอร์มที่มีข้อมูลรับรองอาจคงอยู่ตลอดอายุการใช้งานของหน้าเว็บ (และเซิร์ฟเวอร์จะได้รับการกำหนดค่าไม่ให้เสนอข้อมูลรับรองกลับ) การจัดเก็บชื่อผู้ใช้และรหัสผ่านในบริบทของหน้า - ตัวแปร JavaScript เป็นต้นต้องมีหน้าเดียวที่นี่ IMHO การตรวจสอบความถูกต้องโดยใช้โทเค็นเข้ารหัส ในกรณีนี้การดำเนินการเข้าสู่ระบบจะส่งผลให้มีการสร้างโทเค็นความปลอดภัยที่เข้ารหัส (ชื่อผู้ใช้ + รหัสผ่าน + อย่างอื่น) โทเค็นนี้จะถูกส่งกลับไปยังไคลเอนต์และคำขอที่จะเกิดขึ้นจะมาพร้อมกับโทเค็น สิ่งนี้สมเหตุสมผลไหม …

7
AES เทียบกับ Blowfish สำหรับการเข้ารหัสไฟล์
ฉันต้องการเข้ารหัสไฟล์ไบนารี เป้าหมายของฉันคือเพื่อป้องกันไม่ให้ใครก็ตามอ่านไฟล์ที่ไม่มีรหัสผ่าน วิธีไหนดีกว่ากัน AES หรือปักเป้าที่มีความยาวคีย์เท่ากัน? เราสามารถสันนิษฐานได้ว่าผู้โจมตีมีทรัพยากรที่ยอดเยี่ยม (ซอฟต์แวร์ความรู้เงิน) สำหรับการแคร็กไฟล์

5
วิธีบันทึกชื่อผู้ใช้ / รหัสผ่านอย่างปลอดภัย (ในเครื่อง)?
ฉันกำลังสร้างแอปพลิเคชัน Windows ซึ่งคุณต้องเข้าสู่ระบบก่อน รายละเอียดบัญชีประกอบด้วยชื่อผู้ใช้และรหัสผ่านและจำเป็นต้องบันทึกไว้ในเครื่อง เป็นเพียงเรื่องของความปลอดภัยดังนั้นบุคคลอื่นที่ใช้คอมพิวเตอร์เครื่องเดียวกันจึงไม่สามารถเห็นข้อมูลส่วนตัวของทุกคน วิธีใดดีที่สุด / ปลอดภัยที่สุดในการบันทึกข้อมูลนี้ ฉันไม่ต้องการใช้ฐานข้อมูลดังนั้นฉันจึงลองทำบางอย่างกับไฟล์ทรัพยากร แต่เนื่องจากฉันยังใหม่กับสิ่งนี้ฉันจึงไม่แน่ใจว่ากำลังทำอะไรอยู่และควรหาทางแก้ไขที่ไหน
107 c#  security  local 

3
ฟังก์ชันแฮชใน Python 3.3 ส่งคืนผลลัพธ์ที่แตกต่างกันระหว่างเซสชัน
ฉันได้ติดตั้ง BloomFilter ใน python 3.3 แล้วและได้ผลลัพธ์ที่แตกต่างกันทุกเซสชัน การเจาะลึกพฤติกรรมแปลก ๆ นี้ทำให้ฉันไปที่ฟังก์ชัน hash () ภายในซึ่งจะส่งคืนค่าแฮชที่แตกต่างกันสำหรับสตริงเดียวกันทุกเซสชัน ตัวอย่าง: >>> hash("235") -310569535015251310 ----- การเปิดคอนโซลหลามใหม่ ----- >>> hash("235") -1900164331622581997 เหตุใดจึงเกิดขึ้น เหตุใดจึงมีประโยชน์

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

4
JWT ควรเก็บไว้ใน localStorage หรือคุกกี้? [ซ้ำ]
คำถามนี้มีคำตอบอยู่แล้วที่นี่ : ที่เก็บ JWT ในเบราว์เซอร์? จะป้องกัน CSRF ได้อย่างไร? (5 คำตอบ) ปิดให้บริการใน4 เดือนที่ผ่านมา สำหรับวัตถุประสงค์ของการรักษาความปลอดภัย REST API ที่ใช้ JWT ตามวัสดุบางอย่าง (เช่นนี้คู่มือและคำถาม ) ที่ JWT สามารถเก็บไว้ในทั้งlocalStorageหรือคุกกี้ ตามความเข้าใจของฉัน: localStorageอยู่ภายใต้ XSS และโดยทั่วไปไม่แนะนำให้เก็บข้อมูลที่ละเอียดอ่อนใด ๆ ไว้ในนั้น ด้วยคุกกี้เราสามารถใช้แฟล็ก "httpOnly" ซึ่งช่วยลดความเสี่ยงของ XSS ได้ อย่างไรก็ตามหากเราต้องการอ่าน JWT จากคุกกี้ในแบ็กเอนด์เราจะต้องอยู่ภายใต้ CSRF ตามหลักฐานข้างต้น - จะเป็นการดีที่สุดหากเราเก็บ JWT ไว้ในคุกกี้ ในทุกการร้องขอไปยังเซิร์ฟเวอร์ JWT จะถูกอ่านจากคุกกี้และเพิ่มในส่วนหัวการอนุญาตโดยใช้โครงร่างของผู้ถือ จากนั้นเซิร์ฟเวอร์สามารถตรวจสอบ JWT ในส่วนหัวของคำขอได้ (ตรงข้ามกับการอ่านจากคุกกี้) …

2
การใช้งาน Google Authenticator ใน Python
ฉันพยายามที่จะใช้รหัสผ่านครั้งเดียวที่สามารถสร้างขึ้นโดยใช้แอพลิเคชัน Google Authenticator สิ่งที่ Google Authenticator ทำ โดยทั่วไป Google Authenticator จะใช้รหัสผ่านสองประเภท: HOTP - รหัสผ่านครั้งเดียวที่ใช้ HMAC ซึ่งหมายความว่ารหัสผ่านจะเปลี่ยนไปในแต่ละครั้งที่โทรตามRFC4226และ TOTP - รหัสผ่านแบบใช้ครั้งเดียวตามเวลาซึ่งจะเปลี่ยนทุกๆ 30 วินาที (เท่าที่ฉันรู้) Google Authenticator มีให้บริการในรูปแบบโอเพ่นซอร์สที่นี่: code.google.com/p/google-authenticator รหัสปัจจุบัน ฉันกำลังมองหาโซลูชันที่มีอยู่เพื่อสร้างรหัสผ่าน HOTP และ TOTP แต่ก็ไม่พบอะไรมาก รหัสที่ฉันมีคือตัวอย่างต่อไปนี้ที่รับผิดชอบในการสร้าง HOTP: import hmac, base64, struct, hashlib, time def get_token(secret, digest_mode=hashlib.sha1, intervals_no=None): if intervals_no == None: intervals_no = …

2
การป้องกัน CSRF ด้วยส่วนหัว CORS Origin เทียบกับโทเค็น CSRF
คำถามนี้เกี่ยวกับการป้องกันการโจมตีด้วยการปลอมแปลงคำขอข้ามไซต์เท่านั้น โดยเฉพาะเกี่ยวกับ: การป้องกันผ่านส่วนหัว Origin (CORS) ดีเท่ากับการป้องกันผ่านโทเค็น CSRF หรือไม่? ตัวอย่าง: อลิซเข้าสู่ระบบ (โดยใช้คุกกี้) ด้วยเบราว์เซอร์ของเธอไปที่ " https://example.com " ฉันคิดว่าเธอใช้เบราว์เซอร์ที่ทันสมัย อลิซไปที่ " https://evil.com " และโค้ดฝั่งไคลเอ็นต์ของ evil.com ดำเนินการขอ " https://example.com " (สถานการณ์ CSRF แบบคลาสสิก) ดังนั้น: หากเราไม่ตรวจสอบส่วนหัว Origin (ฝั่งเซิร์ฟเวอร์) และไม่มีโทเค็น CSRF เรามีช่องโหว่ด้านความปลอดภัย CSRF หากเราตรวจสอบโทเค็น CSRF แสดงว่าเราปลอดภัย (แต่น่าเบื่อเล็กน้อย) หากเราตรวจสอบส่วนหัว Origin คำขอจากโค้ดฝั่งไคลเอ็นต์ของ evil.com ควรถูกบล็อกเช่นเดียวกับที่ทำเมื่อใช้โทเค็น CSRF - ยกเว้นหากเป็นไปได้ที่โค้ดของ evil.com …

11
เหตุใด printf ที่มีอาร์กิวเมนต์เดียว (ไม่มีตัวระบุการแปลง) จึงเลิกใช้งาน
ในหนังสือที่ฉันกำลังอ่านมีเขียนว่าprintfด้วยอาร์กิวเมนต์เดียว (โดยไม่มีตัวระบุการแปลง) จะเลิกใช้งานแล้ว ขอแนะนำให้เปลี่ยน printf("Hello World!"); ด้วย puts("Hello World!"); หรือ printf("%s", "Hello World!"); ใครช่วยบอกทีว่าทำไมถึงprintf("Hello World!");ผิด? มีเขียนไว้ในหนังสือว่ามีช่องโหว่ ช่องโหว่เหล่านี้คืออะไร?

2
คีย์ API เทียบกับการตรวจสอบสิทธิ์ HTTP เทียบกับ OAuth ใน RESTful API
ฉันกำลังสร้าง RESTful API สำหรับหนึ่งในแอปพลิเคชันที่ฉันดูแลอยู่ ขณะนี้เรากำลังมองหาสิ่งต่างๆที่ต้องการการเข้าถึงและความปลอดภัยที่มีการควบคุมมากขึ้น ในขณะที่ศึกษาวิธีการรักษาความปลอดภัย API ฉันพบความคิดเห็นที่แตกต่างกันเล็กน้อยเกี่ยวกับรูปแบบที่จะใช้ ฉันเคยเห็นแหล่งข้อมูลบางแห่งบอกว่า HTTP-Auth เป็นวิธีที่จะไปในขณะที่คนอื่น ๆ ชอบคีย์ API และแม้แต่คนอื่น ๆ (รวมถึงคำถามที่ฉันพบที่นี่ใน SO) สาบานด้วย OAuth จากนั้นคนที่ชอบพูดว่าคีย์ API บอกว่า OAuth ออกแบบมาสำหรับแอปพลิเคชันที่เข้าถึงในนามของผู้ใช้ (ตามที่ฉันเข้าใจเช่นการลงชื่อเข้าใช้ไซต์ที่ไม่ใช่ Facebook โดยใช้บัญชี Facebook ของคุณ) และไม่ใช่สำหรับผู้ใช้ที่เข้าถึงทรัพยากรโดยตรงบนไซต์ที่พวกเขาสมัครไว้โดยเฉพาะ (เช่นไคลเอนต์ Twitter อย่างเป็นทางการที่เข้าถึงเซิร์ฟเวอร์ Twitter) อย่างไรก็ตามคำแนะนำสำหรับ OAuth ดูเหมือนจะเป็นความต้องการขั้นพื้นฐานที่สุดในการตรวจสอบสิทธิ์ คำถามของฉันคือ - สมมติว่ามันทำผ่าน HTTPS ทั้งหมดแล้วความแตกต่างในทางปฏิบัติระหว่างทั้งสามมีอะไรบ้าง? เมื่อใดที่ควรพิจารณาคนอื่น ๆ

2
เหตุใดช่วงเวลามาตรฐานจึงมีอายุ 24 นาที (1440 วินาที)
ฉันได้ทำการค้นคว้าเกี่ยวกับ PHP Session Handling และพบว่ามีsession.gc_maxlifetimeค่าอยู่ที่ 1440 วินาที ฉันสงสัยว่าทำไมค่ามาตรฐานคือ 1440 และคำนวณอย่างไร? อะไรคือพื้นฐานสำหรับการคำนวณนี้? ควรเก็บเซสชันไว้นานแค่ไหน? ค่าต่ำสุด / สูงสุดสำหรับ session.gc_maxlifetime ใดที่คุณจะแนะนำ ยิ่งค่าสูงเท่าไหร่ Web-App ก็ยิ่งเสี่ยงต่อการลักลอบเซสชันมากขึ้นเท่านั้น
101 php  security  session 

1
แนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับการสร้างโทเค็น OAuth?
ฉันตระหนักดีว่าข้อมูลจำเพาะ OAuthไม่ได้ระบุอะไรเกี่ยวกับที่มาของ ConsumerKey, ConsumerSecret, AccessToken, RequestToken, TokenSecret หรือรหัสผู้ตรวจสอบ แต่ฉันสงสัยว่ามีแนวทางปฏิบัติที่ดีที่สุดในการสร้างโทเค็นที่ปลอดภัยอย่างมีนัยสำคัญหรือไม่ (โดยเฉพาะโทเค็น / การรวมความลับ) อย่างที่ฉันเห็นมีหลายวิธีในการสร้างโทเค็น: เพียงใช้ไบต์สุ่มเก็บในฐานข้อมูลที่เกี่ยวข้องกับผู้บริโภค / ผู้ใช้ แฮชข้อมูลเฉพาะของผู้ใช้ / ผู้บริโภคจัดเก็บในฐานข้อมูลที่เกี่ยวข้องกับผู้บริโภค / ผู้ใช้ เข้ารหัสข้อมูลเฉพาะผู้ใช้ / ผู้บริโภค ข้อดีของ (1) คือฐานข้อมูลเป็นแหล่งข้อมูลเดียวที่ดูเหมือนปลอดภัยที่สุด มันจะยากกว่าที่จะโจมตีมากกว่า (2) หรือ (3) การแฮ็กข้อมูลจริง (2) จะช่วยให้สามารถสร้างโทเค็นขึ้นมาใหม่จากข้อมูลที่น่าจะเป็นที่รู้จักอยู่แล้ว อาจไม่ได้ให้ประโยชน์ใด ๆ กับ (1) เนื่องจากจะต้องจัดเก็บ / ค้นหาอยู่ดี CPU เข้มข้นมากกว่า (1) การเข้ารหัสข้อมูลจริง (3) จะช่วยให้การถอดรหัสทราบข้อมูล สิ่งนี้จะต้องใช้พื้นที่จัดเก็บน้อยกว่าและอาจมีการค้นหาน้อยกว่า (1) & …

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