XML сыртқы нысаны XML сыртқы нысаны (XXE) шабуылы XML талдаушыларының кеңінен қол жетімді, бірақ сирек қолданылатын мүмкіндігін пайдаланатын шабуыл түрі болып табылады. XXE көмегімен шабуылдаушы Қызметтен бас тартуды (DoS) тудыруы және жергілікті және қашықтағы мазмұн мен қызметтерге қол жеткізуі мүмкін. XXE веб-бағдарламаны басқа қолданбаларға сұраулар жасауға мәжбүрлейтін серверлік сұрауды (SSRF) орындау үшін пайдаланылуы мүмкін. Кейбір жағдайларда XXE портты сканерлеуді және XXE көмегімен қашықтан кодты орындауды да орындай алады.
XML (Extensible Markup Language) - өте танымал деректер пішімі. Ол барлық веб-қызметтерде (XML-RPC, SOAP, REST) құжаттарға (XML, HTML, DOCX) және кескін файлдарына (SVG, EXIF деректері) дейін қолданылады. XML деректерін түсіндіру үшін қолданба XML процессоры ретінде белгілі XML талдаушысын қажет етеді. XML тек элементтерді, атрибуттарды және мәтінді жариялау үшін ғана пайдаланылуы мүмкін. XML құжаттары белгілі бір типте болуы мүмкін. Түр құжаттың өзінде тип анықтамасын жариялау арқылы көрсетіледі. XML талдаушысы құжатты өңдеуден бұрын XML құжатының көрсетілген түрге сәйкес келетінін тексереді. Түр анықтамаларының екі түрін пайдалануға болады: XML схема анықтамасы (XSD) немесе құжат түрінің анықтамасы (DTD). XXE осалдықтары соңғы нұсқада табылған. DTD ескірген деп саналғанымен, олар әлі де кеңінен қолданылады.
Шын мәнінде, XML нысандары кез келген жерден, соның ішінде сыртқы көздерден (сондықтан XML External Entity атауы) келуі мүмкін. Дегенмен, XXE серверлік сұрауды қолдан жасау (SSRF) шабуылының түріне айналуы мүмкін. Шабуылдаушы URI (XML тілінде жүйе идентификаторы ретінде белгілі) арқылы сұрау жасай алады. Егер XML талдаушысы сыртқы нысандарды өңдеу үшін конфигурацияланса және әдепкі бойынша көптеген танымал XML талдаушылары соны орындау үшін конфигурацияланса, веб-сервер жүйедегі ықтимал құпия деректерді қамтитын файлдың мазмұнын қайтарады.
РНР протоколының орауыштары XXE-ге осал веб-бағдарлама PHP қолданбасы болса, PHP протоколының арқасында басқа шабуыл векторларын пайдалануға болады. РНР протоколының орауыштары – РНР кіріс және шығыс ағындарына қол жеткізуді қамтамасыз ететін енгізу/шығару ағындары. Шабуылдаушы php://filterфайлдың мазмұнын кодтау үшін протокол қаптамасын пайдалана алады Base64. XML әрқашан жарамды деп есептелетіндіктен Base64, шабуылдаушы сервердегі файлдарды жай ғана кодтай алады, содан кейін оларды қабылдау жағында декодтай алады. Бұл әдіс қосымша шабуылдаушыға екілік файлдарды алуға мүмкіндік береді.