การค้นหาเงามัวของปัญหาความพึงพอใจของข้อ จำกัด


12

คำถามต่อไปนี้เกิดขึ้นหลายครั้งเมื่อทำการทดสอบความปลอดภัยของระบบหรือรุ่น

แรงจูงใจ:ข้อบกพร่องด้านความปลอดภัยของซอฟต์แวร์มักไม่ได้มาจากข้อบกพร่องเนื่องจากอินพุตที่ถูกต้อง แต่ข้อบกพร่องที่เกิดจากอินพุตที่ไม่ถูกต้องซึ่งอยู่ใกล้กับอินพุตที่ถูกต้องเพียงพอที่จะผ่านการตรวจสอบความตรงไปตรงมาหลายครั้ง ตัวอย่างแบบคลาสสิกเป็นของบัฟเฟอร์ของโอเวอร์โฟลแน่นอนซึ่งอินพุตมีความเหมาะสมยกเว้นว่ามีขนาดใหญ่เกินไป คอมไพเลอร์และเครื่องมืออื่น ๆ สามารถช่วยแก้ไขปัญหาเหล่านี้ได้ด้วยการแก้ไขเลย์เอาต์ของสแต็กและฮีปและเทคนิคการทำให้งงอื่น ๆ อีกทางเลือกหนึ่งคือการลบปัญหาออกจากซอร์สโค้ดเอง เทคนิคหนึ่งที่เรียกว่าfuzzing bombards โปรแกรมที่มีอินพุตใกล้กับอินพุตที่คาดไว้ แต่ในบางสถานที่ไม่มีเหตุผล (ค่าขนาดใหญ่สำหรับฟิลด์จำนวนเต็มหรือสตริง) ฉันต้องการทำความเข้าใจกับ fuzzing (เป็นตัวอย่าง) จากมุมมองที่เป็นทางการมากกว่า

สมมติว่าพื้นที่ของปัจจัยการผลิตที่ถูกต้องมีการอธิบายโดย จำกัดΦΦให้Mเป็นชุดของข้อ จำกัด ดังกล่าวคือ M={mM | mΦ}ที่Mเป็นพื้นที่ของปัจจัยการผลิตที่เป็นไปได้

ฉันกำลังมองหางานที่อธิบายแนวคิดดังต่อไปนี้:

  • MMMmM mΦ MM

  • วิธีการผ่อนคลายข้อ จำกัดจะดังกล่าวว่าตอนแรกและคือในความรู้สึกที่เงามัวของประโยค\ΦΦΦΦΦ¬ΦΦ

"Penumbra" เป็นคำที่ฉันเลือกเพื่ออธิบายแนวคิด มันอาจเรียกได้ว่าเป็นอย่างอื่น

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

ทุกคนสามารถหลั่งน้ำตาได้หรือไม่?


ปัญหาคือโดยตัวของมันเองที่น่าสนใจจริง ๆ แต่ส่วนใหญ่แล้วความสนใจในการไม่สร้างเงามัว (ฉันไม่ทราบชื่อ "ทางการ" มากกว่า) แต่ในเทคนิคที่ทำให้งงงวยที่หลีกเลี่ยงการดัดแปลงซอฟต์แวร์ (เช่นการโจมตีผ่านการดัดแปลง ของอินพุต) เทคนิคนี้ซ่อนส่วนสำคัญของพฤติกรรมของโปรแกรมโดยทำให้เกิดปัญหากับสิ่งอื่น ตัวอย่างเช่นคุณสามารถสร้างโปรแกรมโดยการแทรกต้นฉบับร่วมกับโปรแกรมที่ hardcode การแก้ปัญหาของปัญหายาก NP ในอินสแตนซ์ที่เฉพาะเจาะจง
Sylvain Peyronnet

นั่นเป็นเรื่องจริง ฉันยิ่งทำให้วิธีการที่เรียกว่าคลุมเครือ
Dave Clarke

โดยวิธีการที่ CSP = ปัญหาความพึงพอใจข้อ จำกัด
MS Dousti

คำตอบ:


6

