본문 바로가기

IT/Java

Aes256 암호화 오류 Cannot set up certs for trusted CAs 암호화 알고리즘에는 단방향 암호화와 양방향 암호화가 있다. 1. 단방향 암호화- 암호화를 시키면 복호화 할 수 없음- 복원 방법이 없으므로 주로 패스워드로 사용함- SHA1, SHA244, SHA256, SHA512 등이 있음 2. 양방향 암호화- 데이터 통신에 주로 사용- 중요한 정보들을 보안조치 하기 위해 암호화 하여 보냄- DES(3중 암호화), AES128, AES192, AES256 등이 있음 Aes256로 암호화, 복호화 하는 방법을 알아보자. 암호화1234567891011121314151617public static String AES_Encode(String str, int vendorType) throws NoSuchPaddingException, NoSuchAlgorithmExcepti.. 더보기
CSRF 조치 방안_ RSA 개인키를 이용한 로그인 본문 매개변수가 조회에서 허용됨위험: 사용자 이름, 비밀번호, 머신 이름 및/또는 민감한 파일 위치 등과 같이 웹 애플리케이션에 대한 민감한 정보를 모으는 것이 가능합니다. 속기 쉬운 사용자를 설득해서 사용자 이름, 비밀번호, 신용카드 번호, 주민등록 번호와 같은 민감한 정보를 제공하도록 하는 것이 가능합니다.수정사항: 조회 문자열로 전송되는 본문 매개변수를 허용하지 마십시오.이유: 오른쪽에 있는 테스트 응답이 왼쪽의 원래 응답과 동일하며, 가상의 '방문경로' 헤더가 포함되어 있더라도 이는 CSRF(Cross-Site Request Forgery) 시도가 성공했음을 나타내므로 테스트 결과에서 취약성이 확인됩니다. 참고: http://egloos.zum.com/kwon37xi/v/4427199 더보기
What's log4j? (log4j.xml example included) What is Log4j? Log4j is a Java library that specializes in logging. At its most basic level, you can think of it as a replacement for System.out.println's in your code. Why is it better than System.out.println's? The reasons are numerous. To begin with, System.out.println outputs to standard output, which typically is a console window. The output from Log4j can go to the console, but it can also.. 더보기
[JAVA] 파일 업로드 취약점 대응 방법 파일 업로드 취약점 대응 방법입니다. String file = StringHelper.null2void(map.get("EXCEL_FILE_NAME")); file = file.substring(file.lastIndexOf(".")+1,file.length()); String[] extList = new String[]{"EXE","COM","CMD","BAT","ASPX","ASA","ASAX","ASCX","ASHX", "ASMX","AXD","CDX","IDC","CER","ASP","CDX","HTR","CGI","JSP","PHP","PHP3","HTML","HTM","WAR"}; for(int j=0; j < extList.length; j++){ if(file.toUpperCase().eq.. 더보기
XSS 조치 방법(Remove the script) public static String getRemoveScript(String strContent) {Pattern patternTag = Pattern.compile("\\");Pattern patternScript = Pattern.compile("(?i)\\");Pattern patternMouseOver = Pattern.compile("(?i) onmouseover=[\"']?([^>\"']+)[\"']*");Pattern patternMouseOut = Pattern.compile("(?i) onmouseout=[\"']?([^>\"']+)[\"']*");Pattern patternMouseClick = Pattern.compile("(?i) onclick=[\"']?([^>\"']+)[\"'.. 더보기
cannot create a server using the selected type tomcat 7 에러 잡기 기존에 있던 톰캣7을 지우고 다시 새로 만들려고 하니 cannot create a server using the selected type tomcat 7 와 같은 에러가 떴다.Settings파일가서 두 개 파일 지우는 것 말고도 해줄게 있었다.우선 저 에러가 떴을 때 대중적인 해결책은(1) 이클립스가 저장된 폴더에 가서 C:\app\eclipse_fta\.metadata\.plugins\org.eclipse.core.runtime\.settings 여기에 들어가서 두 개의 파일을 삭제해주고 이클립스를 다시 restart 한다.- org.eclipse.wst.server.core.prefs- org.eclipse.jst.server.tomcat.core.prefs 그리고 위의 두 개 파일이 없다면 아래의 .. 더보기
java.lang.OutOfMemoryError 에러 잡기, 메모리 늘리기 총 2가지 작업을 할 수 있는데..(1) eclipse.ini 파일에서 아래 색칠된 부분 값 변경하기. 2의 배수로만 지정할 수 있음 -startupC:\app\eclipse_fta\plugins\org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar--launcher.libraryC:\app\eclipse_fta\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20140116-2212-productorg.eclipse.epp.package.jee.product--launcher.defaultActionopenFile--launcher.XXMaxPermSize256M-showsplashorg.eclip.. 더보기
The Eclipse executable launcher was unable to locate its companion shared library 에러 잡기 "The Eclipse executable launcher was unable to locate its companion shared library. "에러 발생시 eclipse.ini 파일에서 startup, launcher.library 경로를 정확히 지정해주자.plugins 파일에가서 org.eclipse.equinox.launcher 로 시작하는 jar파일은 startup 경로로org.eclipse.equinox.launcher 로 시작하는 폴더는 launcher.library 경로로 지정해주기 수정 전-startupplugins/org.eclipse.equinox.launcher_1.2.0.dist.jar--launcher.libraryplugins/org.eclipse.equinox.launc.. 더보기
interceptor(인터셉터) session initerceptor 란 무엇인가?- 주로 컨트롤러 이벤트 호출 전에 가로채서 어떠한 처리를 해주기 위해 사용되는 기능 - 만약 인터셉터를 사용하지 않고 로그인 체크를 진행한다면 로그인이 필수인 컨트롤러를 작성할 때 마다 로그인 체크 로직을 태워야 한다. ex) 세션 체크와 관련하여..- 세션 체크가 필요한 페이지이면 화면에서 interceptor를 콜하고 true 값이 떨어지면 controller를 호출한다.- 세션 체크가 필요 없는 페이지면 바로 controller 호출- 세션체크가 필요한 페이지는 XML 설정에 의해 정의해 줌 예전에는 스크립트로 로그인 체크를 하거나 각 페이지마다 if문을 주어 로그인 유무를 판단했다. 하지만 지금은 xml 설정과 class 파일 하나 추가로 해결 가능 ◆ 인터셉.. 더보기
There is no statement named in this SqlMap There is no statement named in this SqlMap의 오류는 간단하지만 자주 하는 실수이다. 해당 에러를 수정하기 위해 아래와 같은 세가지를 확인해보자. 1. 쿼리문이 저장되어있는 XML의 ID 확인 2. 쿼리 호출 ID 확인 3. xml파일 등록 여부 확인 1) 쿼리문을 등록하는 xml 파일에 내 쿼리문이 등록되어있는지 확인 2) 통상적으로 쿼리 등록 xml 파일 이름은 sql-map-config.xml 로 쓰임 // 여기에 추가시켜줌 더보기