अपने फेसबुक chatbot webhook सुरक्षित करने के लिए सबसे अच्छा तरीका क्या है?

वोट
1

मैं फेसबुक दूत मंच पर एक chatbot विकासशील के साथ चारों ओर खेल रहा हूँ। मैं फेसबुक दस्तावेज के माध्यम से चला गया और मेरी सुरक्षा करने की विधि नहीं पा सके webhookयादृच्छिक कॉल से।

उदाहरण के लिए, उपयोगकर्ताओं, मेरे बॉट के साथ सामान खरीद सकते हैं अगर एक हमलावर कि किसी के userId मेरी webhook को कॉल करके अनधिकृत आदेश देने शुरू कर सकते हैं जानता है।

मैं यह कैसे की रक्षा के लिए पर कई विचार है।

1) केवल फेसबुक से कॉल करने के लिए अपने एपीआई श्वेत सूची।
2) कुछ बनाएं CSRF तरह पोस्टबैक कॉल के साथ टोकन।

कोई विचार?

14/04/2016 को 10:48
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
6

देखते हैं - पहले से ही एक व्यवस्था है जिसके द्वारा आप देख सकते हैं कि अपने कॉलबैक URL से किए गए अनुरोधों वास्तविक हैं (सब कुछ सिर्फ अपने ओर से लापरवाही होगा) लागू किया फेसबुक निश्चित रूप से है https://developers.facebook.com/docs/graph-api / webhooks # receiveupdates :

HTTP अनुरोध एक में शामिल होंगे X-Hub-Signatureहैडर जो अनुरोध पेलोड के SHA1 हस्ताक्षर है, कुंजी के रूप में एप्लिकेशन गुप्त का उपयोग कर, और उपसर्ग के साथ sha1=। आपका कॉलबैक endpoint अखंडता और पेलोड के मूल मान्य करने के लिए इस हस्ताक्षर सत्यापित कर सकते हैं

कृपया ध्यान दें कि गणना पर किया जाता है बच गए यूनिकोड लोअर केस हेक्स अंक के साथ पेलोड के संस्करण,। तुम सिर्फ डीकोड बाइट्स के खिलाफ की गणना करते हैं, तो आप एक अलग हस्ताक्षर के साथ खत्म हो जाएगा। उदाहरण के लिए, स्ट्रिंग äöåभाग जाना चाहिए \u00e4\u00f6\u00e5

14/04/2016 को 11:35
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more