https://howsecureismypassword.net/

 

Posted by 삽지리
,

var a = 0.6+0.3;
 alert(a);

 

0.8999999999 가 뜬다..

 

다른 예제

var a = (0.6+0.3)*10; //9

 

var a = (0.6+0.3)*100; //89.99999999998

 

var a = (0.06+0.03)*100; //9

 

 

var a = (0.06+0.03)*100; //9

 

var a = (0.03+0.06)*10; //0.8999999999

 

 

흠.. 심오하군..


 

Posted by 삽지리
,

 

 

 

프로그래밍을 하다보면 느끼는 것중에..

 

한사람의 유능한 사람이 많은 일을 할 수 있는 것은 확실하지만..

회사에서 그 사람이 나감으로써 많은 업무 공백이 생기는 것을 봐왔다.

회사의 입장에서는 같은 일을 쉐어링하는 여러명을 두는 것이 좋다고 생각한다.

혹은 시스템 자체를 초인적인 한사람에 의존 할 수 밖에 없는 복잡한 구조에서 누구나 할 수 있도록 시스템을 만드는 것이 중요하다고 생각한다.

메뉴얼을 만드는 작업이 그중 일부라고 할 수 있겠다.

 

Posted by 삽지리
,

 

참조 : http://laughfool.tistory.com/50

 

------------------------------ 내용 ----------

XST 라는 공격에 대해 알아보겠습니다.

사실 모의해킹 시에 많이 사용하지는 않는 기법이지만, 그래도 알아봅시다 ㅋㅋ


1. XST 공격이란?

 XST 공격이란 기본적으로 HTTP 메소드 중 하나인 TRACE메소드를 이용한 XSS기법 중 하나입니다.

서버에서 TRACE 메소드를 지원하고 있을 때, 클라이언트가 서버로 TRACE 요청을 보내면 서버는 요청받은 메시지를 그대로 반환하여 응답합니다. 이때 TRACE요청에 의해 반환되는 응답에는 사용자의 쿠키정보 등과 같은 중요정보도 포함되게 되는데 이걸 가로채는 공격입니다.

TRACE 메소드를 이용한 요청을 보내기 위해서는 XMLHTTP 나 XMLDOM을 주로 이용하게 됩니다.


2. XST 공격은 어떨때 쓰나요?

 그냥 XSS로 공격하면 되지 왜 굳이 불편하게 XST공격을 사용할까요?

XSS공격을 통해 쿠키를 탈취하게 되면 HttpOnly와 같은 기능을 이용하여 쿠키탈취에 대해 방어를 할 수 있지만, TRACE 명령을 이용한 XST에서는 HttpOnly기능을 우회하여 쿠키탈취가 가능하기 때문입니다.


3. 그럼 XST 공격은 어떻게 하나요?

<script type="text/javascript">
if ( navigator.appName.indexOf("Microsoft")!=-1)
{
  var xmlHttp = newActiveXObject("Microsoft.XMLHTTP");
  xmlHttp.open("TRACE", "./", false);
  xmlHttp.send();
  str1=xmlHttp.responseText;
  alert(str1);
}
</script>


4. 방어는 어떻게 하나요?

[Apache]
 Apache의 경우 httpd.conf 에서 아래와 같이 HTTP 메소드를 제한할 수 있습니다.

 <Directory />
 <LimitExcept GET POST>
  Order allow,deny
  deny from all
 </LimitExcept>
 </Directory>


[IIS]
 IIS의 경우 WebDAV를 중지하거나 URL Scan과 같은 툴을 사용하여 HTTP메소드 제한할 수 있습니다.
