Navegador F12, Execução no console
ou
Sem arrependimentos para remédios, opere com cautela,O conteúdo do artigo contém um plano de correção
1. Após a execução, se um número inteiro maior que 0 for exibido, significa que a conta foi deletada com sucesso. 2. A conta no UCenter foi excluída, e o UCenter notificará o Discuz! Exclua a conta do usuário. 3. A notificação pode ser atrasada ou não ter sucesso. Como resultado, você pode não sair do site imediatamente. 4. Se a notificação finalmente for bem-sucedida, a conta e todas as suas postagens serão baixadas do Discuz! removido. 5. Se a notificação não for bem-sucedida, você não poderá fazer login após sair da sua conta. Você pode registrar uma nova conta com o mesmo nome para sobrescrever a conta original. As informações originais da conta serão excluídas e suas postagens não serão legíveis (mas não serão deletadas).
Transferido deO login do hiperlink está visível.
O teste pode ser excluído, e tanto o recém-criado Discuz X 3.4 quanto o fórum Discuz X 3.4, que roda online há muito tempo, foram eliminados com sucesso Durante o teste, alguns fóruns foram excluídos com sucesso e o prompt de login falhou, mas ao registrar novamente, o nome de usuário foi solicitado a existir, solicitando ativação, mas a ativação falhou
Análise de Vulnerabilidades:
Minha habilidade em js é limitada, pela minha intuição, o código geral significa que acessei o programa dz "/home.php?mod=spacecp&ac=avatar" para modificar o arquivo avatar,
Coloque "https://www.itsvse.com/uc_server/images/camera.swf?inajax=1&appid=1&input=xxx"O link foi substituído por"https://www.itsvse.com/uc_server/?m=user&a=delete&inajax=1&appid=1&input=xxx"Então a entrevista é realizada.
m=user&a=delete&inajax=1&appid=1&input=xxx análise de parâmetros
m: Qual arquivo php carregar? Aqui significa carregar o arquivo controle/user.php R: O método function é o método ondelete para executar o arquivo php entrada: A string criptografada gerada pelo servidor contém alguns parâmetros, a xxx é a string criptografada contendo "uid=UID de usuário logado atual". Deixando de lado os outros parâmetros, não faz sentido neste artigo, resumindo, a URL que o JS pode pular automaticamente executará o método user.php ondelete.
Para ser direto, a cadeia de criptografia de entrada para modificar o avatar e deletar a API do usuário é universal! Você pode executar qualquer um deles conforme os parâmetros anteriores!
Solução:
Modificar arquivo 1: "/source/plugin/mobile/api/2/uploadavatar.php"
Encontre a linha 82 e coloque o seguinte código:
Modificado para:
Modificar o arquivo 2: "/source/plugin/wechat/wechat.class.php"
Encontre a linha 549 e coloque o seguinte código:
Modificado para:
Documento de Emenda 3: "/uc_client/client.php"
Encontre a linha 591 e coloque o seguinte código:
Modificado para:
Modificar o arquivo 4: "/uc_server/control/user.php"
Achei210、310、353Ok, coloque o seguinte código:
Modificado para:
O princípio para corrigir a vulnerabilidade é mudar o uid do parâmetro na entrada para uid_avatar, de modo que modificar o avatar seja diferente de deletar a string criptografada do usuário!
(Fim)
|