<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>hacker dakuo</title>
		<link>http://dakuo.tistory.com/</link>
		<description>hacker dakuo</description>
		<language>ko</language>
		<pubDate>Thu, 23 Feb 2012 14:37:01 +0900</pubDate>
		<generator>Tistory 1.1 (http://www.tistory.com/)</generator>
		<managingEditor>Dakuo</managingEditor>
		<image>
		<title>hacker dakuo</title>
		<url><![CDATA[http://cfile9.uf.tistory.com/image/141FEB554D8A1CEC2F0E8A]]></url>
		<link>http://dakuo.tistory.com/</link>
		<description>hacker dakuo</description>
		</image>
		<item>
			<title>Tempest Hacking</title>
			<link>http://dakuo.tistory.com/175</link>
			<description>템페스트 해킹에 대해 공부해봤습니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile6.uf@1202D93E4F34A12D32B299.pdf&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/pdf.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; Newheart_tempest_hacking.pdf&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;
&amp;nbsp;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-175-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-175-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-175-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<category>newheart</category>
			<category>Tempest</category>
			<category>Tempest Hacking</category>
			<category>뉴하트</category>
			<category>템페스트</category>
			<category>템페스트 해킹</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/175</guid>
			<comments>http://dakuo.tistory.com/175#entry175comment</comments>
			<pubDate>Fri, 10 Feb 2012 13:46:58 +0900</pubDate>
		</item>
		<item>
			<title>해커란?</title>
			<link>http://dakuo.tistory.com/174</link>
			<description>&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(0, 0, 0); font-family: &#039;lucida grande&#039;, tahoma, verdana, arial, sans-serif; line-height: 14px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;&quot;해커는 직업이 아니다.&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;해커의 소양은 즐길 수 있는 마인드와 윤리의식을 갖추는 것이다.&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;&amp;nbsp;가장 중요한 것은 즐기면서 해야 취약점, 공격코드, 오픈소스 개발 등의&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(0, 0, 0); font-family: &#039;lucida grande&#039;, tahoma, verdana, arial, sans-serif; font-size: 11px; line-height: 14px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;결과물들이&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(0, 0, 0); font-family: &#039;lucida grande&#039;, tahoma, verdana, arial, sans-serif; font-size: 11px; line-height: 14px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;&amp;nbsp;자연스럽게 따라 온다는 것이다”&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;- by hkpco&lt;/span&gt;&lt;/span&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-174-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-174-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-174-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>hkpco Gospel</category>
			<category>hkpco</category>
			<category>박찬암</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/174</guid>
			<comments>http://dakuo.tistory.com/174#entry174comment</comments>
			<pubDate>Thu, 20 Oct 2011 18:14:45 +0900</pubDate>
		</item>
		<item>
			<title>StackBasedOverflows-Windows-Part2 (익스플로잇 작성을 위한 어셈블리어)</title>
			<link>http://dakuo.tistory.com/173</link>
			<description>원본 :&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile23.uf@176D174E4DED9AFA092538.pdf&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/pdf.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; StackBasedOverflows-Windows-Part2.pdf&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;
&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;번역본 :&lt;br /&gt;
&lt;br /&gt;&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile10.uf@120B06504DED9B3E086DCA.txt&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/txt.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; StackBasedOverflows-Windows-Part2.txt&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;&lt;br /&gt;
나머지 2개는 좀 한가해지는대로 해서 올리겠습니다. ㅎㅎㅎ&amp;nbsp;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-173-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-173-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-173-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_System Programming</category>
			<category>Buffer</category>
			<category>Buffer Overflow</category>
			<category>Stack</category>
			<category>Stack Overflow</category>
			<category>버퍼오버플로우</category>
			<category>스택</category>
			<category>스택 오버플로우</category>
			<category>어셈블리어</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/173</guid>
			<comments>http://dakuo.tistory.com/173#entry173comment</comments>
			<pubDate>Tue, 07 Jun 2011 12:31:57 +0900</pubDate>
		</item>
		<item>
			<title>StackBasedOverflows-Windows-Part1 (기본 개념)</title>
			<link>http://dakuo.tistory.com/172</link>
			<description>원본 :&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile26.uf@170BB3394DED981E1F5AD7.pdf&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/pdf.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; StackBasedOverflows-Windows-Part1.pdf&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
번역본 :&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile29.uf@1821844B4DED9A01374462.txt&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/txt.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; StackBasedOverflows-windows-Part1.txt&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
제가 직접 번역을 해보았는데 오역이 있으면 알려주시기 바랍니다.&lt;br /&gt;
(고등학교 때도 독해 안해봤는데 ... ㅋㅋㅋ 제가 이런걸 해볼줄이야 ... ㄷㄷ)&lt;br /&gt;
&lt;br /&gt;
그리고 이걸 기본으로 해서 제가 다시 문서를 작서할 생각입니다.&lt;br /&gt;
&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-172-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-172-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-172-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_System Programming</category>
			<category>Buffer Overflow</category>
			<category>Stack</category>
			<category>Stack Overflow</category>
			<category>메모리</category>
			<category>버퍼오버플로우</category>
			<category>스택</category>
			<category>스택 오버플로우</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/172</guid>
			<comments>http://dakuo.tistory.com/172#entry172comment</comments>
			<pubDate>Tue, 07 Jun 2011 12:25:36 +0900</pubDate>
		</item>
		<item>
			<title>다시 블로깅 시작하겠습니다.</title>
			<link>http://dakuo.tistory.com/171</link>
			<description>&lt;P&gt;다시 열심히 해야죠 &lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-171-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-171-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-171-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/171</guid>
			<comments>http://dakuo.tistory.com/171#entry171comment</comments>
			<pubDate>Mon, 16 May 2011 01:15:54 +0900</pubDate>
		</item>
		<item>
			<title>Eprocess 구조체를 이용한 프로세스 숨기기</title>
			<link>http://dakuo.tistory.com/169</link>
			<description>&lt;DIV style=&quot;TEXT-ALIGN: left&quot;&gt;제가 만들어본&amp;nbsp;프로세스 숨기기&amp;nbsp;PPT입니다.&lt;br /&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;br /&gt;
Eprocess 구조체와&lt;br /&gt;
유저단에서 Native API(ZwQuerySystemInformation,&amp;nbsp; ZwSystemDebugControl) 를 사용해서 작성하였습니다.&lt;br /&gt;
(드라이버로 개발하려다가 실력이 안되서 ㅠㅠ)&lt;br /&gt;
&lt;br /&gt;부족한 점이 많을것입니다.&amp;nbsp;&amp;nbsp; 많이 지적해주세요.&lt;br /&gt;
&lt;br /&gt;아 그리고 쓰실때 출처만 제대로 밝혀주세요.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile10.uf@194D8C3D4D21122F11E58F.pptx&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; Process Hide.pptx&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile24.uf.tistory.com/original/12578A454D21136541A4F9&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile24.uf.tistory.com/image/12578A454D21136541A4F9&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;dakuo.jpg&quot; height=&quot;406&quot; width=&quot;650&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile5.uf.tistory.com/original/123F2A414D21147E04120E&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile5.uf.tistory.com/image/123F2A414D21147E04120E&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;dakuo3.jpg&quot; height=&quot;406&quot; width=&quot;650&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile6.uf.tistory.com/original/143F2A414D21147F053261&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile6.uf.tistory.com/image/143F2A414D21147F053261&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;dakuo4.jpg&quot; height=&quot;406&quot; width=&quot;650&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;/DIV&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-169-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-169-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-169-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Dakuo&#039;s Lecture</category>
			<category>EPROCESS</category>
			<category>Native API</category>
			<category>Process Hide</category>
			<category>ZwQuerySystemInformation</category>
			<category>ZwSystemDebugControl</category>
			<category>구조체</category>
			<category>프로세스 숨기기</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/169</guid>
			<comments>http://dakuo.tistory.com/169#entry169comment</comments>
			<pubDate>Mon, 03 Jan 2011 09:17:13 +0900</pubDate>
		</item>
		<item>
			<title>2010년이 가고 2011년이 다가오네요.</title>
			<link>http://dakuo.tistory.com/168</link>
			<description>&lt;P&gt;요새 글이 너무 뜸해서 죄송하고요.&lt;br /&gt;
&lt;br /&gt;방학도 했고 이제 연말도 다 끝났고&lt;br /&gt;
&lt;br /&gt;새해가 시작하는 만큼&amp;nbsp; 다시 공부에 박차를 가해서&lt;br /&gt;
&lt;br /&gt;공부에 도움이 되실수 있게끔&amp;nbsp; 활발히 포스팅을 하겠습니다&amp;gt; ~~!~!&lt;br /&gt;
&lt;br /&gt;이번 2011년은 정말 중요한 해가 될꺼 같아여.&lt;br /&gt;
&lt;br /&gt;모두 그렇지 않으신가여??? ㅎㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;이번 2011년은&amp;nbsp;모두 열심히해서&amp;nbsp; 자기 성과를 이루는 그런 해가 됬으면 좋겠네요~~&amp;nbsp;&amp;nbsp; 서로 열심히 해여 ~&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;(와 어느덧&amp;nbsp; 블로그 한지 1년 1개월이 됬고&amp;nbsp;&amp;nbsp; 방문자수도 10만명을 기록......&lt;br /&gt;
&lt;br /&gt;보잘것 없는 블로그에 방문해 주셔서 감사하고요 !!! 더욱더 열심히 하겠습니다)&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-168-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-168-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-168-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/168</guid>
			<comments>http://dakuo.tistory.com/168#entry168comment</comments>
			<pubDate>Thu, 30 Dec 2010 05:55:22 +0900</pubDate>
		</item>
		<item>
			<title>The Foundation of Reverse Engineering by dakuo.</title>
			<link>http://dakuo.tistory.com/166</link>
			<description>제가 만들어본 리버싱 기초를 설명한 PPT입니다.&lt;br /&gt;
&lt;br /&gt;부족한 점이 많을것입니다.&amp;nbsp;&amp;nbsp; 많이 지적해주세요.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
아 그리고 쓰실때 출처만 제대로 밝혀주세요.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile24.uf@1419F7314CF477631C9BBE.pptx&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; Dakuo’slecture1.pptx&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile23.uf.tistory.com/original/1765E32E4CF4785B670FEA&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile23.uf.tistory.com/image/1765E32E4CF4785B670FEA&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;dakuo.jpg&quot; height=&quot;406&quot; width=&quot;650&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile24.uf.tistory.com/original/1865E32E4CF4785B68F415&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile24.uf.tistory.com/image/1865E32E4CF4785B68F415&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;dakuo1.jpg&quot; height=&quot;406&quot; width=&quot;650&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile29.uf.tistory.com/original/1965E32E4CF4785B69D2F5&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile29.uf.tistory.com/image/1965E32E4CF4785B69D2F5&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;dakuo2.jpg&quot; height=&quot;406&quot; width=&quot;650&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-166-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-166-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-166-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Reversing</category>
			<category>dakuo</category>
			<category>Foundation</category>
			<category>PPT</category>
			<category>Reverse Engineering</category>
			<category>reversing</category>
			<category>리버싱</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/166</guid>
			<comments>http://dakuo.tistory.com/166#entry166comment</comments>
			<pubDate>Tue, 30 Nov 2010 13:07:31 +0900</pubDate>
		</item>
		<item>
			<title>웹프로그래밍 기반 지식</title>
			<link>http://dakuo.tistory.com/165</link>
			<description>&lt;P&gt;1. 웹프로그래밍 언어 작동원리 : &lt;br /&gt;
&lt;br /&gt;1) 인터프리터 :&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile23.uf.tistory.com/original/177A2D244CE2CF4F03D937&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile23.uf.tistory.com/image/177A2D244CE2CF4F03D937&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web1.jpg&quot; height=&quot;179&quot; width=&quot;313&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
웹프로그래밍에 사용되는 일반적인 언어(php, asp, jsp)는 인터프리터로 되어있으며&lt;br /&gt;
&lt;br /&gt;&quot;해석기&quot;가 코드를 한줄씩 해석하여 사용자가 이해할수 있는 문서인 HTML로 변환해 준다.&lt;br /&gt;
&lt;br /&gt;인터프리터는 컴파일러보다 가벼우며 융통성이 좋아 웹에서 사용하기에 적합하다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
2) 2Tier ,&amp;nbsp; 3Tier(단계,&amp;nbsp;계층)&amp;nbsp;:&lt;br /&gt;
&lt;br /&gt;2Tier : Server(웹서버 : Asp, jsp, php)&amp;nbsp;/ Client(사용자 :&amp;nbsp;HTML)&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
3Tier : Server(웹서버 : Asp, jsp, php)&amp;nbsp;/ Client(사용자 :&amp;nbsp;HTML) /&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&amp;nbsp;Component(별도의 기능과 함수를 모아 컴파일한 모듈(프로그램))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; (ex. Active X)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile10.uf.tistory.com/original/1933FA274CE2D26B049FDC&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/1933FA274CE2D26B049FDC&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web2.jpg&quot; height=&quot;239&quot; width=&quot;416&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;3) 웹사이트 작동 구조 :&lt;br /&gt;
&lt;br /&gt;웹서버 + 웹언어 해석기 + DB서버&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile5.uf.tistory.com/original/18340C274CE2D329040FAB&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile5.uf.tistory.com/image/18340C274CE2D329040FAB&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web3.jpg&quot; height=&quot;184&quot; width=&quot;436&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
(ex. IIS + ASP + MSSQL,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Apache + PHP + MYSQL,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Iplanet + JSP + ORACLE )&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;2. 웹프로그래밍 언어의 종류와 성격&lt;br /&gt;
&lt;br /&gt;1) asp (Active Server Page) :&lt;br /&gt;
&lt;br /&gt;asp 는 MS에서 개발된 웹프로그래밍 언어이다.&lt;br /&gt;
&lt;br /&gt;비주얼 베이직과 거의 비슷하며 웹언어중 코드를 가장 이해하기 쉽다.&lt;br /&gt;
&lt;br /&gt;asp 는 웹에서 정보를 주고받기 위한 5가지 객체를 가지고 있다.&lt;br /&gt;
&lt;br /&gt;Request 객체 : 서버쪽에 정보를 요청 하여 받아내도록 하는 객체&lt;br /&gt;
Response 객체 : 서버쪽에서 사용자가 보이는 화면으로 정보를 뿌려 주는 객체&lt;br /&gt;
Server 객체 : 서버에 위치하는 다른 객체를 사용할 수 있도록 하는 객체&lt;br /&gt;
Application 객체 : 서버가 끊길때까지 정보를 가지고 있는 객체&lt;br /&gt;
Session 객체 : 사용자가 로긴하고 로그아웃 할때까지 사용자정보를 가지고 있는 객체&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
2) php (Personal Hypertext Preprocessor) :&lt;br /&gt;
&lt;br /&gt;php 는 모든것이 함수로 되어 있어 사용하고 이해하기 편리하다.&lt;br /&gt;
&lt;br /&gt;오픈소스이다.&lt;br /&gt;
&lt;br /&gt;C 언어 기반이다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
3) jsp (Java Server Pages) :&lt;br /&gt;
&lt;br /&gt;Java 언어를 기반으로 하는 스크립트 언어이다.&lt;br /&gt;
&lt;br /&gt;Java 는 클래스를 중심으로 한 서블릿과 Java Beans 컴포넌트를 이용하여 다양한 기능을 구사할 수 있다.&lt;br /&gt;
&lt;br /&gt;따라서 Java 의 기능을 아는것이 매우 중요하다.&lt;br /&gt;
&lt;br /&gt;확장성이 좋아 어느 운영체제에서도 사용할 수 있다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
4) .net(닷넷)&amp;nbsp; ,&amp;nbsp;&amp;nbsp; EJB(Enterprise Java Beans)&amp;nbsp;:&lt;br /&gt;
&lt;br /&gt;기존의 스크립트 언어와 함께 각 기능들을 모듈화 하여 사용할 수 있도록 만들었다. (Component 제작)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;3. 데이터 베이스 용어&lt;br /&gt;
&lt;br /&gt;1) 테이블(table) :&lt;br /&gt;
&lt;br /&gt;데이터베이스의 하나의 개체를 의미한다.&amp;nbsp;&amp;nbsp;&amp;nbsp; (ex. 회원)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile10.uf.tistory.com/original/177994244CE2DC2D06480A&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/177994244CE2DC2D06480A&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web4.jpg&quot; height=&quot;96&quot; width=&quot;531&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
2) 칼럼(Column) :&lt;br /&gt;
&lt;br /&gt;테이블 내부의 세로줄을 지칭한다. (ex.&amp;nbsp; 이름,&amp;nbsp; 주민번호,&amp;nbsp; 회사, &amp;nbsp;전화번호 , 가입경로, 기입일)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
3) 레코드(Record) :&lt;br /&gt;
&lt;br /&gt;테이블 내부의 가로줄 한줄 즉 정보를 의미한다.&lt;br /&gt;
(ex.&lt;br /&gt;

&lt;TABLE style=&quot;BORDER-COLLAPSE: collapse&quot; cellSpacing=1 cellPadding=1 width=620 bgColor=#ffffff&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;16%&quot;&gt;&amp;nbsp;홍길동&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;16%&quot;&gt;&amp;nbsp;****** - *******&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;16%&quot;&gt;&amp;nbsp;A회사&amp;nbsp;&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;16%&quot;&gt;&amp;nbsp;010-2345-****&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;16%&quot;&gt;&amp;nbsp;네이버를 통해&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;16%&quot;&gt;&amp;nbsp;2006-01-01&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;)&lt;br /&gt;
&lt;br /&gt;레코드 셋은 레코드들의 묶음을 의미한다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
4) 쿼리문 :&lt;br /&gt;
&lt;br /&gt;SQL 이라고 하며 질의어라 한다.&lt;br /&gt;
&lt;br /&gt;데이터를 조회(Select), 수정(Update), 삭제(delete), 저장(insert) 한다.&lt;br /&gt;
&lt;br /&gt;(ex.&lt;br /&gt;
- 조회&lt;br /&gt;
select 이름,회사 from 회원 where 가입일=&#039;2006-01-01&#039;&lt;br /&gt;
해석&amp;nbsp;: 회원 테이블에서 가입일이 2006-01-01 인 사람의 이름과 회사정보를 조회하라.&lt;br /&gt;
&lt;br /&gt;- 삭제&lt;br /&gt;
delete from 회원 where 가입일=&#039;2007-04-01&#039;&lt;br /&gt;
해석&amp;nbsp;: 회원 테이블에서 가입일이 2007-04-01 인&amp;nbsp;회원을 지워라.&lt;br /&gt;
&lt;br /&gt;- 수정&lt;br /&gt;
update 회원 set 전화번호=&#039;011-2345-****&#039; where 주민번호=&#039;******-*******&#039;&lt;br /&gt;
해석 : 회원 테이블에서 주민번호가 ******-******* 인 회원의 전화번호를 011-2345-**** 로 수정하라.&lt;br /&gt;
&lt;br /&gt;- 저장&lt;br /&gt;
insert into 회원 (이름,주민번호,회사,전화번호,가입경로,가입일)&lt;br /&gt;
value (&#039;주몽&#039;,&#039;******-*******&#039;,&#039;LK그룹&#039;,&#039;010-2222-****&#039;,&#039;지인을 통해&#039;,&#039;2007-04-11&#039;)&lt;br /&gt;
해석 : 회원 테이블에 새로운 정보를 저장하라.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;4. 데이터 베이스와의 연결&lt;br /&gt;
&lt;br /&gt;1) asp 에서 msssql 서버 데이터 가져오기&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결정보 &lt;br /&gt;
StrConn = &quot;Provider=SQLOLEDB;Data Source = DB서버명;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Initial Catalog=DB명:User ID =DB접근계정명;Password=DB접근 패스워드;&quot;&lt;br /&gt;
&lt;br /&gt;해석 : StrConn 변수에 데이터 베이스 연결 정보를 담는다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data Source 에는 DB 서버명을,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Initial Catalog 에는 DB명(IP주소)을,&amp;nbsp;&amp;nbsp; 계정과 비밀번호를 입력한다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 데이터 베이스 관리시스템인 DBMS 에는 여러개의 DB를 만들어 관리할 수 있으므로 DB명을 지정해준다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DB에 따라 ID, Password 를 별도로 부여하며 권한을 줄수 있으므로 미리 변수에 담아놓는다.&lt;br /&gt;
&lt;br /&gt;- 데이터베이스 연결 객체 선언&lt;br /&gt;
set Conn = server.CreateObject(&quot;ADODB.Connection&quot;)&lt;br /&gt;
&lt;br /&gt;해석 : server 객체의 CreateObject 메소드를 사용하여 데이터 베이스 연결을 하겠습니다 라고 정의하며&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 연결객체 Conn 을 만든다.&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (set :&amp;nbsp;새로운 객체를 선언)&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결&lt;br /&gt;
Conn.open StrConn&lt;br /&gt;
&lt;br /&gt;해석 : Conn이라는 데이터 베이스 연결객체의 메소드 open 을 이용해 변수에 지정된 DB연결 정보를 연결한다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 실행을 통한 레코드셋으로 받기&lt;br /&gt;
Dim sql&lt;br /&gt;
sql=&quot;select * from 테이블명&quot;&lt;br /&gt;
set Rs = Conn.execute(sql)&lt;br /&gt;
&lt;br /&gt;해석 : Dim sql (sql 이라는 변수를 선언한다)&amp;nbsp; sql 에 쿼리문(&quot;select * from 테이블명&quot;)을 담는다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set Rs (Rs 라는 객체를 선언한다)&amp;nbsp;&amp;nbsp;&amp;nbsp; Rs 객체는 Conn 이라는 위에서 만든 객체의 메소드 execute 를 통해&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;sql 의 변수에 저장된 쿼리문을&amp;nbsp;실행시켜 레코드 셋을 받는다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
2) php 에서 mssql 서버 데이터 가져오기&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결정보&lt;br /&gt;
$hostname = DB서버 IP&lt;br /&gt;
$user_id = 권한이 있는 DB접근 ID&lt;br /&gt;
$password = 패스워드&lt;br /&gt;
$DbName = DB명&lt;br /&gt;
&lt;br /&gt;해석 : php 에서는 $문자가 붙으면 변수이다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 데이터 베이스에 접근하기 위하여 서버IP, ID, Password, DB명을 변수에 저장한다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결설정&lt;br /&gt;
$Conn = MSSQL_CONNECT($hostname, $user_id, $password);&lt;br /&gt;
&lt;br /&gt;해석&amp;nbsp;: php 에서는 MSSQL_CONNECT 라는 함수가 데이터 베이스와의 연결을 시켜준다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결&lt;br /&gt;
mssql_select_db($DbName, $Conn);&lt;br /&gt;
&lt;br /&gt;해석&amp;nbsp;: php 는 데이터 베이스 DB명을 선택하게 하는 함수를 별도로 가지고 있다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 실행을 통한 레코드셋으로 받기&lt;br /&gt;
$sql = &quot;select * from 테이블명&quot;&lt;br /&gt;
$Rs = mssql_query($sql, $Conn)&lt;br /&gt;
&lt;br /&gt;해석&amp;nbsp;: sql 변수에 쿼리문을 저장한 다음 mssql_query 함수를 이용하여 데이터를 받아와 Rs에 저장한다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;3) jsp 에서 mssql 서버&amp;nbsp;데이터 가져오기&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결정보&lt;br /&gt;
Class.forName(&quot;com.microsoft.jdbc.sqlsever.SQLSeverDriver&quot;);&lt;br /&gt;
String strUrl = &quot;jdbc:microsoft:sqlserver:서버아이피:databasename=DB명&quot;;&lt;br /&gt;
String strUser_id = 권한이 있는 DB접근 ID;&lt;br /&gt;
String strPassword&amp;nbsp;= 패스워드;&lt;br /&gt;
&lt;br /&gt;해석&amp;nbsp;: 기본적으로 클래스를 사용한다.&amp;nbsp;&amp;nbsp; 기능을 사용하려면 먼저 클래스를 선언해야 한다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Class.forName()&amp;nbsp; 파라미터의 클래스를 사용&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; com.microsoft.jdbc.sqlsever.SQLSeverDriver 는 sqlserver 를 사용하기 위한 클래스&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 문자열로 선언된 strUrl, strUser_id, strPassword 에 (IP, DB명), ID, Password 를 대입한다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결설정&lt;br /&gt;
Connection Conn = DriverManager.getConnection(strUrl, strUser_id, strPassword);&lt;br /&gt;
&lt;br /&gt;해석&amp;nbsp;: DriverManager 객체의 getConnection 메소드를 사용해 연결객체 Conn 을 생성한다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 연결&lt;br /&gt;
Statement stmt = Conn.createStatement();&lt;br /&gt;
&lt;br /&gt;해석 : 생성된 연결객체 Conn 의&amp;nbsp;createStatement() 메소드를 실행하여 SQL 쿼리를 생성, 실행하여 결과를 가져오게 할 작업 영역을 stmt 객체를 만든다.&lt;br /&gt;
&lt;br /&gt;- 데이터 베이스 실행을 통한 레코드셋으로 받기&lt;br /&gt;
String strSql = &quot;select * from 테이블명&quot;&lt;br /&gt;
Result rs = stmt.executeQuery(strSql);&lt;br /&gt;
&lt;br /&gt;해석 : 문자열로 선언된 strSql 변수에 쿼리문을 담고 stmt 객체의 executeQuery() 메소드를 사용해 실행하여&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rs 객체에 저장하다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;6. 쿠키와 세션&lt;br /&gt;
&lt;br /&gt;사용자가 사이트에 접속하면 접속정보가 생긴다.&amp;nbsp; (ex. 로그인 정보,&amp;nbsp;&amp;nbsp; 구매물품 등등)&lt;br /&gt;
&lt;br /&gt;세션 : 접속정보를 서버가 가지고 있음&lt;br /&gt;
&lt;br /&gt;쿠키 : 접속정보를 사용자의 PC에 텍스트 파일로 저장&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;위 글은 냐하님(ttaeseung)의 글&lt;br /&gt;
웹기획 이해하기 - 강좌15. 웹기획자 입장에서 웹프로그래밍 이해하기 글을 참조하여서 작성하였습니다.&lt;br /&gt;
&lt;br /&gt;&lt;A href=&quot;http://blog.naver.com/ttaeseung/120036872378&quot;&gt;http://blog.naver.com/ttaeseung/120036872378&lt;/A&gt;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-165-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-165-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-165-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Web</category>
			<category>ASP</category>
			<category>DB</category>
			<category>HTML</category>
			<category>jsp</category>
			<category>php</category>
			<category>Tier</category>
			<category>WEB</category>
			<category>데이터 베이스</category>
			<category>사용자</category>
			<category>서버</category>
			<category>세션</category>
			<category>웹</category>
			<category>웹사이트</category>
			<category>웹서버</category>
			<category>웹언어</category>
			<category>웹프로그래밍</category>
			<category>인터프리터</category>
			<category>쿠키</category>
			<category>클라이언트</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/165</guid>
			<comments>http://dakuo.tistory.com/165#entry165comment</comments>
			<pubDate>Tue, 16 Nov 2010 22:25:33 +0900</pubDate>
		</item>
		<item>
			<title>OSI 하위 3계층 (물리, 데이터 링크, 네트워크)</title>
			<link>http://dakuo.tistory.com/164</link>
			<description>&lt;P&gt;1계층 : 물리 계층 (physical Layer)&lt;br /&gt;