(http://technet.microsoft.com/en-US/security/cc242650.aspx#e)


[Tomcat]
WEB-INF\web.xml 에 아래와 같이 설정

<security-constraint>
   <web-resource-collection>
   <web-resource-name>Forbidden</web-resource-name>
       <url-pattern>/*</url-pattern>
       <http-method>HEAD</http-method>
       <http-method>PUT</http-method>
       <http-method>DELETE</http-method>
       <http-method>TRACE</http-method>
   </web-resource-collection>

   <auth-constraint>
       <role-name></role-name>
   </auth-constraint>
</security-constraint>



 

Posted by 삽지리
,

전자정부프레임웍에서 get으로 변수에 '테' 라는 문자를 넘기면 spring  security에서 인증객체를 null로 넘긴다..

다른떄는 괜찮은데.. 이유는 나중에 찾아봐야할듯..

Posted by 삽지리
,

프로젝트를 하다보면 개발서버와 실서버의 properties 변경과 관련된 이슈가 항상 발생한다.

이때 첨부파일이라던가 도메인정보등이 들어가야되는 경우가 생기기 마련인데

이에 대해서 개발환경과 실서버환경을 분리할 방법이 없는가에 대한 생각이다.

통상의 svn에서 데이터가 관리되고

아무생각 없이 통쨰로 ftp등을 이용해서 파일을 올리다 보면 개발환경의 파일이 올라가서 문제가 생기는 경우가 있다.

 

DB에 이런 환경변수를 넣는건 절대 해서는 안돼는 일이고

로컬에 있는걸 그대로 복사해도 무리가 없는 그런 방법이 필요한하다.

 

개인적으로 생각하는 것은 개발을 위해서 로딩중에 PC의 특정한 설정을 읽어들여 하는 방법을 생각하고 있다.

하지만 허망한게 db설정등은 아무래도 상대경로에 있는 상태에서 컨트롤하기 힘들다..

 

그냥 서버에 올리는 작업은 ftp가 아닌 환경변수에 대해서 제외시켜버릴 수 있게 만드는 작업을 하는게 낳겠다..

무조건 svn을 통해서 올리게 되고 문제가 있으면 카피 않하면 그만 아닌가?

ant로 기존에 있는 대상파일을 날짜 별로 특정폴더에 쌓고

update를 통해서 변경된 파일만 복사하게 하던지 해서

예외되는 파일은 ant로 관리한다..

Posted by 삽지리
,

구글 api를 하다가 난 오류떄문에 인지한건데

배열은 Iterable아니기 떄문에 Iterable관련 매쏘드를 쓰면 문제가 생긴다.

 

Posted by 삽지리
,

기존에 http://blog.naver.com/sabjili/30089421164

이런글을 썼었다

이때 사용한 라이브러리는

 

gdata-calendar-2.0.jar
gdata-client-1.0.jar
gdata-core-1.0.jar
google-collect-1.0-rc1.jar
gdata-base-1.0.jar

 

이거인데

이중에  

google-collect-1.0-rc1.jar
가 현재 문제가 있다

상위인

https://code.google.com/p/guava-libraries/

를 써야한다.

Posted by 삽지리
,

출처 : http://stackoverflow.com/questions/3442090/java-what-is-this-ljava-lang-object

 

 

// xxxxx varies
System.out.println(new int[0][0][7]); // [[[I@xxxxx
System.out.println(new String[4][2]); // [[Ljava.lang.String;@xxxxx
System.out.println(new boolean[256]); // [Z@xxxxx

 

대충 이런 느낌

Posted by 삽지리
,

출처 : http://koxo.com/lang/js/method/open_window.html

 
<SCRIPT>
function newWinTest(){
  newWin=window.open('','','toolbar=no,scrollbars=no,top=200,left=300,width=170,height=50');
  var str='새창 열기/닫기 예제<BR><BR>';
  str+='<CENTER><INPUT type=button value="닫기" onClick="window.close()"></CENTER>';
  newWin.document.write(str);
}
</SCRIPT>

<FORM><INPUT type="button" value="새창 열기" onClick="newWinTest()"></FORM>

위와 같이 하여 문서객체를 컨트롤 할수 있었다.

별도의 페이지를 띄우지 않고 사용하는건데 opener객체도 컨트롤 가능하다.

용도는 뭐에 쓸가 하면.

팝업창을 띄우면서 컨트롤을 opener에 의존해서 하고 싶을떄

즉 dialog 팝업처럼 쓰고 싶을때 쓰면 어떨가 싶다.

Posted by 삽지리
,