본문 바로가기
반응형

분류 전체보기167

Swift2 For, While 문 For 문 일반적은 For문과 For in 문이 있다. 일반적인 For 문으로 for (var x=1; x 2021. 8. 10.
Swift2 Collection Types (Array, Set, Dictionary) Collection이란 같은 형태의 자료를 한꺼번에 관리를 할 수 있게 하는 구조입니다. Array, Set, Dictionary가 있습니다. Arrary는 ordered collection 이며 순서가 중요합니다. Set은 unordered collection 이다. 배열과 비슷하지만 값이 겹치지 않고 들어가는 부분이라고 이해할 수 있습니다. Dictionary 은 unordered collection of key-value association 이며 key-value형식으로 자료가 저장됩니다. 이 3가지를 변수로 만든다면 이 컬렉션들은 Mutable로 만들어집니다. (mutable - 변경가능할 수 있다.) constant로 이를 할당을 하면 immutable 해집니다. Array는 Array로 사용.. 2021. 8. 10.
Swift2 상수와 변수, 자료형 iBooks 참고 합시다! 우선 새로운 playground를 하나 생성해주세요 책의 목차에서 The Basics부분입니다. 상수와 변수에 대한 부분입니다. 상수란? 상수는 값이 정해지면 더 이상 그 값을 수정할 수 없습니다. 변수란? 정해진 값을 수정할 수 있습니다. 상수와 변수의 생성방법은 상수는 let으로 선언하고 변수는 var로 선언합니다. var str = "Hello, playground" var version = 1.0 let year = 2015 let hansome = true 근데 여기서 한 가지 의문을 가질 수 있습니다. 보통 프로그래밍을 할 때, 변수의 형태를 지정해줍니다. Swift2에서는 형태를 지정해주지 않아도 자동으로 지정해줍니다. 이것을 type inference 라고 합니다.. 2021. 8. 10.
Swift2 환경 설정 최근들어 갑자기 IOS사용 비율이 증가하면서 서비스들은 더 이상 안드로이드 플랫폼만 제공하기에는 시장이 폭이 좁아졌습니다. 아이폰의 시장이 넓어지면서 지금은 IOS와 Android 플랫폼을 동시에 개발하는 것이 당연하게 되어졌습니다. IOS용 어플을 개발하기 위해서는 맥킨토시를 사용하는 PC가 필요합니다. 흔히들 맥북을 많이 사용합니다. 옛날에는 Object-C라는 언어를 사용하여 IOS APP을 개발하였지만 이제는 애플에서 개발한 Swift를 주로 사용합니다. (Swift2까지 나왔습니다.) iBooks의 STORE에 들어가서 swift를 검색하면 이렇게 무료로 스위프트에 관련된 문서를 볼 수 있습니다. 애플은 정말 개발자분들을 좋아하는 것 같습니다. The Swift Programing Languag.. 2021. 8. 10.
How to Learn Swift? 스위프트 언어를 공부하기 위해서는 많은 방법들이 있다. 시중에 판매되고 있는 책을 구매하거나, 온라인 강의들을 듣는 등의 여러가지 방법이 있지만 돈안들고 가장 정확한 내용을 공부하는 법을 소개하려고 한다. 스위프트 언어를 공부하는 궁극적인 목표는 iOS 또는 OS x 의 SW를 개발하기 위해서라고 생각한다. 그러기 위해서는 맥 OS 를 탑제한 데스크탑 또는 노트북이 필요하다. (맥 OS에 있는 iBook을 이용할 예정이다.) 우선 iBook 을 실행시켜 본다. 실행 후, 상단의 iBook Store을 클릭한다. 스토어에 접속하게 되면, 검색창에 'Swift'라고 검색한다. 상단에 The Swift Programming Language 라는 책을 볼 수 있을 것이다. 다운로드 하면 된다. (보관함에 저장된.. 2021. 8. 10.
LOB Level20 xavius 마지막 xavius 로 접속합니다. 우선 소스코드를 보면 40바이트 buffer가 선언되어있고 6666포트를 여네요 그리고 recv(client_fd, buffer, 256,0) 에서 40바이트 buffer에 256바이트를 저장하네요?? 으잉? 오버플로우가 일어나는 코드네요. 우선 페이로드를 생각해보면 buffer 40 + ebf 4 + ret 4 + shellcode 입니다. 하지만 여기서 정확한 ret를 알수 없기 때문에 브루트 포싱해줍니다. 그런데 알고보니 로컬에서 사용하는 쉘코드와 원격으로 사용하는 쉘코드가 다릅니다. 원격으로 공격할때 로컬에서 쓰는 쉘코드는 동작하지 않습니다. 그 이유는 네트워크를 통해 쉘을 활성화 시켜 주어야 하기 때문입니다. 그래서 포트 바인딩 쉘코드를 사용할 건데 포트 바인.. 2021. 8. 10.
반응형