ICT

λ¦¬λ²„μŠ€ μ—”μ§€λ‹ˆμ–΄λ§

μ•Œ 수 μ—†λŠ” μ‚¬μš©μž 2016. 11. 21. 14:35
λ°˜μ‘ν˜•

μ•ˆλ…•ν•˜μ„Έμš” KG아이티뱅크 μ‚¬μ›μž…λ‹ˆλ‹€.

 

μ˜€λŠ˜μ€ λ¦¬λ²„μŠ€ μ—”μ§€λ‹ˆμ–΄λ§, 역좔적, 역곡학에 λŒ€ν•΄ μ•Œμ•„λ³΄λ €κ³  ν•˜λŠ”λ°μš”

 

 

 

 

 

 

 

 

 

 

μ •λ³΄λ³΄μ•ˆμ „λ¬Έκ°€λ₯Ό κΏˆκΎΈλŠ” 학생듀이 λŒ€μ²΄λ‘œ ν•΄ν‚Ήλ³΄μ•ˆμˆ˜μ—…μ„

 

λ“€μ„λ•Œ λ¦¬λ²„μ‹±μ΄λ‚˜ ν¬λ Œμ‹ 과정은 λ„£μ–΄μ£Όκ³ 

 

μ•…μ„±μ½”λ“œλΆ„μ„ 과정은 넣지 μ•ŠλŠ” κ²½μš°κ°€ λ§Žμ€λ°μš”

 

μ½”λ“œλΆ„μ„μ„ μ–΄λ €μ›Œ ν•˜λŠ” 학생듀이 λ§Žμ•„μ„œ

 

μˆ˜μ—…μ— λ’€μ³μ§€κ±°λ‚˜ 잘 λͺ»λ”°λΌκ°€λŠ” κ²½μš°κ°€ λ°œμƒν•˜κ³€ ν•©λ‹ˆλ‹€.

 

κ·ΈλŸ¬λ‚˜ μ•…μ„±μ½”λ“œ 뢄석은 λ¦¬λ²„μ‹±κ³Όμ˜ μ—°μž₯선상에 μžˆλŠ”

 

κ³Όμ •μ΄λ‹ˆ λ‘˜λ‹€ μ—΄μ‹¬νžˆ ν•΄μ•Ό ν•©λ‹ˆλ‹€.

 

 

 

 

 

 

 

 

 

 

이 λ¦¬λ²„μŠ€ μ—”μ§€λ‹ˆμ–΄λ§μ„ κ³΅λΆ€ν•˜λŠ” μ΄μœ λŠ” μ™„μ„±λœ

 

μ œν’ˆμ„ 뢄석해 κ·Έ μ œν’ˆμ˜ 섀계 κΈ°μˆ μ΄λ‚˜ κ°œλ…μ„

 

νŒŒμ•…ν•˜κ³  κ·ΈλŒ€λ‘œ μž¬ν˜„ν•΄ λ³΄λ©΄μ„œ 각쒅 도ꡬλ₯Ό

 

ν™œμš©ν•΄ 컴파일의 λ™μž‘μƒνƒœλ‚˜ μ‹€ν–‰ νŒŒμΌμ„

 

λΆ„μ„ν•©λ‹ˆλ‹€.

 

κ·Έλ ‡κ²Œ 되면 λ‚΄λΆ€ μ„€κ³„λ‚˜ λ™μž‘μ˜ κ°œλ…μ„

 

이해할 수 있게 λ©λ‹ˆλ‹€.

 

 

이런 κΈ°μˆ λ“€μ„ μ—­μœΌλ‘œ μ΄μš©ν•˜λ©΄ νŒŒμΌμ„

 

μˆ˜μ •ν•˜κ±°λ‚˜ λ™μž‘ 그리고 λ³΅μ œν”„λ‘œκ·Έλž¨κ³Ό

 

ν”νžˆ λ§ν•˜κ³€ ν•˜λŠ” κ²Œμž„ν•΅, νŒ¨μŠ€νŠΈν•‘ 등이

 

개발되며 λ”μš± μ—…κ·Έλ ˆμ΄λ“œ 된 μƒˆλ‘œμš΄

 

ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

 

κ·ΈλŸ¬λ‚˜ 일뢀 μ €μž‘κΆŒ 침해에 μ˜ν•œ λΆˆλ²•μ μΈ

 

μš©λ„λ‘œ μ‚¬μš©μ΄ κ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ— κ°œλ°œν•˜κ±°λ‚˜

 

곡뢀할 λ•Œ λ”μš± 신쀑을 κ°€ν•΄μ•Ό ν•˜λŠ”

 

뢄야이기도 ν•©λ‹ˆλ‹€.

 

 

 

 

 

 

 

 

 

 

μ—¬κΈ°μ„œ κ°€μž₯ μ€‘μš”ν•œ 건 λ°”λ‘œ

 

μ–΄μ…ˆλΈ”λ¦¬μ–΄μ™€ Cμ–Έμ–΄ μž…λ‹ˆλ‹€.

 

기본적인 μ–΄μ…ˆλΈ”λ¦¬μ–΄λ₯Ό λͺ¨λ₯΄μ‹ λ‹€λ©΄

 