&lt;br /&gt;하는일 : 위 계층으로부터 받은 데이터를&amp;nbsp;통신매체에 따른 신호로 변경하여 전송한다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (ex. 광케이블 -&amp;gt; 빛)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
장비 : 케이블, 허브, 리피터(증폭/재생)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;2계층 : 데이터 링크 계층(Data-Link Layer)&lt;br /&gt;
&lt;br /&gt;하는일 : 서로 다른 네트워크들의 차이를 흡수한다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 물리 계층으로부터 송수신되는 데이터의 오류를 수정하며 흐름을 관리한다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
네트워킹 방식 : &lt;br /&gt;
&lt;br /&gt;1. 이더넷(Ethernet) : &lt;br /&gt;
&lt;br /&gt;버스형 토폴로지에서 쓰이며 CSMA/CD 방식으로 통신한다.&lt;br /&gt;
네트워크를 살펴서 아무도 통신을 하고 있지 않으면 데이터를 전송하고 수신 여부를 확인한다.&lt;br /&gt;
&lt;br /&gt;만약,&lt;br /&gt;
다른&amp;nbsp;컴퓨터의 데이터와 충돌(Collision)이 발생해 데이터가 수신되지 않으면 랜덤한 시간을 기다린 후 재전송한다.&lt;br /&gt;
&lt;br /&gt;2. 토큰링(Token Ring) :&lt;br /&gt;
&lt;br /&gt;링형 토폴로지에서 쓰이며 토큰을 사용해 통신한다.&lt;br /&gt;
네트워크상에 흐르는 토큰을 가진 컴퓨터만이 데이터를 전송할수 있다.&lt;br /&gt;
&lt;br /&gt;토큰은 일정한 방향으로 흘러가며,&lt;br /&gt;
토큰을 받은 컴퓨터는 데이터를 전송하고,&lt;br /&gt;
데이터 전송을 마치거나, 보낼 데이터가 없으면 다음 컴퓨터에게 토큰을 넘긴다.&lt;br /&gt;
&lt;br /&gt;충돌은 발생하지 않으나 속도가 이더넷 방식에 비해 늦다.&lt;br /&gt;
(데이터를 전송하고 싶어도 토큰이 없으면(자기 차례가 아니면)&amp;nbsp;보내지 못하므로)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
MAC 주소 : 랜카드 또는 네트워크 장비에 부여된 고유한 주소&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8비트씩 6자리&amp;nbsp; 48비트로 이루어져 있으며,&amp;nbsp;&amp;nbsp; 앞의 3자리는 제조회사 넘버,&amp;nbsp;&amp;nbsp;뒤의 3자리는 일련번호이다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 00-60-97-8F-4F-86&amp;nbsp; (16진수로 표현한다)&lt;br /&gt;
&lt;br /&gt;같은 네트워크에 속해 있는 컴퓨터끼리는 MAC 주소로 통신한다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
토폴로지(Topology) :&amp;nbsp;네트워크의 요소들(링크, 노드)을 물리적으로 연결해 놓은&amp;nbsp;방식&lt;br /&gt;
점대점(point-to-point), 점대다(point-to-multipoint), 버스형(bus), 트리형(tree), 별형(star), 링형(ring), 망형(mesh)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
장비 : 브릿지, 스위치&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;3계층 : 네트워크 계층(Network Layer)&lt;br /&gt;
&lt;br /&gt;하는일 : 상위 계층으로부터 받은 데이터를 패킷(Packet)의 단위로 묶어&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;어떤 경로를 통해 상대에게 빠르고 안전하게 전송할지를 결정&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
(ex. 컴퓨터의 IP 주소 구성&amp;nbsp;&amp;nbsp; :&amp;nbsp; (확인 : cmd -&amp;gt; ipconfig)&lt;br /&gt;
IPv4 : 192.168.0.6&lt;br /&gt;
서브넷 마스크(Subnet Mask) : 255.255.255.0&lt;br /&gt;
기본 게이트웨이(gateway) : 192.168.0.1&lt;br /&gt;
DNS : 168.126.63.1 )&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
IP 주소 : TCP/IP 프로토콜을 사용하는 모든 장비들을 구별하기 위한 주소&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 현재 32비트 기반의 IPv4 를 사용하고 있으나&amp;nbsp; IP주소가 부족한 관계로,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 128비트 기반의 IPv6 으로 넘어가고 있다.&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;127.0.0.1&amp;nbsp;&amp;nbsp;&amp;nbsp;(32비트의 2진수를 8비트씩 끊어서 10진수료 표기해 사용한다)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
클래스 : IP 주소의 네트워크 부분과 호스트 부분을 나누는 방법&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
A클래스 :&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1bit&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;17bit&amp;nbsp;&amp;nbsp; // 여기까지 네트워크부분&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24bit&amp;nbsp;&amp;nbsp;// 호스트 부분
&lt;TABLE style=&quot;BORDER-COLLAPSE: collapse&quot; cellSpacing=1 cellPadding=1 width=620 bgColor=#ffffff&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;33%&quot;&gt;&amp;nbsp;0&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;33%&quot;&gt;&amp;nbsp;network&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;33%&quot;&gt;&amp;nbsp;host&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;br /&gt;
B클래스 :&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;16 
&lt;TABLE style=&quot;BORDER-COLLAPSE: collapse&quot; cellSpacing=1 cellPadding=1 width=625 bgColor=#ffffff&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;25%&quot;&gt;&amp;nbsp;1&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;25%&quot;&gt;&amp;nbsp;0&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;25%&quot;&gt;&amp;nbsp;network&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;25%&quot;&gt;&amp;nbsp;host&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;br /&gt;
C클래스&amp;nbsp;:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;8&amp;nbsp; 
&lt;TABLE style=&quot;BORDER-COLLAPSE: collapse&quot; cellSpacing=1 cellPadding=1 width=625 bgColor=#ffffff&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;20%&quot;&gt;&amp;nbsp;1&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;20%&quot;&gt;&amp;nbsp;1&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;20%&quot;&gt;&amp;nbsp;0&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;20%&quot;&gt;&amp;nbsp;network&lt;/TD&gt;
&lt;TD style=&quot;BORDER-BOTTOM: #dadada 1px solid; BORDER-LEFT: #dadada 1px solid; BORDER-TOP: #dadada 1px solid; BORDER-RIGHT: #dadada 1px solid&quot; width=&quot;20%&quot;&gt;&amp;nbsp;host&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;br /&gt;
&lt;br /&gt;서브넷 마스크 : 네트워크 부분과 호스트 부분을 나타내는 값.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 구성할 네트워크 환경에 맞춰서 호스트 부분을 조절할 수 있게 해줘&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 효율적인 네트워크 구성을 하게 해준다. (ex.&amp;nbsp;브로드캐스트 용이)&lt;br /&gt;
&lt;br /&gt;255.255.255.0. -&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11111111&amp;nbsp;&amp;nbsp;&amp;nbsp; 11111111&amp;nbsp;&amp;nbsp;&amp;nbsp; 11111111&amp;nbsp;&amp;nbsp;&amp;nbsp; 00000000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ------- 네트워크 부분 --------&amp;nbsp;&amp;nbsp;&amp;nbsp; --호스트 부분--&amp;nbsp; (1이면 네트워크 부분,&amp;nbsp;0이면 호스트 부분)&lt;br /&gt;
&lt;br /&gt;위의 서브넷 마스크에서 호스트 부분을&amp;nbsp;보면&amp;nbsp;C클래스를 사용한다는 것을 알수가 있다.&lt;br /&gt;
&lt;br /&gt;그런데 만약 네트워크를 구성할 호스트 컴퓨터의 개수가&lt;br /&gt;
클래스 단위로&amp;nbsp;떨어지지 않는다면&amp;nbsp;서브넷 마스크를 사용해 효율적으로 변경한다.&lt;br /&gt;
&lt;br /&gt;n대의 호스트 컴퓨터를 사용해 네트워크를 구성한다고 했을때&amp;nbsp;&amp;nbsp;&amp;nbsp;n + 2(게이트웨이 주소 + 브로드캐스트 주소)&lt;br /&gt;
2^N&amp;nbsp;&amp;gt;= n+2&amp;nbsp;&amp;nbsp; 를 만족하는 N값을 찾는다.&lt;br /&gt;
서브넷 마스크의 뒤에서부터 N의 개수만큼 0을 채운다.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 나머지는 1로 채운다.&lt;br /&gt;
&lt;br /&gt;(ex. 32대 호스트 컴퓨터를 사용한다.&amp;nbsp;&amp;nbsp;&amp;nbsp; 32 + 2&lt;br /&gt;
2^6 &amp;gt;= 34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;즉 호스트 부분의 개수는 6개.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;11111111&amp;nbsp;&amp;nbsp;&amp;nbsp; 11111111&amp;nbsp;&amp;nbsp;&amp;nbsp; 11111111&amp;nbsp;&amp;nbsp;&amp;nbsp; 11000000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;gt; 255.255.255.192&amp;nbsp;&amp;nbsp;&amp;nbsp; 의 서브넷 마스크를 사용하면 된다)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
게이트웨이(Gateway) : 내부 네트워크와 외부 네트워크를 이어주는 역활은 한다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 따라서 2개의 랜카드(내부용, 외부용)를 사용한다.&lt;br /&gt;
&lt;br /&gt;게이트웨이 없이 내부 네트워크에서 외부 네트워크로&amp;nbsp;나갈수 없다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
공인 IP : ISP(Inter Service Provider) 업체로부터 할당받은 IP&lt;br /&gt;
&lt;br /&gt;사설 IP :&amp;nbsp;공유기등을 이용해 내부 네트워크에서만 사용하는 IP&lt;br /&gt;
&lt;br /&gt;(ex.&lt;br /&gt;
ISP&amp;nbsp; ----------------- 공유기 -------------- 컴퓨터 A&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;218.148.91.108 (공인IP)&amp;nbsp;&amp;nbsp; &amp;nbsp;192.168.0.3 (사설IP)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;192.168.0.1(gateway adress)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;l----------------- 컴퓨터 B&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; 192.168.0.5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
DNS : 문자 형식의 도메인 주소를&amp;nbsp;&amp;nbsp;&amp;nbsp; 숫자 형식의 실제 IP주소와&amp;nbsp;매칭해주는 서버&lt;br /&gt;
(ex. ping &lt;A href=&quot;http://www.naver.com/&quot;&gt;www.naver.com&lt;/A&gt;&amp;nbsp;&amp;nbsp; ----&amp;gt;&amp;nbsp;&amp;nbsp; [202.131.29.71]&lt;br /&gt;
DNS 서버가&amp;nbsp;테이블에서 &lt;A href=&quot;http://www.naver.com/&quot;&gt;www.naver.com&lt;/A&gt; 의 도메인 주소를 검색하여 실제 IP 주소인 202.131.29.71 로 변경해준다)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
장비 : 라우터&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-164-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-164-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-164-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Networking</category>
			<category>collision</category>
			<category>Data-Link</category>
			<category>Data-Link Layer</category>
			<category>DNS</category>
			<category>Ethernet</category>
			<category>gateway</category>
			<category>ip</category>
			<category>ipv4</category>
			<category>ISP</category>
			<category>MAC</category>
			<category>mac 주소</category>
			<category>Network</category>
			<category>network layer</category>
			<category>OSI 3계층</category>
			<category>OSI 하위 3계층</category>
			<category>packet</category>
			<category>physical layer</category>
			<category>subnet mask</category>
			<category>TCP/IP</category>
			<category>token ring</category>
			<category>topology</category>
			<category>게이트웨이</category>
			<category>공인IP</category>
			<category>네트워크</category>
			<category>네트워크 계층</category>
			<category>네트워크 부분</category>
			<category>네트워킹</category>
			<category>데이터 링크</category>
			<category>데이터 링크 계층</category>
			<category>라우터</category>
			<category>랜카드</category>
			<category>리피터</category>
			<category>물리 계층</category>
			<category>사설IP</category>
			<category>서브넷 마스크</category>
			<category>이더넷</category>
			<category>충돌</category>
			<category>케이블</category>
			<category>콜리전</category>
			<category>클래스</category>
			<category>토큰링</category>
			<category>토폴로지</category>
			<category>패킷</category>
			<category>허브</category>
			<category>호스트</category>
			<category>호스트 부분</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/164</guid>
			<comments>http://dakuo.tistory.com/164#entry164comment</comments>
			<pubDate>Tue, 16 Nov 2010 02:42:25 +0900</pubDate>
		</item>
		<item>
			<title>제2회 IGRUS 해킹 대회 출제자 보고서(9번)</title>
			<link>http://dakuo.tistory.com/163</link>
			<description>&lt;P&gt;9번 문제 : 송영균 이병의 제대일을 구하세요.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile2.uf@147163054CE0CE045D825A.exe&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/exe.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; dakuo@2.exe&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;문제풀이------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;/P&gt;
&lt;p id=&quot;more163_0&quot; class=&quot;moreless_fold&quot;&gt;&lt;span style=&quot;cursor: pointer;&quot; onclick=&quot;toggleMoreLess(this, &#039;163_0&#039;,&#039;문제 풀이 보기&#039;,&#039;접기&#039;); return false;&quot;&gt;문제 풀이 보기&lt;/span&gt;&lt;/p&gt;&lt;div id=&quot;content163_0&quot; class=&quot;moreless_content&quot; style=&quot;display: none;&quot;&gt;9번 문제 :&lt;br /&gt;
&lt;br /&gt;1. 출제의도 :&lt;br /&gt;
이문제를 낸 이유는&lt;br /&gt;
리버싱을 할때 분석만이 다가 아니라&lt;br /&gt;
적절한 프로그램을 코딩해서 풀수도 있다는(Brute Foces 이용)것을 보여주기 위해 출제했습니다.&lt;br /&gt;
이문제는&amp;nbsp;심플스(Simples) 18번 문제를 표절해서 만들었습니다...... ㅎ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;2. 문제풀이 :&lt;br /&gt;
&lt;br /&gt;프로그램을 실행시키면&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile9.uf.tistory.com/original/2032E0034CE0CFA84BEC3C&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile9.uf.tistory.com/image/2032E0034CE0CFA84BEC3C&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;9-1.jpg&quot; height=&quot;324&quot; width=&quot;552&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
와 같이 콘솔창 하나와 메시지 박스 하나가 떠있습니다.&lt;br /&gt;
&lt;br /&gt;메시지 박스의 확인 버튼을 누르게 되면 날짜가 하나씩 증가합니다.&lt;br /&gt;
&lt;br /&gt;이문제는&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;1. 리버싱 수행단계를 거칠필요 없이 바로 Brute Force 툴을 만들거나 (자동으로 확인 버튼을 클릭하는)&lt;br /&gt;
&lt;br /&gt;2. 디버거로 날짜를 비교하는 구문을 찾아내면 될것 같습니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
1번방법 :&lt;br /&gt;
&lt;br /&gt;FindWindow 함수로 메시지 박스의 핸들값을 얻어낸후&lt;br /&gt;
FindWindowEx 함수로 버튼의 핸들값과&amp;nbsp;&amp;nbsp;&amp;nbsp; 텍스트의 핸들값(&quot;0일 후인가???&quot; 부분)을 알아냅니다.&lt;br /&gt;
&lt;br /&gt;그후 SendMessage 를 이용하여 텍스트의 내용을 WM_GETTEXT 로 얻어오고&lt;br /&gt;
BM_CLICK 을 이용해 버튼을 클릭합니다.&lt;br /&gt;
&lt;br /&gt;소스입니다.&lt;br /&gt;
(중간중간에 sleep 를 써준건 메시지 박스가 뜨는 시간이나 메시지를 보내는 시간을 고려하여&amp;nbsp;&lt;br /&gt;
&amp;nbsp;안정되게 프로그램을 돌리기 위하여 동기화(저질수준...)를 해준겁니다)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile7.uf@157257134CE0D49B42A4FE.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; bruteforce_main.cpp&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
위 소스를 컴파일 하여 프로그램을 돌리면 답이 나오는걸 알 수가 있습니다.&lt;br /&gt;
(저희 동아리 애들 대부분은&lt;br /&gt;
이문제를 마우스 커서를 움직여 버튼을 클릭하는 그런 게임용 매크로를 써서 풀더군요. ㅠㅠㅠ)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
2번방법 :&lt;br /&gt;
&lt;br /&gt;디버깅하여 날짜를 비교하느 구문을 찾아 답을 구하는 방법입니다.&lt;br /&gt;
&lt;br /&gt;올리디버거를 실행시킵니다.(OllyDbg)&lt;br /&gt;
&lt;br /&gt;메시지 박스가 생성되므로 Back to User 를 이용해보겠습니다.&lt;br /&gt;
(유저가 실행한 영역까지 코드를 진행시키는 기법입니다)&lt;br /&gt;
&lt;br /&gt;Run을 하신 후 Pause 를 걸고 Alt + F9를 눌러 Back to user 를 겁니다.(후측 하단에 Back to user 표시)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile24.uf.tistory.com/original/1957E1114CE0DA536947BE&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile24.uf.tistory.com/image/1957E1114CE0DA536947BE&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;9-2.jpg&quot; height=&quot;143&quot; width=&quot;471&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;어랏?? 근데 메시지 박스가 클릭이 안됩니다.&lt;br /&gt;
&lt;br /&gt;여기서 멀티쓰레드로 구현됬다는걸 알수가 있습니다.&lt;br /&gt;
(올리디버거는 하나의 쓰레드 밖에 트레이싱 할수 없습니다.&lt;br /&gt;
&amp;nbsp;지금 우리가 보고 있는 쓰레드는 메시지 박스를 생성하는 쓰레드가 아니라는것을 알수 있습니다.)&lt;br /&gt;
&lt;br /&gt;이럴땐 Executable Module 기법을 사용합니다.&lt;br /&gt;
(실행 가능한 모듈을 골라서 중요한 코드에 BreakPoint 를 걸어놓음으로써&lt;br /&gt;
해당 코드가 실행될 때에 제어권을 올리디버거로&amp;nbsp;받아 문제를 해결할 수 있는 기법입니다)&lt;br /&gt;
&lt;br /&gt;Restart (Ctrl + F2)를 하신 후 메뉴 아이콘에 E를 눌러줍니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile29.uf.tistory.com/original/135740114CE0DA823F4D4E&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile29.uf.tistory.com/image/135740114CE0DA823F4D4E&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;9-3.jpg&quot; height=&quot;216&quot; width=&quot;588&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
위의 &lt;A href=&quot;mailto:dakuo@2.exe&quot;&gt;dakuo@2.exe&lt;/A&gt; 모듈을 클릭합니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile7.uf.tistory.com/original/1307260B4CE0DB85421028&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile7.uf.tistory.com/image/1307260B4CE0DB85421028&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;9-4.jpg&quot; height=&quot;675&quot; width=&quot;634&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&amp;nbsp;2개의 MessageBoxW 함수 호출문이 나오는데 &lt;br /&gt;
&lt;br /&gt;1번째는 잘모르겠고&amp;nbsp;2번째는 성공한 메시지 인거 같습니다.&lt;br /&gt;
&lt;br /&gt;여기서는 첫번째 메시지 박스가 더 중요해보입니다.&lt;br /&gt;
&lt;br /&gt;그 이유는 성공메시지로 흐름을 점프 하는건 아무런 의미가 없습니다.&lt;br /&gt;
&lt;br /&gt;(WaitForSingObject 로 메시지 박스 호출을 완전히 마친 쓰레드가 종료될까지 기다린 후&lt;br /&gt;
&amp;nbsp;최종 날짜값을 받아서 출력해주기 때문)&lt;br /&gt;
&lt;br /&gt;따라서 제대일을 매번 출력해주는것으로 보이는 첫번째 메시지 박스 호출문에 BP (BreakPoint)를 걸고&lt;br /&gt;
&lt;br /&gt;실행해보겠습니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile4.uf.tistory.com/original/1960BA0F4CE0DD544D2806&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile4.uf.tistory.com/image/1960BA0F4CE0DD544D2806&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;9-5.jpg&quot; height=&quot;369&quot; width=&quot;619&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
0040101B&amp;nbsp;&amp;nbsp; .&amp;nbsp; 8B3D 2CA14000 MOV EDI,DWORD PTR DS:[&amp;lt;&amp;amp;USER32.MessageBo&amp;gt;;&amp;nbsp; USER32.MessageBoxW&lt;br /&gt;
: MessageBoxW 의 함수 주소를 EDI 에 옮깁니다.&lt;br /&gt;
&lt;br /&gt;PUSH ECX&lt;br /&gt;
PUSH 0&lt;br /&gt;
CALL EDI&lt;br /&gt;
: 파라미터를 PUSH 한 후 EDI 즉, MessageBoxW 함수를 CALL 합니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
CMP EAX, 1838&lt;br /&gt;
MOV DWORD PTR DS:[40D9E8], EAX&lt;br /&gt;
JNZ SHORT dakuo@2.00401021&lt;br /&gt;
: EAX와 1838값을 비교한후 JNZ 즉, 0이 아니면 위로 돌아갑니다. 이후 이 루틴이 반복됩니다.&lt;br /&gt;
&lt;br /&gt;감이 오시나요????&lt;br /&gt;
EAX값이 1838이 안되면 계속 메시지가 반복되서 출력됩니다.&lt;br /&gt;
1838은 Hex값입니다.&amp;nbsp;&amp;nbsp; Dec으로 바꾸면 답이되겠네요 ㅎ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;3. 문제소스&lt;br /&gt;
&lt;br /&gt;소스를 보시면 디버깅을 약간 어렵게 하기 위해 멀티 쓰레드로 구현했습니다.&lt;br /&gt;
쓰레드 수를 더 늘리고 암호화를 해서&amp;nbsp;꼬아 놓을까 하다가 그냥 참았습니다.ㅋ&lt;br /&gt;
&lt;br /&gt;프로그램의 흐름은&lt;br /&gt;
1. 쓰레드를 하나 만든다.&lt;br /&gt;
2. 만든 쓰레드에서 메시지 박스를 호출한다.&lt;br /&gt;
3. 메인 쓰레드는 만들어진 쓰레드가 종료되길 기다리다가&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 쓰레드가 종료되고 나면&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 날짜값을 성공메시지에 담아서 출력한다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile29.uf@122E690B4CE0E0560E2526.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; dakuo@2_main.cpp&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-163-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-163-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-163-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Reverse Engineering</category>
			<category>Back to User</category>
			<category>BM_CLICK</category>
			<category>brute force</category>
			<category>Executable Modules</category>
			<category>FindWindow</category>
			<category>FIndWindowEx</category>
			<category>IGRUS</category>
			<category>OllyDbg</category>
			<category>SendMessage</category>
			<category>simples</category>
			<category>simples 18</category>
			<category>WM_GETTEXT</category>
			<category>디버깅</category>
			<category>멀티쓰레드</category>
			<category>메시지 박스</category>
			<category>브루트 포스</category>
			<category>심플스</category>
			<category>심플스 18</category>
			<category>쓰레드</category>
			<category>올리디버거</category>
			<category>트레이싱</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/163</guid>
			<comments>http://dakuo.tistory.com/163#entry163comment</comments>
			<pubDate>Mon, 15 Nov 2010 16:28:05 +0900</pubDate>
		</item>
		<item>
			<title>제2회 IGRUS 해킹 대회 출제자 보고서(6번)</title>
			<link>http://dakuo.tistory.com/162</link>
			<description>&lt;P&gt;6번 문제 :&amp;nbsp;&lt;A href=&quot;mailto:dakuo@.exe&quot;&gt;dakuo@.exe&lt;/A&gt; 를 실행시켜서 답을 구하세요.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile25.uf@18408B274CE0B80B48C617.7z&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; dakuo@.exe.7z&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
문제풀이------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;/P&gt;
&lt;p id=&quot;more162_0&quot; class=&quot;moreless_fold&quot;&gt;&lt;span style=&quot;cursor: pointer;&quot; onclick=&quot;toggleMoreLess(this, &#039;162_0&#039;,&#039;문제 풀이 보기&#039;,&#039;접기&#039;); return false;&quot;&gt;문제 풀이 보기&lt;/span&gt;&lt;/p&gt;&lt;div id=&quot;content162_0&quot; class=&quot;moreless_content&quot; style=&quot;display: none;&quot;&gt;6번 문제 :&lt;br /&gt;
&lt;br /&gt;1. 출제의도 :&amp;nbsp;&lt;br /&gt;
이문제를 낸 이유는&lt;br /&gt;
리버싱을 할때 선행 단계들을 무시한 채&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( 리버싱 수행단계 : &lt;A href=&quot;http://dakuo.tistory.com/21&quot;&gt;http://dakuo.tistory.com/21&lt;/A&gt;&amp;nbsp;)&lt;br /&gt;
무작정 올리디버거에 넣고 보는&amp;nbsp;사람들에게&amp;nbsp;경고를 하기 위해서 출제했습니다.&lt;br /&gt;
(동적분석 없이 바로 정적분석으로 넘어가는)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;2. 문제풀이 :&lt;br /&gt;
&lt;br /&gt;리버싱 수행단계에 의해서&lt;br /&gt;
&lt;br /&gt;1. 바이너리 분석을 해본다.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HexWorkshop과 PEID 로 분석결과 별 특이점을 찾지 못했습니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile30.uf.tistory.com/original/1370AC024CE0C0D31F2026&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile30.uf.tistory.com/image/1370AC024CE0C0D31F2026&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;6-1.jpg&quot; height=&quot;221&quot; width=&quot;417&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;2. 문자열과 API, DLL 분석을 해본다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile25.uf.tistory.com/original/197257024CE0C20E10F689&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/197257024CE0C20E10F689&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;6-2.jpg&quot; height=&quot;236&quot; width=&quot;438&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
MSVCP80.dll 을 로딩하는걸로 봐서&lt;br /&gt;
비주얼 스튜디오&amp;nbsp;2005로 작성된 것 같습니다.&lt;br /&gt;
&lt;br /&gt;별다른 DLL을 로딩하지 않습니다. (별다른 API를 사용하지 않는다는 뜻도 됩니다.)&lt;br /&gt;
&lt;br /&gt;스트링스로 문자열을 뽑아봤습니다.&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile25.uf@137161044CE0C3D31570D0.txt&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/txt.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; str.txt&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
밑에서부터 분석해보면&lt;br /&gt;
&lt;br /&gt;success&lt;br /&gt;
pause&lt;br /&gt;
fail&lt;br /&gt;
hoky~Uyzoickf&lt;br /&gt;
zkyy}exn$~r~&lt;br /&gt;
C:\Windows\System32&lt;br /&gt;
a0c2e76eb0df8c5a83dc6ab90c875231&lt;br /&gt;
&lt;br /&gt;과 같은 의심스러운 문자열이 보이는데&amp;nbsp;더 자세한 사항은 알수가 없네요.&lt;br /&gt;
&lt;br /&gt;3. 모니터링을 통한&amp;nbsp;파일, 레지스트리,&amp;nbsp;네트워크 패킷 분석을 한다.&lt;br /&gt;
&lt;br /&gt;파일몬이 없어지고 프로세스 모니터가 생겼습니다. ( &lt;A href=&quot;http://dakuo.tistory.com/22&quot;&gt;http://dakuo.tistory.com/22&lt;/A&gt;&amp;nbsp;)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile30.uf.tistory.com/original/1329C3034CE0C8C440205D&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile30.uf.tistory.com/image/1329C3034CE0C8C440205D&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;6-3.jpg&quot; height=&quot;296&quot; width=&quot;604&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
위와 같이 &lt;A href=&quot;mailto:dakuo@.exe&quot;&gt;dakuo@.exe&lt;/A&gt; 는&lt;br /&gt;
C:\Windows\System32\password.txt 라는 파일을&amp;nbsp;Cretae 하며&amp;nbsp;&amp;nbsp; Write&amp;nbsp;한 후&amp;nbsp;&amp;nbsp; Close 합니다.&lt;br /&gt;
&lt;br /&gt;위의 경로의 파일을 열어보게 되면 답을 알수가 있습니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;3. 문제소스&lt;br /&gt;
&lt;br /&gt;소스를 보시면 알겠지만 디버깅을 방지하기 위해&amp;nbsp;여러 방법을 사용했습니다.&lt;br /&gt;
TLS CallABack 기법을 사용하여 main 함수 호출전에&amp;nbsp; IsDebugger 를 사용하여 디버깅을 방지했고&lt;br /&gt;
&lt;br /&gt;문자열의&amp;nbsp;자체 암호화를 통해 분석을 어렵게 했습니다.&lt;br /&gt;
물론 디버거로도 충분히 풀리는 문제이기는 하나&lt;br /&gt;
&lt;br /&gt;전 &quot;디버거 사용만이 리버싱의 전부가 아니다&quot;&amp;nbsp; 라는 말을 하고 싶었습니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
프로그램의 흐름은&lt;br /&gt;
1. TLS CallBack 으로 IsDebugger 호출한다.&lt;br /&gt;
2.&amp;nbsp;OPEN 클래스로 인코딩된 파일이름을 디코딩한 후&amp;nbsp;&amp;nbsp;&amp;nbsp; 파일을&amp;nbsp;Create&amp;nbsp;하고&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;인코딩된 암호를 디코딩 하여&amp;nbsp; 파일에 Write&amp;nbsp;하고 닫는다.&lt;br /&gt;
&lt;br /&gt;3.&amp;nbsp;사용자로부터 문자열을 입력받은 후&amp;nbsp; MD5 해쉬하여&amp;nbsp;&amp;nbsp; 암호의 MD5 값과 비교하여&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 맞으면 Success 를&amp;nbsp;&amp;nbsp; 틀리면&amp;nbsp;fail 을 출력한다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile1.uf@19016F054CE0CC2E1D846E.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; dakuo@_main.cpp&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile5.uf@19771D054CE0CC2E4ECB0C.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; md5.cpp&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile22.uf@16045C054CE0CC2E27106B.h&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; md5.h&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-162-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-162-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-162-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Reverse Engineering</category>
			<category>API</category>
			<category>dll</category>
			<category>HexWorkshop</category>
			<category>IGRUS</category>
			<category>isDebugger</category>
			<category>MD5</category>
			<category>PEid</category>
			<category>Process Monitor</category>
			<category>TLS Callback</category>
			<category>동적분석</category>
			<category>리버싱 수행단계</category>
			<category>모니터링</category>
			<category>문자열</category>
			<category>바이너리 분석</category>
			<category>정적분석</category>
			<category>해킹 대회</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/162</guid>
			<comments>http://dakuo.tistory.com/162#entry162comment</comments>
			<pubDate>Mon, 15 Nov 2010 15:03:06 +0900</pubDate>
		</item>
		<item>
			<title>차세대 보안전문가 포럼 보안 특강 5탄 루트킷 탐지 기법 후기.</title>
			<link>http://dakuo.tistory.com/161</link>
			<description>&lt;DIV class=fr&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&lt;FONT color=#3a32c3&gt;&lt;SPAN style=&quot;FONT-SIZE: 18pt&quot;&gt;보안실무자를 위한 보안특강...&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV id=tbody class=&quot;tbody m-tcol-c&quot;&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8&quot;&gt;&amp;nbsp;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 14pt&quot;&gt;보안 특강 5탄 주제: 루트킷 탐지 기법&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 14pt&quot;&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;- 강사: 노용환, FSK시큐리티 연구팀장(somma, Blog: &lt;A href=&quot;http://somma.egloos.com/&quot; target=_blank&gt;http://somma.egloos.com&lt;/A&gt;)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;이번 특강에서는 악성코드에서 많이 사용되는 루트킷 기술을 설명하고 이를 탐지하는 방법을 FSK시큐리티의 일명 somma로 잘 알려진 노용환 연구팀장님께서 쉽게 시연을 통해 설명합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8&quot;&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;1. 일시: 2&lt;FONT color=#ff0000&gt;010년 11월 10일 수요일 저녁 7시 ~ 9시 30분&lt;/FONT&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;2. 장소: 삼양사 본관 1층 강당 (1호선 종로5가역 하차, 1번 출구 도보 2분)&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;3. 대상: 국방/공공/민간/교육 보안실무담당자,&amp;nbsp;구직자, 학생 등 (난이도: 초/중)&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;4. 참가비: &lt;FONT color=#ff0000&gt;무료 (선착순 100명)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;5. 주최: FSK시큐리티&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;6. 주관:&amp;nbsp;&lt;br /&gt;
&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - 한국정보기술연구원(KITRI) - &lt;/STRONG&gt;&lt;A href=&quot;http://www.kitri.re.kr/&quot; target=_blank&gt;&lt;STRONG&gt;http://www.kitri.re.kr&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;&amp;nbsp;&lt;br /&gt;
&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - EC-Council Korea 삼양데이타시스템 - &lt;/STRONG&gt;&lt;A href=&quot;http://www.syds.com/&quot; target=_blank&gt;&lt;STRONG&gt;http://www.syds.com&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - 차세대보안전문가포럼 - &lt;/STRONG&gt;&lt;A href=&quot;http://cafe.naver.com/ehakorea&quot; target=_blank&gt;&lt;STRONG&gt;http://cafe.naver.com/ehakorea&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;7. 미디어후원 : 전자신문 보안닷컴 (&lt;A href=&quot;http://www.boan.com/&quot; target=_blank&gt;http://www.boan.com&lt;/A&gt;) &lt;br /&gt;
&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8&quot; align=left&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;9. 참가신청: 02-740-7553, &lt;/SPAN&gt;&lt;/STRONG&gt;&lt;A href=&quot;mailto:ceh@syds.com&quot; target=_blank&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;ceh@syds.com&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;- 차세대보안전문가포럼(&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;A href=&quot;http://cafe.naver.com/ehakorea&quot; target=_blank&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;http://cafe.naver.com/ehakorea&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;) 회원가입은 필수입니다.&lt;br /&gt;
&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; - 이메일로 네이버아이디/성명/소속/이메일/휴대폰번호를 작성해서 보내주세요.&lt;br /&gt;
&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; - 이메일보내시고 이 게시글 덧글에 신청했다고 글 남겨주세요.&lt;br /&gt;
&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;- 이 게시글을 개인블로그, 타 카페에 퍼가시는 것 적극 환영합니다^^&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr&gt;&lt;STRONG&gt;&lt;FONT color=#3a32c3&gt;&lt;SPAN style=&quot;FONT-SIZE: 14pt&quot;&gt;* 특강 주요 내용 :&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE style=&quot;MARGIN-RIGHT: 0px&quot; dir=ltr&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;- IDT Hook, SSDT Hook, SYSENTER Hook, DKOM의 기본 원리&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;-&amp;nbsp;샘플 루트킷 소스코드 설명 및 시연&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;- 루트킷 탐지 기법의 원리&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;- 커널 메모리 분석을 통한 루트킷 탐지&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 14pt&quot;&gt;&lt;STRONG&gt;&lt;FONT color=#3a32c3&gt;&lt;br /&gt;
&lt;br /&gt;* 2010년 보안특강 일정 (예정)&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&lt;/P&gt;
&lt;TABLE style=&quot;WIDTH: 693px; HEIGHT: 151px&quot; border=0 cellSpacing=1 cellPadding=0 width=693 bgColor=#b7bbb5 height=151&gt;
&lt;TBODY&gt;
&lt;TR bgColor=#ffffff&gt;
&lt;TD width=224&gt;
&lt;P style=&quot;MARGIN-RIGHT: 0px&quot; dir=ltr align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;STRONG&gt;일자&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD width=224&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;특강주제&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD width=224&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;강사&lt;/SPAN&gt; : SH정보시스템&lt;/STRONG&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR bgColor=#ffffff&gt;
&lt;TD&gt;
&lt;P style=&quot;MARGIN-RIGHT: 0px&quot; dir=ltr align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;10/13 (수) - 마감&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;디지털포렌식 : 데이터복구기법의 이해&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;김태일&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR bgColor=#ffffff&gt;
&lt;TD&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;FONT color=#000000&gt;10/27 (수) - 마감&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;FONT color=#000000&gt;&amp;nbsp;VOIP 해킹 기법&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;FONT color=#000000&gt;주한익&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR bgColor=#ffffff&gt;
&lt;TD&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;11/10 (수) - 오픈&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;루트킷 탐지 기법 &lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;
&lt;P align=center&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;노용환&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR bgColor=#ffffff&gt;
&lt;TD&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;11/27 (토)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;(유료)&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;1. 개인정보보호법/PIMS&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;2. 백트랙을 이용한 모의해킹&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;3. 디지털포렌식 : USB수사기법&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;김휘영&lt;/SPAN&gt;&lt;/P&gt;
&lt;P align=center&gt;최진원&lt;/SPAN&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;김태일&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P style=&quot;LINE-HEIGHT: 1.8; MARGIN-RIGHT: 0px&quot; dir=ltr align=left&gt;&amp;nbsp;* 참고로, 11/27 유료 보안특강은 오후 1시부터 6시까지 개최 예정 (참가비는 약간 변동예정입니다. 비용이 좀 발생하는군요ㅠㅠ)&lt;br /&gt;
&lt;STRONG style=&quot;PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 7px; PADDING-TOP: 0px&quot;&gt;[출처]&lt;/STRONG&gt; &lt;A href=&quot;http://cafe.naver.com/ehakorea/5878&quot; target=_blank&gt;보안특강 5탄: 루트킷 탐지 기법(11/10) (차세대 보안전문가 포럼)&lt;/A&gt; &lt;SPAN style=&quot;PADDING-BOTTOM: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 7px; PADDING-TOP: 0px&quot;&gt;|&lt;/SPAN&gt;&lt;STRONG style=&quot;PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 7px; PADDING-TOP: 0px&quot;&gt;작성자&lt;/STRONG&gt; &lt;A href=&quot;http://cafe.naver.com/ehakorea.cafe?iframe_url=/CafeMemberNetworkView.nhn%3Fm=view%26memberid=jeong_woong&quot; target=_blank&gt;제이손&lt;/A&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
여기 보안특강 5탄에 참가했었는데요.&lt;br /&gt;
&lt;br /&gt;와 진짜 감탄했습니다.&lt;br /&gt;
&lt;br /&gt;Somma 님께서 강의를 하셨는데 &lt;br /&gt;
&lt;br /&gt;강의는 루트킷에 대한 분류를 시작&lt;br /&gt;
(루트킷에 특성에 따라&amp;nbsp; 1세대 루트킷 :&amp;nbsp; 파일을 직접 변조&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2세대 루트킷 : 메모리 영역에서 변조 (코드섹션 :&amp;nbsp;값이 변하면 안되는곳을 변조)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 3세대 루트킷 : 메모리 영역에서 변조 (데이터섹션 : 값이 변해도 되는곳을 변조) )&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
으로 해서 윈도우 커널쪽으로 깊이 하셨는데요.&lt;br /&gt;
&lt;br /&gt;강의하시다가 기반 지식에 대해 질문했을때&lt;br /&gt;
&lt;br /&gt;그때 강의들으러 간 사람들이&amp;nbsp;좀 어색하니까 대답을 잘 안해주셔서 &lt;br /&gt;
(열심히 대답을 하고 싶었는데&amp;nbsp;머랄까?&amp;nbsp;&amp;nbsp; 같이 듣는 사람들이 &quot;잰 먼데 나대?&quot; 이러실까봐 소심해서 대답은 못하고&lt;br /&gt;
초롱초롱한 눈빛을 쏴드렸는데 못보셨나봐요 ㅋㅋㅋㅋㅋ)&lt;br /&gt;
&lt;br /&gt;다 모르는걸로 가정하고 설명하셔서 애초에 방향과는 좀 틀어졌지만&lt;br /&gt;
&lt;br /&gt;전 진짜 재밌었고 많은걸 배운거 같습니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
특히, 강의 하신내용중에&lt;br /&gt;
&lt;br /&gt;후킹(hooking)과 코드 인젝션(code injection)에 대해서 설명해주셨는데&lt;br /&gt;
&lt;br /&gt;전 DLL 인젝션 기법은 많이 들어봤지만&lt;br /&gt;
&lt;br /&gt;쓰레드만을 이용해서 인젝션 하는 방법은 처음 알았습니다.&lt;br /&gt;
&lt;br /&gt;그리고 윈도우 프로세스를 이용하여 여러가지를 할수 있다는 것과&lt;br /&gt;
(csrss 를 이용한 디버깅 방지는 정말 놀라웠습니다 ㅎㄷㄷ)&lt;br /&gt;
&lt;br /&gt;그리고 후킹도&amp;nbsp;그렇게 로우쪽으로 내려간 후킹은 처음 알았고요.&lt;br /&gt;
(제가 한 후킹은&amp;nbsp;네이트온 2차보안에 막히는 유저레벨 초짜 후킹 ㅋㅋㅋㅋ)&lt;br /&gt;
&lt;br /&gt;처음에 보안공부를 리버싱과 윈시프 쪽으로 한 저로서는 &lt;br /&gt;
&lt;br /&gt;가뜩이나 관심분야인데&amp;nbsp;&amp;nbsp; 그렇게 멋진 지식과 모습을 보여주셔서 &lt;br /&gt;
&lt;br /&gt;더욱더 공부에 박차를 가할수 있을거 같습니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
그리고 하신 말씀중에&lt;br /&gt;
&lt;br /&gt;&quot;로우 vs 로우의 싸움이다.&quot;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp; &quot;아이디어는 아는만큼 나온다.&quot;&lt;br /&gt;
&lt;br /&gt;캬~~~~&amp;nbsp;정말 가슴에 와닿네요.&lt;br /&gt;
&lt;br /&gt;앞으로 C#같은건 저리 차버리고 어셈과 커널에 뼈를 묻겠습니다.&lt;br /&gt;
&lt;br /&gt;진정한 프로그래머는 시스템 프로그래머죠/.ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ&lt;br /&gt;
&lt;br /&gt;이날 멋진 강의를 해주신 Somma 님과&amp;nbsp;&amp;nbsp;&amp;nbsp; 무료로 자리를 마련해주신 차세대 보안전문가 포럼에 감사드립니다.&lt;br /&gt;
(ps. Somma 님 블로그에서 공부 열심히 할께요. ㅋ)&lt;br /&gt;
&lt;br /&gt;+ 11월 27일에 하는 보안특강&amp;nbsp; 유료지만 학생 할인 해주신다던데&lt;br /&gt;
&lt;br /&gt;꼭 가야겠습니다 ㅎㅎㅎㅎㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;백트랙 엄청 재밌을꺼 같아요 ㅎㅎㅎㅎㅎㅎ&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-161-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-161-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-161-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<category>dll</category>
			<category>DLL 인젝션</category>
			<category>somma</category>
			<category>강의</category>
			<category>노용환</category>
			<category>로우</category>
			<category>루트킷 탐지</category>
			<category>보안특강</category>
			<category>삼양사</category>
			<category>시스템 프로그래밍</category>
			<category>어셈</category>
			<category>윈도우 커널</category>
			<category>차세대 보안전문가 포럼</category>
			<category>커널</category>
			<category>후기</category>
			<category>후킹</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/161</guid>
			<comments>http://dakuo.tistory.com/161#entry161comment</comments>
			<pubDate>Mon, 15 Nov 2010 07:31:33 +0900</pubDate>
		</item>
		<item>
			<title>OSI 7계층(Layer)과 TCP/IP 4계층</title>
			<link>http://dakuo.tistory.com/160</link>
			<description>&lt;P&gt;OSI 7계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TCP/IP&amp;nbsp;4계층&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7. 애플리케이션 계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 애플리케이션 서비스가 진행되는 계층이다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HTTP, SMTP, 등과 같은 애플리케이션 프로토콜이 실행된다.&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
6. 프레젠테이션 계층&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 분산되어 온 데이터를 재조합하여 표현하거나&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 데이터를 보내기 좋게 조각낸다.&lt;/P&gt;
&lt;P&gt;5. 세션계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 연결세션에서 에러를 복구하거나 데이터를 교환하며 연결을 유지한다&lt;/P&gt;
&lt;P&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4. 트랜스포트 계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 데이터를 상대에게 보낸다. TCP, UDP 프로토콜이 있다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TCP : 데이터의 신뢰성을 중시한다.(상대가 데이터의 수신이 안됬거나&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;잘못된 데이터가 갔을경우 재전송한다)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;UDP : 데이터의 전송속도를 중시한다.(상대의 수신여부는 고려하지 않는다)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;스트리밍 서비스 등에 사용&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3. 네트워크 계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 프로토콜 IP&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;어떤 경로를 통해 상대에게 빠르고 안전하게 데이터를 전송할지를 결정&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2. 데이터 링크 계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 서로 다른 네트워크 장비들의 차이를 흡수한다.&lt;/P&gt;
&lt;P&gt;1. 물리 계층&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 데이터를 신호로 변경하여 케이블 등을 통해 전송&lt;/P&gt;
&lt;P&gt;&lt;br /&gt;
가운데에 쓴건 OSI 와 TCP/IP 의 공통계층이다.&lt;br /&gt;
OSI 7계층이 먼저 나왔으나&amp;nbsp;&amp;nbsp;OSI 7계층을 참조해 만든 TCP/IP가 국제표준으로 등록되었다.&amp;nbsp;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-160-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-160-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-160-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Networking</category>
			<category>HTTP</category>
			<category>ip</category>
			<category>Layer</category>
			<category>Network</category>
			<category>osi</category>
			<category>OSI 7계층</category>
			<category>TCP</category>
			<category>TCP/IP</category>
			<category>TCP/IP 4계층</category>
			<category>UDP</category>
			<category>계층</category>
			<category>네트워크</category>
			<category>네트워크 게층</category>
			<category>데이터 링크</category>
			<category>물리</category>
			<category>세션</category>
			<category>애플리케이션</category>
			<category>트랜스포트</category>
			<category>프레젠테이션</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/160</guid>
			<comments>http://dakuo.tistory.com/160#entry160comment</comments>
			<pubDate>Mon, 15 Nov 2010 06:17:34 +0900</pubDate>
		</item>
		<item>
			<title>C로짠 Client Windows Socket 소스</title>
			<link>http://dakuo.tistory.com/159</link>
			<description>&lt;P&gt;C로짠 Client Windows Socket 소스입니다.&lt;br /&gt;
&lt;br /&gt;#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;winsock2.h&amp;gt;&lt;br /&gt;
#pragma comment(lib, &quot;ws2_32.lib&quot;)&lt;br /&gt;
#define IP &quot;127.0.0.1&quot;&lt;br /&gt;
#define PORT 80&lt;/P&gt;
&lt;P&gt;int main()&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WSADATA wsaData;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SOCKET client;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SOCKADDR_IN serveraddr;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; char buf[1024];&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;WSAStartup(0x0202, &amp;amp;wsaData); &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;WSAStartup : %d\n&quot;, WSAGetLastError()); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; client = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;socket : %d\n&quot;, WSAGetLastError());&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; serveraddr.sin_family = AF_INET;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; serveraddr.sin_port = htons(PORT);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; serveraddr.sin_addr.S_un.S_addr = inet_addr(IP); &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; connect(client, (SOCKADDR*)&amp;amp;serveraddr, sizeof(serveraddr));&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;memset(buf, 0, 1024);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; recv(client, buf, 1024, 0);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;printf(&quot;echo data : \n%s\n&quot;, buf);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;WSACleanup();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; system(&quot;pause&quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile23.uf@2071A5274CE913C6558BD5.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; socket.cpp&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-159-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-159-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-159-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Network Programming</category>
			<category>C</category>
			<category>client</category>
			<category>socket</category>
			<category>windows</category>
			<category>소스</category>
			<category>소켓 프로그래밍</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/159</guid>
			<comments>http://dakuo.tistory.com/159#entry159comment</comments>
			<pubDate>Mon, 15 Nov 2010 05:37:20 +0900</pubDate>
		</item>
		<item>
			<title>Java 로 짠 Raw Socket 소스</title>
			<link>http://dakuo.tistory.com/158</link>
			<description>&lt;P&gt;웹서버에게 요청을 웹브라우저가 아닌 프로그램으로 해야될 경우가 있습니다.&lt;br /&gt;
그럴때 사용하는 프로그램에 대한 소스입니다. (Raw Socket)&lt;br /&gt;
&lt;br /&gt;import java.net.*;&lt;br /&gt;
import java.io.*;&lt;/P&gt;
&lt;P&gt;class raw_socket&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static void main(String[] args) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Construct data&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;String data = URLEncoder.encode(&quot;key1&quot;, &quot;UTF-8&quot;) + &quot;=&quot; + URLEncoder.encode(&quot;value1&quot;, &quot;UTF-8&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data += &quot;&amp;amp;&quot; + URLEncoder.encode(&quot;key2&quot;, &quot;UTF-8&quot;) + &quot;=&quot; + URLEncoder.encode(&quot;value2&quot;, &quot;UTF-8&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Create a socket to the host&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;String hostname = &quot;&quot;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int port = 0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;InetAddress addr = InetAddress.getByName(hostname);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Socket socket = new Socket(addr, port);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Send header&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String path = &quot;&quot;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //세부주소.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), &quot;UTF8&quot;));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;wr.write(&quot;POST &quot;+path+&quot; HTTP/1.0\r\n&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wr.write(&quot;Content-Length: &quot;+data.length()+&quot;\r\n&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wr.write(&quot;Content-Type: application/x-www-form-urlencoded\r\n&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wr.write(&quot;\r\n&quot;);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Send data&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wr.write(data);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wr.flush();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get response&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream()));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String line;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;while ((line = rd.readLine())!= null) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Process line...&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;wr.close();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rd.close();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception e) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println(&quot;error&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile28.uf@13195E0D4CE047D01290E9.java&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; raw_socket.java&lt;/a&gt;&lt;/div&gt;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-158-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-158-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-158-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Network Programming</category>
			<category>Java</category>
			<category>raw</category>
			<category>Raw Socket</category>
			<category>socket</category>
			<category>소스</category>
			<category>소켓</category>
			<category>소켓 프로그래밍</category>
			<category>요청</category>
			<category>웹서버</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/158</guid>
			<comments>http://dakuo.tistory.com/158#entry158comment</comments>
			<pubDate>Mon, 15 Nov 2010 05:33:50 +0900</pubDate>
		</item>
		<item>
			<title>해킹 &amp; 보안 공부 가이드</title>
			<link>http://dakuo.tistory.com/156</link>
			<description>&lt;P&gt;원문 :&lt;br /&gt;
&lt;br /&gt;&quot;제가 주로 추천해드리는 방법은 우선 C언어 등의 프로그래밍 언어를 익히시는 것입니다. 그리고 나서는, 리눅스 시스템 프로그래밍 혹은 윈도우 시스템 프로그래밍 등의 시스템 의존적인 프로그래밍을 하게되면, 해당 시스템도 알 수 있고, 프로그래밍도 알 수 있고, 시스템에 대한 프로그래밍도 알 수 있는 효과가 있구요. 그렇게 되면, 어차피 해킹은 기반지식에 발상의 전환만 가미한거라고도 볼 수가 있기 때문에 관련 기술들을 학습하시는데에 큰 도움이 될거라고 생각됩니다. 책은, 요즘에 잘나온게 너무 많아서 한번 직접 서점에 가셔서 보시고, 꼭 두권 이상은 사시길 권해드립니다. 혹시라도 구매한 한권의 책이 안좋을 경우엔 공부에 상당한 지장을 줄 수도 있으니까요.&quot; - by hkpco&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;hkpco님의 말씀을&amp;nbsp;정리한 내용 :&lt;br /&gt;
&lt;br /&gt;주의 :&lt;br /&gt;
&lt;br /&gt;1. 여기에 적힌 책은&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 꼭 이책이 최고의 책이라는 것도 아니며, 단지 저한테 잘맞는 책이었을 뿐입니다. 오해 없으시기 바랍니다.&lt;br /&gt;
&lt;br /&gt;2. 해킹&amp;amp;보안 공부에서&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 이론중심의 공부가 우선 되어야 나중에 기법에서도 충분히 그 역량을 발휘할수 있다고 봅니다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 즉, 툴과 기법 위주의 공부가 지금 당장은 재밌고 과시할수 있고 써먹을수 있을지 모르지만,&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 하루하루&amp;nbsp;발전해 나가는 지금 현상황에서 얼마나 살아남을지는 불보듯 뻔한겁니다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 이론중심의 공부로 기반지식을&amp;nbsp;튼튼히 다져놓으시면&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 어느새 몰라보게 성장한 자신의 해킹실력도 볼수 있을것이라 생각됩니다.&lt;br /&gt;
&lt;br /&gt;3.&amp;nbsp;제가 아래에 만든 자료는 그저 참고일뿐입니다.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; 공부는 자기스스로 자기한테 맞게 하는거니까요.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile27.uf.tistory.com/original/1835042E4CAC89034E9A04&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile27.uf.tistory.com/image/1835042E4CAC89034E9A04&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;드로잉1.jpg&quot; height=&quot;620&quot; width=&quot;620&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile5.uf@1679A90F4CAC896B670034.pdf&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/pdf.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; 해킹커리큘럼.pdf&lt;/a&gt;&lt;/div&gt;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-156-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-156-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-156-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>hkpco Gospel</category>
			<category>hkpco</category>
			<category>가이드</category>
			<category>공부</category>
			<category>공부 가이드</category>
			<category>보안</category>
			<category>커리큘럼</category>
			<category>해킹</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/156</guid>
			<comments>http://dakuo.tistory.com/156#entry156comment</comments>
			<pubDate>Wed, 06 Oct 2010 23:36:44 +0900</pubDate>
		</item>
		<item>
			<title>100일 수련</title>
			<link>http://dakuo.tistory.com/155</link>
			<description>&lt;P&gt;무협지에 보면 주인공들이 100일 동안 굴이나 절에 들어가서 훈련만 하는 모습이 나오잖아요!!!!!&lt;br /&gt;
&lt;br /&gt;요새 공부가 더딘점을 반성하면서 &lt;br /&gt;
&lt;br /&gt;저도 오늘부터 100일동안 놀지 않고&amp;nbsp;웹서핑도 끊고 눈뜬 시간에 오로지 공부만 하며&lt;br /&gt;
&lt;br /&gt;사진에서 보이는 바와 같이&amp;nbsp;다음의 책들을 마스터할 생각입니다.&lt;br /&gt;
&lt;br /&gt;그리고 요새 블로깅이 뜸한 이유는 뭐랄까요 &lt;br /&gt;
&lt;br /&gt;제 블로그에 있는 자료중 대부분은 책에 있는 내용을 정리만 해서 썻을뿐입니다.&lt;br /&gt;
(책을 쓰신 저자분들께는 죄송합니다)&lt;br /&gt;
&lt;br /&gt;이래서는 타 블로그들과의 차별성도 없는 거 같고 &lt;br /&gt;
&lt;br /&gt;차라리 책내용을 깊게 익힌 후에 저만의 설명방법과 구성으로 재창조해서&amp;nbsp;블로깅 하는게 어떨까 구상중입니다.&lt;br /&gt;
&lt;br /&gt;그래서 당분간은 리버싱 강의(최근에 학교생활을 시작해서 좀 바뻐서 이것도 자주는 못올리겠네요)외의&lt;br /&gt;
&lt;br /&gt;그냥 간단한 내용만&amp;nbsp;블로깅 할거 같습니다.&lt;br /&gt;
&lt;br /&gt;다음은 제가 100일동 수련?(공부)할 책들입니다. ㅋㅋㅋ ㅠㅠㅠㅠ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile6.uf.tistory.com/original/163DF2344C886C266528A9&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile6.uf.tistory.com/image/163DF2344C886C266528A9&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;2010-09-05 21.08.27.jpg&quot; height=&quot;640&quot; width=&quot;480&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;/P&gt;&lt;br /&gt;
(유닉스 리눅스 명령어 사전,&amp;nbsp;&amp;nbsp; TCP/IP 소켓 프로그래밍, 리버싱 엔지니어링의 비밀을 파헤치다,&lt;br /&gt;
&amp;nbsp;RedHat Fedora&amp;nbsp; 서버 네트워크, windows&amp;nbsp; 구조와 원리 시리즈 3권, 후니의 쉽게쓴 시스코 네트워킹,&lt;br /&gt;
&amp;nbsp;리눅스 문제분석과 해결, API 정복 1,2권, 해킹, 침해사고 분석, 웹해킹 앤 보안 완벽가이드)&lt;br /&gt;
&lt;br /&gt;총합 13권...ㄷㄷ&amp;nbsp; 일주일에 한권씩 끝내야되네요 대충 ....ㄷㄷㄷㄷㄷ&lt;br /&gt;
&lt;br /&gt;꼭 다 이룰수 있기를. . . . . !!!!&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-155-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-155-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-155-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/155</guid>
			<comments>http://dakuo.tistory.com/155#entry155comment</comments>
			<pubDate>Thu, 09 Sep 2010 14:14:05 +0900</pubDate>
		</item>
		<item>
			<title>내 도메인(domain) 주소 가지기</title>
			<link>http://dakuo.tistory.com/154</link>
			<description>도메인 : 숫자로 된 IP 주소를 기억하고 알기 쉽게 영문으로 표기한 주소이다.&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 사용자가 도메인 주소를 요청하면 등록된 DNS 서버에서 해당 도메인 주소와 매핑된 IP 주소로 바꿔준다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;도메인 설정하기 :&lt;br /&gt;
&lt;br /&gt;&lt;A href=&quot;http://www.dyndns.com/&quot;&gt;http://www.dyndns.com/&lt;/A&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;위의 홈페이지에서 회원가입을 한다.&lt;br /&gt;
(Sign up -&amp;gt; free Sign up)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile9.uf.tistory.com/original/1222D70B4C66116A3E78B5&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile9.uf.tistory.com/image/1222D70B4C66116A3E78B5&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;domain.jpg&quot; height=&quot;682&quot; width=&quot;567&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
위의 정보들을 입력한 후 Add To Cart 를 눌러 등록한다.&lt;br /&gt;
(아래 부분은 사용할 서비스를 선택하는 것이다)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;이후부터의 도메인 설정방법은&amp;nbsp;다음과 같은&amp;nbsp;경우에 따라&amp;nbsp;다르다.&lt;br /&gt;
&lt;br /&gt;1. 고정 IP 사용자(일반 사용자)&lt;br /&gt;
&lt;br /&gt;2. 고정 IP 사용자(공유기 사용자)&lt;br /&gt;
&lt;br /&gt;3. 유동 IP 사용자&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;1. 고정&amp;nbsp;IP 사용자(일반 사용자) :&lt;br /&gt;
&lt;br /&gt;끝....&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
2.&amp;nbsp;고정 IP&amp;nbsp;사용자(공유기 사용자) :&lt;br /&gt;
&lt;br /&gt;시작 -&amp;gt; cmd -&amp;gt; ipconfig&lt;br /&gt;
&lt;br /&gt;게이트 웨이 주소를 확인한 후 웹브라우저를 실행한 후 주소창에 게이트 웨이 주소를 입력한다.&lt;br /&gt;
(공유기 설정창으로 이동)&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile4.uf.tistory.com/original/203FF2054C6612BB6A2D78&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile4.uf.tistory.com/image/203FF2054C6612BB6A2D78&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;domain 1-1.jpg&quot; height=&quot;407&quot; width=&quot;635&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
위와 같이 설정해준다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
3. 유동 IP 사용자 :&lt;br /&gt;
&lt;br /&gt;유동 IP 같은 경우에는 도메인 주소를 한가지 IP 주소로 매핑을 해줄수가 없다.(IP 주소가 바뀌므로)&lt;br /&gt;
&lt;br /&gt;&lt;A href=&quot;http://cdn.dyndns.com/windows/DynUpSetup.exe&quot;&gt;http://cdn.dyndns.com/windows/DynUpSetup.exe&lt;/A&gt;&lt;br /&gt;
&lt;br /&gt;위의 프로그램을 이용하면 시간마다 자신의 IP 주소를 DynDns 로 전송하여 설정한 도메인 주소와 매핑시켜준다.&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-154-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-154-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-154-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Networking</category>
			<category>Domain</category>
			<category>dyndns</category>
			<category>ip</category>
			<category>도메인</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/154</guid>
			<comments>http://dakuo.tistory.com/154#entry154comment</comments>
			<pubDate>Sat, 14 Aug 2010 12:58:08 +0900</pubDate>
		</item>
		<item>
			<title>죽백</title>
			<link>http://dakuo.tistory.com/152</link>
			<description>&lt;P&gt;삭막한 제 자취방에&lt;br /&gt;
&lt;br /&gt;식물을 키우기로 했어요 &lt;br /&gt;
&lt;br /&gt;저녁먹고 오면서 꽃집에&lt;br /&gt;
&lt;br /&gt;들려서 맘에 드는거 샀네요 . ㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile25.uf.tistory.com/original/1823E9154C5BFD895B4103&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/1823E9154C5BFD895B4103&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;p100806_002.jpg&quot; height=&quot;476&quot; width=&quot;635&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;/P&gt;&lt;br /&gt;
무럭무럭 자랐으면 좋곘네여 ㅎㅎㅎㅎㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;죽백 :&lt;br /&gt;
&lt;br /&gt;대나무를 닮은 광택이 나는 맑은 녹색잎의 난초과 식물로&lt;br /&gt;
&lt;br /&gt;반음지에서 자라며 해가 많은 곳에 두면 잎이 탄다.&lt;br /&gt;
&lt;br /&gt;물은 좋아하고 건조에 매우 약하다. 겉흙이 마르면 바로 물을 줘야 한다.&lt;br /&gt;
공중습도를 약간 습하게 관리하는 것이 좋다.&lt;br /&gt;
&lt;br /&gt;16~30도에서 잘자라며&amp;nbsp;추위에 약하므로 10도 이하에서 월동한다.&lt;br /&gt;
&lt;br /&gt;곰팡이균으로 잘죽는다.&amp;nbsp; 분에 통분이 잘되어야 하고 물빠짐이 아주 잘되어야 한다.&lt;br /&gt;
&lt;br /&gt;자웅이주이며 늦봄에 개화한다.&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-152-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-152-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-152-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<category>죽백</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/152</guid>
			<comments>http://dakuo.tistory.com/152#entry152comment</comments>
			<pubDate>Fri, 06 Aug 2010 21:26:21 +0900</pubDate>
		</item>
		<item>
			<title>이끼를 보고나서 !!~~</title>
			<link>http://dakuo.tistory.com/149</link>
			<description>&lt;P&gt;영화 이끼를 보고 나서 &lt;br /&gt;
&lt;br /&gt;같이 본 친구가 &lt;br /&gt;
&lt;br /&gt;아...... 역시 영화는 원작을 따라올수 없어 이러기에 (전 재밌게 봤기 때문에 왜그러는지 궁금해서)&lt;br /&gt;
&lt;br /&gt;집에서 원작을 봤습니다.&lt;br /&gt;
&lt;A href=&quot;http://cartoon.media.daum.net/series/list/ikki&quot;&gt;http://cartoon.media.daum.net/series/list/ikki&lt;/A&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
영화랑은 비교도 안되게 최고더군요...!!!!&lt;br /&gt;
&lt;br /&gt;섬세한 묘사며 긴장감이며&amp;nbsp;&amp;nbsp; 이장의 포스또한..&lt;br /&gt;
&lt;br /&gt;영화를 보며 이해가 안되던 것도 다 이해가 됬고&lt;br /&gt;
&lt;br /&gt;결말도 대단했고 (영화는 결말을 좀 바꾸었습니다)&lt;br /&gt;
&lt;br /&gt;정말 재밌게 봤습니다.&lt;br /&gt;
&lt;br /&gt;(그래도 영화 -&amp;gt; 웹툰 순서면 영화도 재밌습니다 ㅋㅋㅋ 다만&amp;nbsp;&amp;nbsp; 웹툰 -&amp;gt; 영화라면 비추요 ㅋㅋㅋ)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
그리고 특히나 진짜 마음에 와닿았던 말이 하나 있었습니다.&lt;br /&gt;
&lt;br /&gt;이장이 류목형에게 &lt;br /&gt;
&lt;br /&gt;왜 식사를 안하냐고 물으니까&lt;br /&gt;
&lt;br /&gt;류목형 : 몸이 무거워지면 생각이 게을러지죠. 그러면 죄가 끼어듭니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
이런 대목이 나오는데 &lt;br /&gt;
&lt;br /&gt;정말 공감갑니다.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 딱 공부해야지 마음을 독하게 먹었더라도 &lt;br /&gt;
&lt;br /&gt;배가 부르면&lt;br /&gt;
&lt;br /&gt;졸리고&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 눕고 싶&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 고 게임하고 싶고&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;쉬고 싶고&amp;nbsp;&amp;nbsp; 이런 죄가 끼어들더군요....&amp;gt;!&lt;br /&gt;
&lt;br /&gt;그래서 이제부터는&lt;br /&gt;
&lt;br /&gt;절대 배부르게 먹지 않을겁니다... 배고픔만 면하게끔.!!@&amp;nbsp;ㅋㅋㅋㅋㅋㅋㅋㅋ&lt;br /&gt;
&lt;br /&gt;(어머니 죄송해요 살은 안찌겠네여... ㅠ)&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-149-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-149-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-149-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/149</guid>
			<comments>http://dakuo.tistory.com/149#entry149comment</comments>
			<pubDate>Sat, 31 Jul 2010 00:29:37 +0900</pubDate>
		</item>
		<item>
			<title>리버싱 강의(reversing lecutre by dakuo) 1편</title>
			<link>http://dakuo.tistory.com/148</link>
			<description>&lt;P&gt;dakuo&amp;nbsp;reversing lecture 1편이 장장 6시간&amp;nbsp; 40여차례 이상의&amp;nbsp;NG 끝에 완성되었습니다.&amp;nbsp; 목도 아프고 눈도 아프네여.&lt;br /&gt;
&lt;br /&gt;완성본은 13분짤...... ㄷㄷㄷㄷ&lt;br /&gt;
&lt;br /&gt;이런 강의제작이 처음이라 너무 설레고 오글오글 거려서&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;시작도 늦게 했고(준비는 지난주에&amp;nbsp;다됐지만)&lt;br /&gt;
&lt;br /&gt;오늘 하면서 발음도 엄청 버벅이고, 말도 꼬이고,&amp;nbsp;설명할 내용이 머리속에 떠오르지 않아 멍때리고 해서&lt;br /&gt;
&lt;br /&gt;수많은 NG끝에 드디어 완성되었네요.&amp;nbsp; 머 여러사람들에게 많은 도움이 됬으면 좋겠습니다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
p. s. 유튜브를 이용해서 올렸는데 유튜브가 2GB 용량제한에&amp;nbsp; 10분 길이제한이네요.....&lt;br /&gt;
&lt;br /&gt;제껀 37.8메가에 13분짜리라 ....... 눈물을머금고&amp;nbsp; 2개로 짤랐습니다..... ㅠㅠㅠㅠ 다음엔 분량 맞춰서할께요 ㅠㅠㅠ&lt;br /&gt;
&lt;br /&gt;720P로 보시면 잘보입니다 ㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;문제파일 :&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile26.uf@132A36144C4EA1188B3B1B.exe&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/exe.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; abexcm1.exe&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;리버싱 1-1 :&lt;br /&gt;
&lt;br /&gt;&lt;object width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube-nocookie.com/v/CW0LVVnfjn4&amp;amp;hl=ko_KR&amp;amp;fs=1?hd=1&amp;amp;border=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube-nocookie.com/v/CW0LVVnfjn4&amp;amp;hl=ko_KR&amp;amp;fs=1?hd=1&amp;amp;border=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&amp;nbsp;&lt;br /&gt;
&lt;/P&gt;
&lt;P&gt;&lt;br /&gt;
리버싱 1-2 :&lt;br /&gt;
&lt;/P&gt;&lt;object width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube-nocookie.com/v/FXv7mSljSgY&amp;amp;hl=ko_KR&amp;amp;fs=1?hd=1&amp;amp;border=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube-nocookie.com/v/FXv7mSljSgY&amp;amp;hl=ko_KR&amp;amp;fs=1?hd=1&amp;amp;border=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-148-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-148-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-148-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Reversing</category>
			<category>dakuo</category>
			<category>Lecture</category>
			<category>reversing</category>
			<category>리버싱</category>
			<category>리버싱 강의</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/148</guid>
			<comments>http://dakuo.tistory.com/148#entry148comment</comments>
			<pubDate>Tue, 27 Jul 2010 16:06:35 +0900</pubDate>
		</item>
		<item>
			<title>올리디버거(OllyDBG)의 Executable Modules 을 통한 문제풀이</title>
			<link>http://dakuo.tistory.com/120</link>
			<description>&lt;P&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile2.uf@1610E3344C42BD2538E8DA.exe&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/blog/image/extension/exe.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; CrackMe_2.exe&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
올리디버거 창들 중에 Executable Modules 창이 있다.&lt;br /&gt;
&lt;br /&gt;현재 불러온 프로세스에서 실행중인 모듈들을 보여준다.&lt;br /&gt;
&lt;br /&gt;한&amp;nbsp;프로그램에서 여러개의 모듈(ex.&amp;nbsp;DLL 등)을 사용할 경우&lt;br /&gt;
&lt;br /&gt;올리디버거는 하나의&amp;nbsp;모듈만을 트레싱할 수 있기 때문에 제대로&amp;nbsp;분석할수가 없다.&lt;br /&gt;
&lt;br /&gt;따라서 Executable Modules 창을 이용해 실행 가능한 모듈을 골라서 중요한 코드에&lt;br /&gt;
&lt;br /&gt;BreakPoint 를 걸어놓음으로써 해당 코드가 실행될 때에 제어권을 올리디버거로&amp;nbsp;받아 문제를 해결할 수 있다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
일단 해당문제를 실행시켜보자. &lt;br /&gt;
&lt;br /&gt;Ezbeat 문제 패스워드 찾기&lt;br /&gt;
올바른 패스워를 찾으시오!&lt;br /&gt;
난이도 : ★☆☆☆☆&lt;br /&gt;
&lt;br /&gt;위의 메시지 박스가 뜨며 확인을 누르면 &lt;br /&gt;
&lt;br /&gt;콘솔창 하나가 뜨며 Input Password : 를 입력하라고 뜬다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
올리디버거로 프로그램을 오픈한다.&lt;br /&gt;
&lt;br /&gt;메시지 박스가 뜨므로 back to user mode 를 이용한다.&lt;br /&gt;
&lt;br /&gt;Run(F9)을 한다. 메시지 박스가 뜨면 pause(F12)를 한다.&lt;br /&gt;
&lt;br /&gt;back to user mode(Alt + F9)를 한 후 확인창을 누른다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
그러면 다음과 같은 코드로 이동한다.&lt;br /&gt;
&lt;br /&gt;00401149&amp;nbsp; |.&amp;nbsp; 57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH EDI&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ; /Style&lt;br /&gt;
0040114A&amp;nbsp; |.&amp;nbsp; 68 5CD34000&amp;nbsp;&amp;nbsp; PUSH CrackMe_.0040D35C&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ; |E&lt;br /&gt;
0040114F&amp;nbsp; |.&amp;nbsp; 68 80D34000&amp;nbsp;&amp;nbsp; PUSH CrackMe_.0040D380&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;; |Text = &quot;올바른 패스워드를 찾으시오!.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;난이도 : ★☆☆☆☆&quot;&lt;br /&gt;
00401154&amp;nbsp; |.&amp;nbsp; 51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH ECX&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ; |hOwner&lt;br /&gt;
00401155&amp;nbsp; |.&amp;nbsp; FF15 4CC14000 CALL DWORD PTR DS:[&amp;lt;&amp;amp;USER32.MessageBoxW&amp;gt;&amp;gt;; \MessageBoxW&lt;br /&gt;
0040115B&amp;nbsp; |.&amp;nbsp; 6A 03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; ; /ShowState = SW_SHOWMAXIMIZED&lt;br /&gt;
0040115D&amp;nbsp; |.&amp;nbsp; 68 40D34000&amp;nbsp;&amp;nbsp; PUSH CrackMe_.0040D340&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;; |c:\solve.exe&lt;br /&gt;
00401162&amp;nbsp; |.&amp;nbsp; FF15 18C04000 CALL DWORD PTR DS:[&amp;lt;&amp;amp;KERNEL32.WinExec&amp;gt;]&amp;nbsp; ; \WinExec&lt;/P&gt;
&lt;P&gt;위의 코드를 보면 WinExec 라는 WinAPI 가 보인다.&lt;br /&gt;
&lt;br /&gt;이 WinExec 함수는 CreateProcess 와 같이 프로세스를&amp;nbsp;생성하는 함수이다.&lt;br /&gt;
&lt;br /&gt;따라서&amp;nbsp;위의 3줄을 해석해보면&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;WinExec 함수를 사용하여 최대창으로(SW_SHOWMAXIMIZED) c:\solve.exe&amp;nbsp;를 실행시켜라라는 뜻이다.&lt;br /&gt;
&lt;br /&gt;즉, 우리는 분석하던 CrackMe_2.exe 프로세스가 아니라 solve.exe 프로세스를 분석해야 한다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
따라서 WinExec 함수까지 실행을 한후에 solve.exe 가 실행되면&lt;br /&gt;
&lt;br /&gt;Attach 로 solve.exe 프로세스를 올리디버거로 불러온다.&lt;br /&gt;
&lt;br /&gt;E창을 눌러 Executable Modules 창을 연다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile10.uf.tistory.com/original/1276B31E4C42E0A2A10EED&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/1276B31E4C42E0A2A10EED&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;rever18_1.jpg&quot; height=&quot;298&quot; width=&quot;635&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
맨 위의 solve 를 클릭한다. 실행영역에 올라온 코드들이다.&lt;br /&gt;
&lt;br /&gt;조금 아래로 가서 살펴보면&lt;br /&gt;
&lt;br /&gt;0040105C&amp;nbsp;&amp;nbsp; .&amp;nbsp; 68 3CD34000&amp;nbsp;&amp;nbsp; PUSH solve.0040D33C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp; ASCII &quot;Input Password : &quot;&lt;br /&gt;
00401061&amp;nbsp;&amp;nbsp; .&amp;nbsp; E8 28020000&amp;nbsp;&amp;nbsp; CALL solve.0040128E&lt;br /&gt;
00401066&amp;nbsp;&amp;nbsp; .&amp;nbsp; 83C4 08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ADD ESP,8&lt;br /&gt;
00401069&amp;nbsp;&amp;nbsp; .&amp;nbsp; E8 2F030000&amp;nbsp;&amp;nbsp; CALL solve.0040139D&lt;br /&gt;
0040106E&amp;nbsp;&amp;nbsp; .&amp;nbsp; 50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH EAX&lt;br /&gt;
0040106F&amp;nbsp;&amp;nbsp; .&amp;nbsp; 6A 63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH 63&lt;br /&gt;
00401071&amp;nbsp;&amp;nbsp; .&amp;nbsp; 8D55 90&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LEA EDX,DWORD PTR SS:[EBP-70]&lt;br /&gt;
00401074&amp;nbsp;&amp;nbsp; .&amp;nbsp; 52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH EDX&lt;br /&gt;
00401075&amp;nbsp;&amp;nbsp; .&amp;nbsp; E8 69070000&amp;nbsp;&amp;nbsp; CALL solve.004017E3&lt;br /&gt;
0040107A&amp;nbsp;&amp;nbsp; .&amp;nbsp; 83C4 0C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ADD ESP,0C&lt;br /&gt;
0040107D&amp;nbsp;&amp;nbsp; .&amp;nbsp; 6A 0E&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH 0E&lt;br /&gt;
&lt;br /&gt;정답으로 보이는 값이 보인다.&lt;br /&gt;
&lt;br /&gt;입력하면 congratulation~!&amp;nbsp;&amp;nbsp; 가 출력된다.&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-120-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-120-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-120-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Reverse Engineering</category>
			<category>crackme</category>
			<category>dll</category>
			<category>Executable</category>
			<category>Executable Modules</category>
			<category>OllyDbg</category>
			<category>reversing</category>
			<category>리버싱</category>
			<category>모듈</category>
			<category>쓰레드</category>
			<category>올리디버거</category>
			<category>프로세스</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/120</guid>
			<comments>http://dakuo.tistory.com/120#entry120comment</comments>
			<pubDate>Sun, 18 Jul 2010 23:54:22 +0900</pubDate>
		</item>
		<item>
			<title>음 제가 말이죠........;;;;</title>
			<link>http://dakuo.tistory.com/147</link>
			<description>&lt;P&gt;올해 제가 동아리에서 신입생 교육부장으로(벌써 4개월이 지났네요)&lt;br /&gt;
&lt;br /&gt;C와 리버싱을 가르쳤는데&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;아무래도 대학생이다 보니까 지역도 다르고,&amp;nbsp;수업시간도 다르고, 알바도 있고들 하니까&amp;nbsp;시간이 좀 잘안맞아서&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;못듣는 사람들이 많았고&lt;br /&gt;
&lt;br /&gt;그렇다고 제가 2번이상씩 할수도 없고&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;그래서 오래 생각해본 결과&lt;br /&gt;
&lt;br /&gt;인강으로 만들면 저도 나중에 기억잘안날때 글로 보는것보다 더 확실하게 기억할수 있고,&lt;br /&gt;
&lt;br /&gt;또 물론 기억에 오래 남을꺼 같고 ㅎㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
다른사람들도 제설명이 부족하겠지만 그래도 글보다는 더 이해가 잘될거 같고,&lt;br /&gt;
&lt;br /&gt;휴대하기도 편할꺼 같고 시간과 장소에 관계없이 볼수도 있고 해서&lt;br /&gt;
&lt;br /&gt;머 다운받는사람이 없을지도 모르지만 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ&lt;br /&gt;
&lt;br /&gt;만들어보려고 합니다. ㅎㅎㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;많은&amp;nbsp;응원과 질책 부탁드려요 ㅎㅎㅎ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
(반응이 좋으면 제가 아는 모든 지식을 다 인강으로 만들어볼 생각입니다 ㅎㅎㅎ)&lt;br /&gt;
&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-147-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-147-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-147-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/147</guid>
			<comments>http://dakuo.tistory.com/147#entry147comment</comments>
			<pubDate>Sat, 17 Jul 2010 03:28:39 +0900</pubDate>
		</item>
		<item>
			<title>webhacking.kr 17번 문제</title>
			<link>http://dakuo.tistory.com/146</link>
			<description>&lt;P&gt;Webhacking.kr 17번 문제를 클릭하면 다음과 같은 페이지가 뜬다.&lt;br /&gt;
&lt;br /&gt;&lt;/P&gt;
&lt;P&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile5.uf.tistory.com/original/114A23334C4093A301F502&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile5.uf.tistory.com/image/114A23334C4093A301F502&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web16.jpg&quot; height=&quot;38&quot; width=&quot;412&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
어떤 값을 입력해야 할지 모르겠으므로&lt;br /&gt;
&lt;br /&gt;소스보기로 소스를 분석해본다.&lt;br /&gt;
&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Challenge 17&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body bgcolor=black&amp;gt;&lt;br /&gt;
&amp;lt;font color=red size=10&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;form name=login&amp;gt;&lt;br /&gt;
&amp;lt;input type=passwd name=pw&amp;gt;&amp;lt;input type=button onclick=sub() value=&quot;로그인&quot;&amp;gt;&lt;/P&gt;
&lt;P&gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;lt;script&amp;gt;&lt;/P&gt;
&lt;P&gt;unlock=100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10+100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10-100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10/100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10*100*10*10+100/10-10+10+50-9*8+7-6+5-4*3-2*1*10+9999999999;&lt;/P&gt;
&lt;P&gt;function sub(){ if(login.pw.value==unlock){ alert(&quot;축하합니다.\n패스워드는 &quot;+unlock/10+&quot; 입니다.&quot;); }else { alert(&quot;땡!!&quot;);&amp;nbsp; }}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
unlock 값을 직접 계산하기 보다는&lt;br /&gt;
&lt;br /&gt;자바스크립트는 클라이언트&amp;nbsp;쪽에서 실행되기&amp;nbsp;때문에&lt;br /&gt;
&lt;br /&gt;자바스크립트를 사용해서 unlock 값을 볼수가 있다.&lt;br /&gt;
&lt;br /&gt;주소창에 javascript:alert(unlock)&amp;nbsp;치게되면&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile1.uf.tistory.com/original/184D6C344C40969E01E2F2&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile1.uf.tistory.com/image/184D6C344C40969E01E2F2&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web17.jpg&quot; height=&quot;177&quot; width=&quot;504&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;자바스크립트가 실행되어 alert 으로 unlock 값이 뜨게된다.!!!! (윗창은 제가 값을 지운겁니다 ㅎㅎ)&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-146-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-146-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-146-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Webhacking.kr</category>
			<category>17번 문제</category>
			<category>webhacking</category>
			<category>webhacking 17</category>
			<category>webhacking.kr 17</category>
			<category>웹해킹 17</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/146</guid>
			<comments>http://dakuo.tistory.com/146#entry146comment</comments>
			<pubDate>Sat, 17 Jul 2010 02:10:49 +0900</pubDate>
		</item>
		<item>
			<title>webhacking.kr 16번 문제</title>
			<link>http://dakuo.tistory.com/145</link>
			<description>&lt;P&gt;webhacking.kr 16번 문제를 클릭하면 다음과 같은 페이지가 뜬다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile27.uf.tistory.com/original/190592374C4085C852B2B8&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile27.uf.tistory.com/image/190592374C4085C852B2B8&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web16.jpg&quot; height=&quot;42&quot; width=&quot;399&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
어떤 값을 입력해야 할지 모르겠으므로&lt;br /&gt;
&lt;br /&gt;소스보기로 소스를 분석해본다.&lt;br /&gt;
&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Challenge 16&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body bgcolor=black&amp;gt;&lt;br /&gt;
&amp;lt;font color=red size=10&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;form name=login&amp;gt;&lt;br /&gt;
&amp;lt;input type=passwd name=pw&amp;gt;&lt;br /&gt;
&amp;lt;input type=button onclick=sub() value=&quot;로그인&quot;&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;lt;script&amp;gt; &lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
key=&quot;%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252561%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252570%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252570%2525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525256%252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252543%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252565&quot;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
function sub(){ if(login.pw.value==&quot;&quot;){ alert(&quot;패스워드를 입력하세요.&quot;); } else { document.location=login.pw.value }}&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
key 값을 해석하여 입력하면 문제가 풀릴것 같다.&lt;br /&gt;
&lt;br /&gt;key 값뒤에 숫자는 URL 인코딩된값으로&lt;br /&gt;
(%252525252525...... 를 통해 유추할수 있다.&amp;nbsp;&amp;nbsp; 참고로 %25&amp;nbsp; = % 이다. 즉 252525가&amp;nbsp;상쇄되어 맨 뒤에 있는 숫자만 남는다. 즉, 첫번째껀 %61)&lt;br /&gt;
&lt;br /&gt;해당키값을 URL 디코딩해보면 답을 알수가 있다.&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-145-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-145-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-145-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Webhacking.kr</category>
			<category>16번 문제</category>
			<category>webhacking</category>
			<category>webhacking.kr</category>
			<category>webhacking.kr 16</category>
			<category>웹해킹 16</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/145</guid>
			<comments>http://dakuo.tistory.com/145#entry145comment</comments>
			<pubDate>Sat, 17 Jul 2010 01:13:28 +0900</pubDate>
		</item>
		<item>
			<title>분할정복(Divide and Conquer)</title>
			<link>http://dakuo.tistory.com/144</link>
			<description>&lt;PRE class=&quot;brush: cpp;&quot;&gt;#include &amp;lt;iostream&amp;gt;
#include &amp;lt;ctime&amp;gt;

#define SIZE 16

using namespace std;

template &amp;lt;class data&amp;gt;
void merge_sort(data *arr, int size);

int main()
{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int arr[SIZE];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;srand(time(0));

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(int i = 0 ; i &amp;lt; SIZE ; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; {
&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;arr[i] = rand()%100 + 1;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;cout&amp;lt;&amp;lt;arr[i]&amp;lt;&amp;lt;&quot; &quot;;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;merge_sort(arr, SIZE);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;cout&amp;lt;&amp;lt;endl&amp;lt;&amp;lt;endl;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for(int i = 0 ; i &amp;lt; SIZE ; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout&amp;lt;&amp;lt;arr[i]&amp;lt;&amp;lt;&quot; &quot;;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; return 0;
}

template &amp;lt;class data&amp;gt;
void merge_sort(data *arr, int size)
{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(size==1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;
&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;

&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;merge_sort(arr, size/2);
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;merge_sort(arr+(size/2), size-(size/2));

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;int tmp1[SIZE+1], tmp2[SIZE+1];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; int i;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;int l = 0, r = 0;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;for(i = 0 ; i &amp;lt; size/2 ; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;tmp1[i] = arr[i];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; tmp1[i] = INT_MAX;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; for(i = 0; i &amp;lt; size-(size/2) ; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tmp2[i] = arr[i+(size/2)];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;tmp2[i] = INT_MAX;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;for(i = 0 ; i &amp;lt; size ; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(tmp1[l] &amp;gt; tmp2[r])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arr[i] = tmp2[r];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r++;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;arr[i] = tmp1[l];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; l++;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
}
&lt;/PRE&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile24.uf@175C12284C42B35C700BD9.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; main.cpp&lt;/a&gt;&lt;/div&gt; &lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-144-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-144-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-144-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Source</category>
			<category>algorithm</category>
			<category>Divide And Conquer</category>
			<category>분할정복</category>
			<category>알고리즘</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/144</guid>
			<comments>http://dakuo.tistory.com/144#entry144comment</comments>
			<pubDate>Fri, 16 Jul 2010 19:49:36 +0900</pubDate>
		</item>
		<item>
			<title>Stack 구현</title>
			<link>http://dakuo.tistory.com/143</link>
			<description>&lt;PRE class=&quot;brush: cpp;&quot;&gt;#include &amp;lt;iostream&amp;gt;&amp;nbsp;

using namespace std;&amp;nbsp;

struct node
{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;int data;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;node* p;
};

class stack
{
public:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;node* head;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;node* tail;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
       int sz;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  
       stack()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; head = NULL;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;sz = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; tail = NULL;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
       void push(int num)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;node* new_node = new node; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;new_node -&amp;gt;data=num;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;new_node -&amp;gt;p=tail;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tail=new_node;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sz++;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
       int pop()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(isEmpty())
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -1;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int tmp = tail-&amp;gt;data;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;
               node* del_node = tail;
               tail = tail-&amp;gt;p;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;delete del_node;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;sz--;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; return tmp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
        int top()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(isEmpty())
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -1;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}
               return tail-&amp;gt;data;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
        int size()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return sz;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
        bool isEmpty()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(sz==0)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{
                      return true;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
};

int main()
{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;stack a;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; int sel;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int num;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
   
         while(1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cout &amp;lt;&amp;lt; &quot;1.push&quot;&amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;2.pop&quot;&amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;3.top&quot;&amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;4.size&quot;&amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;5.all pop&quot;&amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;6.quit&quot; &amp;lt;&amp;lt; endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;cin &amp;gt;&amp;gt; sel;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
               if(sel==1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;please input number&quot; &amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;cin &amp;gt;&amp;gt; num;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
               a.push(num);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(sel==2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;num = a.pop();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if(num==-1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;cout &amp;lt;&amp;lt;&quot;pop error!&quot;&amp;lt;&amp;lt;endl&amp;lt;&amp;lt; endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cout &amp;lt;&amp;lt;&quot;pop num is :&quot; &amp;lt;&amp;lt; num &amp;lt;&amp;lt; ndl&amp;lt;&amp;lt;endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else if(sel==3)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;num=a.top();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(num==-1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;top error!&quot; &amp;lt;&amp;lt;endl&amp;lt;&amp;lt; endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cout &amp;lt;&amp;lt;&quot;top num is : &quot;&amp;lt;&amp;lt;num &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(sel==4)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; &quot;size is : &quot; &amp;lt;&amp;lt; a.size() &amp;lt;&amp;lt;endl &amp;lt;&amp;lt; endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else if(sel==5)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;while(!a.isEmpty())
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cout &amp;lt;&amp;lt; a.pop() &amp;lt;&amp;lt; &quot; &quot;;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(sel==6)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

         return 0;
}
&lt;/PRE&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://dakuo.tistory.com/attachment/cfile9.uf@14344C124C3EFD060AC210.cpp&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; main.cpp&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-143-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-143-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-143-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Data Structure</category>
			<category>Node</category>
			<category>Stack</category>
			<category>구현</category>
			<category>스택</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/143</guid>
			<comments>http://dakuo.tistory.com/143#entry143comment</comments>
			<pubDate>Thu, 15 Jul 2010 20:55:20 +0900</pubDate>
		</item>
		<item>
			<title>webhacking.kr 14번 문제</title>
			<link>http://dakuo.tistory.com/142</link>
			<description>&lt;P&gt;webhacking.kr 14번 문제를 클릭하면 다음과 같은 페이지가 뜬다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile22.uf.tistory.com/original/115ACB204C3140A940B923&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile22.uf.tistory.com/image/115ACB204C3140A940B923&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;web14.jpg&quot; height=&quot;39&quot; width=&quot;395&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;/P&gt;&lt;br /&gt;
어떤 값을 입력해야 할지 모르겠으므로&lt;br /&gt;
&lt;br /&gt;소스보기로 소스를 분석해본다.&lt;br /&gt;
&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Challenge 14&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;form name=pw&amp;gt;&lt;br /&gt;
&amp;lt;input type=text name=input_pwd&amp;gt;&amp;lt;input type=button value=&quot;check&quot; onclick=ck()&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;script&amp;gt; &lt;br /&gt;
function ck()&lt;br /&gt;
{&lt;br /&gt;
var ul=document.URL;&lt;br /&gt;
ul=ul.indexOf(&quot;.kr&quot;);&lt;br /&gt;
ul=ul*30;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
if(ul==pw.input_pwd.value) { alert(&quot;password is &quot;+ul*pw.input_pwd.value); }&lt;br /&gt;
else { alert(&quot;wrong!&quot;); }&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
}&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
if(ul==pw.input_pwd.value) { alert(&quot;password is &quot;+ul*pw.input_pwd.value); }&lt;br /&gt;
&lt;br /&gt;ul 값과 입력값이 같으면&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
alert 으로&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;password is = ul값과 입력값을 곱한값&amp;nbsp;&amp;nbsp;&amp;nbsp; 을 보여준다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
ul값은&lt;br /&gt;
&lt;br /&gt;var ul=document.URL;&lt;br /&gt;
ul=ul.indexOf(&quot;.kr&quot;);&lt;br /&gt;
ul=ul*30;&lt;br /&gt;
&lt;br /&gt;이것인데 document.URL 은 도메인을 뜻한다. (http://webhacking.kr)&lt;br /&gt;
&lt;br /&gt;indexOf(&quot;값&quot;) 은&amp;nbsp; 해당 문자열에서 값이 몇번째 위치인지를 반환한다.&lt;br /&gt;
&lt;br /&gt;즉,&amp;nbsp;&lt;A href=&quot;http://webhacking.kr/&quot;&gt;http ://webhacking.kr&lt;/A&gt;&amp;nbsp; 문자열에서 .kr 의 위치다. (0부터 시작하므로 17)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01------------------&lt;br /&gt;
&lt;br /&gt;이값에 30을 곱한 후 입력해주면 패스워드를 알수 있다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-142-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-142-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-142-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>_Webhacking.kr</category>
			<category>14번 문제</category>
			<category>webhacking</category>
			<category>webhacking 14</category>
			<category>webhacking.kr 14</category>
			<category>웹해킹 14</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/142</guid>
			<comments>http://dakuo.tistory.com/142#entry142comment</comments>
			<pubDate>Mon, 05 Jul 2010 11:28:21 +0900</pubDate>
		</item>
		<item>
			<title>두가지 길</title>
			<link>http://dakuo.tistory.com/141</link>
			<description>&lt;P&gt;요새 좀 힘들었지만 좋은 경험을 한 이후로&lt;br /&gt;
&lt;br /&gt;생각이 엄청 많아졌는데여 &lt;br /&gt;
&lt;br /&gt;여러가지 생각은 제 스스로 정리가 다 됬지만.&lt;br /&gt;
&lt;br /&gt;가장 중요한 삶을 어떻게 살것인가에 대해 두가지 생각에 대해서는 아직.....&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
하나는 제 일에만 모든 힘을 다 쏟아 부어&amp;nbsp; 어느 경지에 도달하는 것이고요&lt;br /&gt;
&lt;br /&gt;다른 하나는 순간 순간을 즐기며 적당히 사는 것&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
인생은 한 번 이라&amp;nbsp;한번씩 살아볼 수도 없는것이고&lt;br /&gt;
&lt;br /&gt;그리고 인생에 답은 없다라는 말이 있듯이 어느 것을 골라도 그게 정답일 것이라고 전 믿습니다.&lt;br /&gt;
&lt;br /&gt;다만 둘다 매력적이라 어느 것을 택해야 할지를 모르겠네여.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
시간이 지나 더 경험이 쌓이고 철이 들면 이것에 대한 답이 내려질까여??&lt;br /&gt;
&lt;br /&gt;여태 살면서 딱히 여러 가치에 대해 고민해본적도 거의 없고&lt;br /&gt;
&lt;br /&gt;바로바로 선택을 하며 살아왔는데&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
요새는 좀 우유부단해진것 같네요.&lt;br /&gt;
&lt;br /&gt;여러 가치중에 어떤것을 골라야 할지 모르겠어요.&lt;br /&gt;
&lt;br /&gt;그래서 여기 저기 휘둘리기만 하네요 어찌할바를 모른채.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
그래도 일단 지금 제위치에서는 공부만이 어느 쪽을 선택하든 가장 첫번째 해야할 일 같네요.&lt;br /&gt;
&lt;br /&gt;지금부터 블로그 운영과 공부 열심히 하겠습니다. ^^ V&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-141-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-141-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-141-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Essay</category>
			<author>Dakuo</author>
			<guid>http://dakuo.tistory.com/141</guid>
			<comments>http://dakuo.tistory.com/141#entry141comment</comments>
			<pubDate>Mon, 05 Jul 2010 03:06:46 +0900</pubDate>
		</item>
	</channel>
</rss>