ความสนใจจำนวนมากที่จ่ายให้กับตัวแปรการทำให้เกิดประโยชน์สูงสุดของปัญหาความพึงพอใจในข้อ จำกัด (CSP) ได้มุ่งเน้นไปที่การสร้างความพึงพอใจให้กับข้อ จำกัด จำนวนหนึ่ง (MAX-CSP) หรือในกรณีบูลีนในการเลือกโซลูชันที่กำหนดตัวแปรให้มากที่สุด MAX-ONES นอกจากนี้ยังมี MIN-ONES)

คุณกำลังถามถึงตัวแปรที่อาจเรียกว่า MAXIMUM PARTIAL CSP แทน นี่เป็นการศึกษาอย่างน้อยย้อนหลังไปถึงช่วงปลายทศวรรษ 1960 แต่ฉันไม่ทราบว่ามันมีชื่อที่ยอมรับได้ มันเป็นปัญหาที่เกิดขึ้นตามธรรมชาติและมันก็เป็นการดีที่ได้เห็นงานตรวจสอบมากขึ้น ขอบคุณที่ให้แอปพลิเคชั่นอื่นที่มีศักยภาพสำหรับปัญหานี้!

  • Ambler, AP และ Barrow, HG และ Brown, CM และ Burstall, RM และ Popplestone, RJ, ระบบอเนกประสงค์สำหรับชุดประกอบที่ควบคุมด้วยคอมพิวเตอร์ , ปัญญาประดิษฐ์6 129–156, 1975 ดอย: 10.1016 / 0004-3702 (75) 90006- 5

ชุดของการกำหนดตัวแปรค่าที่เรียกว่าได้รับมอบหมายบางส่วน หนึ่งสามารถเขียนการกำหนดค่าตัวแปรเป็น tuple (ตัวแปรค่า) การกำหนดบางส่วนนั้นทำหน้าที่ง่ายๆจากตัวแปรถึงค่า อุปกรณ์ประกอบฉากเป็นการมอบหมายบางส่วนที่ไม่ละเมิดข้อ จำกัด ใด ๆ เท่ากับเสาไม่มีการกำหนดบางส่วนที่ถูกห้ามโดยข้อ จำกัด บางอย่าง (เป็นชุดย่อย)

วิธีหนึ่งในการแสดงปัญหาการปรับให้เหมาะสมมีดังนี้

MAXIMUM PARTIAL CSP:
อินพุต:อินสแตนซ์ CSP
เอาต์พุต: propเกณฑ์:ขยายf
|f|

ในอินสแตนซ์ที่มีตัวแปรจะเห็นได้ชัดว่า prop ของ cardinalityจะเป็นทางออก อาจมีอุปกรณ์ประกอบฉากขนาดใหญ่ที่มี cardinality มากถึงซึ่งไม่มีอยู่ในโซลูชันใด ๆnnn1

ในคำศัพท์ที่คุณเสนอชุดอุปกรณ์ประกอบฉากที่มี cardinality สูงสุดทำให้เกิดเงามัวบางทีอาจจะมีระยะทางเพิ่มอีก (ดังนั้น cardinality อย่างน้อย )kdkd

ส่วนที่สองของคำถามของคุณก็น่าสนใจเช่นกัน แต่ฉันไม่ทราบว่ามีงานใดเกี่ยวข้องกับมัน


เชิงอรรถ: คำว่าเสามาจากวิทยานิพนธ์ของฉัน มันหมายถึงการถ่ายทอดความคิดที่ว่าการมอบหมายบางส่วนนั้นเหมาะสมและสนับสนุนการแก้ปัญหา ตรงกันข้ามกับnogoodซึ่งเป็นคำที่ยอมรับเพื่ออธิบายการมอบหมายบางส่วนที่ไม่สามารถขยายไปยังโซลูชันได้ คำว่า "nogood" ได้รับการแนะนำโดย Richard Stallman และ Gerald Sussman ในปี 1976 เมื่อ RMS ยังคงเป็นนักวิจัย AI แทนที่จะเป็นนักกิจกรรมอิสระด้านซอฟต์แวร์

  • Stallman, Richard M. and Sussman, Gerald Jay, Backwarding การใช้เหตุผลเชิงเส้นตรงและการพึ่งพิง Backtracking ในระบบสำหรับการวิเคราะห์วงจรโดยใช้คอมพิวเตอร์ช่วย , MIT ห้องปฏิบัติการปัญญาประดิษฐ์ประดิษฐ์หมายเลข 380, 1976 ( PDF )
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.