기상 08;10
공부
- CS 스터디 공부
- Spring 팀과제 답변 생각해보기
CS 스터디 09:10
실전 프로젝트 팀 빌딩 발제 10:00
공부할 내용
- CS 스터디 발표 준비 (책 읽고 정리)
- Process & Thread 발표 준비
- 주차별 keyword 정리
자바의 정석 유튜브 찾아보기!
어제 항해톡을 준비하다가 밤을 새서 늦은 회고록을 쓴다. 어제는 만들어 놓은 블로그 페이지에 삭제기능을 추가하였다.
해당하는 id 값을 가져와서 그에 맞는 DB만 지울 수 있도록 코드를 짰다. 그리고 서버에 올린 뒤 시차를 변경하는 작업도 하고 XSS 개념도 공부했다.
먼저 시차 생긴 원인은 이렇다. 우리가 로컬에서 게시글을 쓸 때에는 LocalDateTime 함수를 사용해서 현재 내 컴퓨터의 시간이 잘 나오는 것을 볼 수 있었는데, 서버에 올리고 나서는 그리니치 시간대에 맞춰져서 9시간 이전에 쓴 글로 출력이 되는 문제가 있었다.
시차 변경을 위해 AWS 에서 MySQL의 시간을 변경해주고, DB Console 창에서 몇 가지 명령어를 입력해 시간이 잘 뜨는 것을 확인해줬다. 그런 다음 서버에 올리고 새 컴퓨터 환경에서도 시간을 NTC 가 아닌 KST로 바꿔주었더니 해결되었다.
크로스 사이트 스크립팅(Cross Site Scripting, XSS)은 공격자가 상대방의 브라우저에 스크립트가 실행되도록 해 사용자의 세션을 가로채거나, 웹사이트를 변조하거나, 악의적 콘텐츠를 삽입하거나, 피싱 공격을 진행하는 것을 말한다.
XSS 공격이 궁금해서 직접 적용해보았다.
만든 블로그 페이지에 스크립트 형식의 코드를 입력해 저장하면 그에 맞는 alert이나 페이지가 이동되는 현상을 확인했다. 그래서 XSS의 필요성을 느꼈고, 보안을 위해 중요한 역할이라는 것도 알게 되었다. XSS 공격을 막는 방법을 구글링을 해보았는데, 우리가 사용하는 Gradle 형식보다 Maven 형식의 방법이 더 많아서 쉽지 않았다.
그러다 다른 조원 분께서 찾으신 블로그를 공유해주셔서 그대로 따라해보니 더이상 XSS 공격을 받지 않게 됐다. 다만 < >의 꺽쇠 모양이 이상하게 바뀌어 나오는 것을 확인했다. 그래서 다시 그 현상을 수정하는 작업을 해야겠다는 생각을 했다.
시간이 된다면 수정기능도 도전해보고 CSRF도 어떤 개념인지 더 찾아보면 좋을 것 같다.
'스파르타코딩클럽 > 항해99' 카테고리의 다른 글
항해99 6기 DAY 18 TIL _ 22.03.24 (0) | 2022.03.25 |
---|---|
항해99 6기 DAY 17 TIL _ 22.03.23 (0) | 2022.03.24 |
항해99 6기 DAY 15 TIL _ 22.03.21 (0) | 2022.03.22 |
항해99 6기 DAY 14 TIL _ 22.03.20 (0) | 2022.03.21 |
항해99 6기 WIL_2주차 회고록 (0) | 2022.03.20 |