μˆ˜μ—…μ΄ μ•„μ£Ό λ‚œν•΄ν•˜κ³  μ–΄λ €μ›Œ 지기 λ•Œλ¬Έμ—

 

μˆ˜μ—…μ „μ— μ–΄μ…ˆλΈ”λ¦¬μ–΄λ₯Ό κΌ­ κ³΅λΆ€ν•΄μ˜€λΌκ³ 

 

μ‹œν‚΅λ‹ˆλ‹€.

 

 

μ‹€μŠ΅ μ˜ˆμ œλ“€μ΄ μ£Όμ–΄μ§€μ§€λ§Œ 혼자 ν•˜μ‹œλŠ” 뢄듀은

 

책을 톡해 μ˜ˆμ œλ“€μ„ 가지고 λ””λ²„κΉ…ν•΄λ΄μ•Όν•˜λ©°

 

그것듀을 λ‹€μ‹œ μ†ŒμŠ€ μ½”λ“œλ‘œ λ³΅μ›ν•˜λŠ” μ—°μŠ΅μ„

 

ν•΄μ•Ό ν•©λ‹ˆλ‹€.

 

λ¦¬λ²„μŠ€ μ—”μ§€λ‹ˆμ–΄λ§μ—μ„œλŠ” μ΄λŸ°μ‹μœΌλ‘œ 각각

 

μ½”λ“œ μ œμ–΄λ¬Έ μ»΄νŒŒμΌμ΄λ‚˜ ν•¨μˆ˜λ“€μ„ μ‹€μŠ΅ 예제λ₯Ό

 

톡해 디버깅해보고 μ½”λ“œλ‘œ λ³΅μ›ν•˜λŠ” 반볡 μˆ™λ‹¬

 

과정을 톡해 κΈ°λ³Έ λ¦¬λ²„μ‹±μ˜ 베이슀λ₯Ό

 

λ§Œλ“€κ²Œ λ©λ‹ˆλ‹€.

 

 

 

 

 

 

 

 

 

 

각 ν”„λ‘œκ·Έλž¨μ΄λ‚˜ 도ꡬ듀을 μ‚¬μš©ν•  λ•Œ

 

μ‚¬μš©λ˜μ–΄μ§€λŠ” λ””λ²„κΉ…μ˜ 방식이 λ‹€λ¦…λ‹ˆλ‹€.

 

μŠ€νƒν”„λ ˆμž„μ„ μ•Œκ³  있으며 μŠ€νƒ ν”„λž˜μž„μ„

 

μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” κ²½μš°μ™€ μ‚¬μš©ν•˜λŠ” 경우의

 

λ””λ²„κΉ…μ˜ 방식을 κΎΈμ€€ν•˜κ²Œ μ—°μŠ΅ν•΄μ•Ό ν•˜κ³ 

 

return addressλ₯Ό κ΅¬λ³„ν•œ ν›„

 

μœ„μΉ˜μ— λ”°λ₯Έ 둜컬 μΈμžμ™€ λ³€μˆ˜λ₯Ό κ΅¬λΆ„ν•˜λŠ”

 

방법을 μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€.

 

κ·Έ 값듀을 μ •ν™•ν•˜κ²Œ μ „λ‹¬ν•˜λŠ” 방법도

 

μ—°μŠ΅ ν•΄μ•Ό ν•˜κ² μŠ΅λ‹ˆλ‹€.

 

 

 

 

 

 

 

 

 

 

 

κ·Έ 이후에 μ½”λ“œ 뢄석을 ν†΅ν•œ

 

μ•…μ„±μ½”λ“œλΆ„μ„μœΌλ‘œμ˜ μ—°μž₯곡뢀가 κ°€λŠ₯ν•˜κ³ 

 

각 μ‹€ν–‰νŒŒμΌμ΄λ‚˜ μ½”λ“œ 그리고 μ·¨μ•½ν•œ 뢀뢄에

 

직접적인 μ•…μ„±μ½”λ“œλ₯Ό μ‚½μž…ν•΄ λ³΄λ©΄μ„œ

 

전체적인 λ¦¬λ²„μŠ€ μ—”μ§€λ‹ˆμ–΄λ§μ΄λ‚˜ λ°”μ΄λŸ¬μŠ€

 

그리고 μ•…μ„±μ½”λ“œ 뢄석에 λŒ€ν•΄ 곡뢀할 수

 

μžˆμŠ΅λ‹ˆλ‹€.

 

 

KG μ•„μ΄ν‹°λ±…ν¬μ—μ„œλŠ” 리버싱 기초λ₯Ό ν†΅ν•˜μ—¬

 

λ””λ²„κΉ…ν•˜λŠ” 방법을 배우고, 디버깅을 톡해 μ½”λ“œλ₯Ό λ‹€μ‹œ

 

κ΅¬ν˜„ν•¨μœΌλ‘œ μΈν•˜μ—¬ 디버깅 λŠ₯λ ₯κ³Ό C언어에 λŒ€ν•œ λ³΅μŠ΅μ„

 

μˆ˜ν–‰ν•˜μ‹€ 수 있게 λ©λ‹ˆλ‹€.

 

 

 

 

 

λ¬Έμ˜μ „ν™” 010 8468 0321 

 

카톑 gusduq

 

 

 

 

 

 

λ°˜μ‘ν˜•