Skip to content
Snippets Groups Projects
Commit b5f6e649 authored by Maxime Gosselin's avatar Maxime Gosselin
Browse files

Gestion de l'injection XSS lors de l'envoie d'un message

parent 6cb4eb26
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,9 @@ import modele.dao.DaoLike;
import modele.dao.DaoMessage;
import modele.dto.Like;
import modele.dto.Message;
import org.apache.commons.text.StringEscapeUtils;
import org.apache.commons.text.translate.CharSequenceTranslator;
import java.io.IOException;
import java.time.LocalDateTime;
......@@ -17,6 +20,7 @@ import java.time.LocalDateTime;
public class MessageController extends HttpServlet {
DaoMessage daoMessage = new DaoMessage();
DaoLike daoLike = new DaoLike();
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String username;
......@@ -30,12 +34,13 @@ public class MessageController extends HttpServlet {
switch (action){
case "send":
String contenue = req.getParameter("message");
CharSequenceTranslator cst = StringEscapeUtils.ESCAPE_HTML4;
String contenu = cst.translate(req.getParameter("message"));
try {
int idThread = Integer.parseInt(req.getParameter("thread"));
if (contenue != null && !contenue.isEmpty()) {
Message message = new Message(0, username, idThread, contenue, LocalDateTime.now());
if (contenu != null && !contenu.isEmpty()) {
Message message = new Message(0, username, idThread, contenu, LocalDateTime.now());
daoMessage.create(message);
}
vue = "thread?action=open&id=" + idThread;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment