분류 전체보기
자바스크립트 강좌 1편. 시작
자바스크립트 강좌 1편. 시작
2016.05.091. 자바스크립트 소개 1995년, 넷스케이프 사의 브랜든 아이히(Brendan Eich)가 라이브 스크립트(live script) 언어를 개발하기 시작합니다. 그 후 썬 마이크로시스템즈 사와 제휴를 맺으며 그 당시 유명했던 자바의 이름을 본따 '자바스크립트'로 변경되어 다시 개발이 시작됩니다. 그러자 마이크로소프트 사에서 이에 대항하기 위해 VB 스크립트를 발표하고 그 후에 자바스크립트와 비슷한 J스크립트를 발표하게 됩니다. (익스플로러 3.0에 Jscript 탑재) 그러자 넷스케이프 사에서 1996년, 표준화를 위해 자바스크립트의 기술 규격을 ECMA 국제회의에 제출하고 1997년에 ECMA 스크립트의 첫번째 버전인 ECMA-262가 발표됩니다. 자바스크립트와 J스크립트 등 ECMA 스크립트와의 호환..
20160213
20160213
2016.02.13원래는 12월 내로 파이썬 강좌 게시글에 대한 보충 계획을 마무리 하고 블로그에 지속적인 관심을 가졌어야 했으나, 고등학교에서 대학교로 올라오는 과정 사이에 학업과 취업에 대한 근심이 서서히 커져가기 시작하면서 컴퓨터를 좀처럼 다루지 못했던 것 같습니다. 블로그에 있었던 장기간의 공백 사이에 프로그래밍과는 다소 거리가 있는 분야들을 집중적으로 공부하기 시작하면서 정신적인 스트레스가 쌓이기 시작하고, 여태까지 프로그래밍을 제외한 다른 분야에 대한 공부에 대해 소홀히 했다는 점은 부인할 수 없었던 사실이었으므로 하루에 3시간 정도를 자면서 무리한 계획을 이어가다보니 정신 상태나 몸이나 극도로 피폐해지기 시작했습니다. 해가 바뀌면서 여유가 조금씩 생기고, 원래의 생활로 되돌아가기 시작하면서 작년에 겪었던 연속..
파이썬 강좌 내용을 더 자세히, 더 쉽게 바꾸려고 합니다.
파이썬 강좌 내용을 더 자세히, 더 쉽게 바꾸려고 합니다.
2015.11.13파이썬 강좌 도중에 이해하는 것이 힘들었다거나, 무엇이 빠진 느낌이 들었다거나, 예제를 그대로 따라갔는데 예상치 못한 오류에 부딪히게 되는 부분들을 모두 고려하여 기존에 작성된 파이썬 강좌의 일부분을 수정하려고 생각하고 있습니다. 어떤 내용이 들어가면 더 좋은지, 아니면 지금 강좌의 부족한 점이 무엇인지 말씀해주시면 적극적으로 검토해서 만족스런 강좌 게시글로 거듭날 수 있도록 최선의 노력을 다하겠습니다. 1) 각 강좌마다 실제로 배운 내용을 다양한 방식으로 적용해볼 수 있도록 5-6개의 과제들을 강좌 아래에 마련해 둘 생각입니다. 예를 들어서, 아래와 같은 문제들이 포함되어 올라올 것 같습니다. 2) 방금 막 입문한 개발자들을 대상으로 좀 더 소통의 기회를 늘리려고 생각하고 있습니다. 강좌 게시글을 작성..
모두 새해 복 많이 받으세요.
모두 새해 복 많이 받으세요.
2015.01.01모두 새해 복 많이 받으세요! 을미년 새해에도 건강하고 행복한 일들만 가득하길 바랍니다. P.S 학업 때문에 블로그에 게시글을 올리거나 덧글을 자주 달아드리지 못해서 안타깝게 생각하고 있습니다. 가끔 가다가, 저 대신 답글을 올려주시는 분들이 있는데 그분들에게 감사하다는 말을 전합니다 (_ _)/ 내용을 보충하거나 수정되어야 할 점, 또는 어떤 강좌를 블로그에 더 작성하는게 좋을지에 대한 의견도 댓글로 달아주시면 그대로 반영하도록 하겠습니다.
리버스 엔지니어링 스터디 3편. 인라인 코드 패치(Inline Code Patch)
리버스 엔지니어링 스터디 3편. 인라인 코드 패치(Inline Code Patch)
2014.05.11[리버스 엔지니어링 스터디][이 글은 저자인 이승원씨가 작성한 '리버싱 핵심원리: 악성 코드 분석가의 리버싱 이야기'를 참고하여 쓰여졌습니다.] 코드 케이브를 삽입 후 프로그램을 패치한다!인라인 코드 패치(Inline Code Patch) 오늘은 인라인 코드 패치(Inline Code Patch)에 대해서 공부해보도록 하겠습니다. 인라인 코드 패치란 원하는 위치에 있는 코드를 직접 패치하기 어려울 때 코드 케이브(Code Cave)라고 하는 패치 코드를 삽입한 후 실행하여 프로그램을 패치시키는 기법이라 합니다. 주로 패킹 혹은 암호화된 프로그램은 EP(Entry Point)에서 OEP(Original Entry Point) 코드를 복호화 시킨 뒤, 복호화 된 OEP 부분으로 이동합니다. 만약, 우리가 패..
리버스 엔지니어링 스터디 2편. 스택 프레임(Stack Frame)
리버스 엔지니어링 스터디 2편. 스택 프레임(Stack Frame)
2014.05.05[리버스 엔지니어링 스터디] 함수 호출시 할당되는 메모리 블록 스택 프레임(Stack Frame) 스택에 저장되는 함수의 호출 정보를 스택 프레임(Stack Frame)라고 하며, 이러한 스택 프레임에는 함수로 전달되는 인수와, 함수 실행 모두 마치면 돌아올 복귀 주소와 지역 변수 등의 정보가 들어갑니다. 빠르고 손쉽게 지역 변수 혹은 인수 등에 접근하기 위해 EBP 레지스터를 통하여 스택 프레임을 참조할 수 있습니다. 더욱 파고들기 위해서, 함수 호출 시 스택 프레임이 어떠한 형태로 생성이 되고 소멸은 또 어떻게 되는지 한번 확인해보도록 하겠습니다. 먼저, C언어로 작성된 아래 예제의 코드를 빌드한 후 올리 디버거를 통하여 살펴보도록 합시다. #include int sum(int a, int b) { ..
2014. 04. 26 네이버 메일 발송기
2014. 04. 26 네이버 메일 발송기
2014.04.06점점 고3 생활이 바빠지면서 블로그에 글 올리는 텀도 길어지고 제작도 힘들어지는 것 같습니다.
Babylon Keygenme(바빌론 키젠미)를 크랙해보자.
Babylon Keygenme(바빌론 키젠미)를 크랙해보자.
2014.03.03이번에는 바빌론 키젠미(Babylon Keygenme) 프로그램을 리버싱 해보도록 하겠습니다. 상당히 쉬운 편이며, 프로그램은 C언어로 만들어졌다고 합니다. 패킹은 되어있지 않은 상태이구요. 우선은 아래 파일을 다운로드 받아 Babylon Keygenme.exe를 실행시켜 보도록 합시다. 실행 파일을 실행시키시면 아래와 같은 화면이 보여질 것입니다. 우선은 아무렇게나 입력을 한 뒤에 결과를 확인해볼까요? 번역기로 저 문장을 해석해보니 잘못된 패스워드라고 합니다. 우선은 올리디버거를 열어 이 파일을 열어보도록 합시다. (필자는 이뮤니티 디버거를 사용했습니다. 올리 디버거를 쓰셔도 무방합니다.) 디버거로 파일을 열었으면 어셈블리 코드가 보이는 창에 우클릭을 하여 팝업 메뉴에서 Search for -> All..
가독성에 관해 1편. 코드는 이해하기 쉬워야 한다.
가독성에 관해 1편. 코드는 이해하기 쉬워야 한다.
2014.02.26[가독성에 관해서] [이 글은 저자인 더스틴 보즈웰, 트레버 파우커가 작성한 '읽기 좋은 코드가 좋은 코드다'를 토대로 쓰여졌습니다.] 코드를 작성할 때 가장 중요한 지침을 제공하는 원리! 코드는 이해하기 쉬워야 한다 혹시 자신이 작성한 소스 코드를 1~2달 뒤에 보게되니 이게 어떠한 역할을 하는 코드 부분인지 몰랐던 경험이 있으신가요? 코드 구조가 복잡해지게 되면서 다른 사람뿐만 아니라 자기 자신도 못알아보게 되는 상황이 있었던 분들이 있을 것이라 생각합니다. 코드 구조가 복잡하고 코드가 함축되어 있거나, 쓸데없는 코드가 많아지다 보면 '가독성'이 떨어지게 됩니다. 여기서 가독성이란 얼마나 쉽게 읽을 수 있는지 나타내는 정도이며, 이 강좌는 가독성을 중심으로 하여 내용을 다룰 예정입니다. 먼저 코드를 ..
프로그래밍이나 보안에 관심사를 가지신 분들을 구합니다.
프로그래밍이나 보안에 관심사를 가지신 분들을 구합니다.
2014.02.16제목 그대로 프로그래밍이나 보안 등에 관심이 있고 이미 그에 관련한 공부를 하고 계시는 분들을 구합니다. 목적은 정보 공유와 스터디를 모집하여 보다 효율적으로 공부할 수 있도록 하기 위함이며, 대상은 중고등학생 중 관심사가 확실히 IT 쪽으로 정해진 분들이고 만약 이 모집글에 관심이 있으신 분들은 제 네이트온 계정으로 메일을 보내주시거나 대화를 걸어주시면 감사하겠습니다. 참고로 제 메일은 su6net@nate.com 입니다. 추신. 파이썬 강좌 게시글이 최근에 들어서 계속 수정되고 있습니다. 꾸준하게 강좌에 보완하여야할 부분을 지적해 주시거나, 궁금한 사항을 계속 댓글로 달아주시면 답해드리고 있습니다.
파이썬 강좌가 다시 새로이 작성됩니다.
파이썬 강좌가 다시 새로이 작성됩니다.
2014.01.12요즘 블로그에 포스팅 거리가 없어서 고민하던 참에, 지금 올라와 있는 파이썬 강좌의 부실한 점을 보충해나가는 식으로 새로이 작성하려고 합니다. 파이썬 강좌를 모두 수정하고 나면 또 어떤 글을 써야 할지 감이 잡히지가 않네요. 만약 된다면 PHP와 같은 서버 사이드 스크립트 언어를 다뤄보고 싶기도 합니다. 블로그가 잘 활성화 되지도 않음에도 불구하고 계속 찾아오셔서 강좌를 봐주시는 블로그 독자분들에게도 감사하다는 말을 전하고 싶습니다.
갑오년의 새해가 밝았습니다.
갑오년의 새해가 밝았습니다.
2014.01.01청마의 해, 2014년의 아침이 밝았습니다. 올해도 행운과 성공이 가득하길 기원하면서, 자신이 이루고 싶은 일들을 모두 이루고 보람있는 한해 되시길 바랍니다. 새해를 맞아 공부 계획을 확고히하고, 미뤄뒀던 계획들을 다시 정리해보려 합니다. 모두 새해 복 많이 받으세요!