본문 바로가기
반응형

IT 이론239

[해킹기법] 메모리(Memory) 해킹 메모리 해킹은 쉽게 말 그대로 메모리에 잠깐 저장되는 정보를 변조하여 오동작을 유도하거나 데이터를 탈취하는 기법이다. 데이터 탈취 : 보안카드 정보탈취, 메모리상의 데이터(공인인증서 등) 탈취데이터 변조 : 보안 프로그램 무력화, 이제 정보 변경 실제로 금융권에서 입금계좌와 금액을 조작당한 피해 사례가 여러 건 있다. 지인에게 10만원을 송금 하였는데 결과는 엉뚱하게 전혀 모르는 사람에게 100만원이 송금 되어 버리는 식이다. 이런 메모리 해킹은 클라이언트단에서 발생하는 문제로 주로 멀웨어에 의한 감염을 통해 조작이 이루어 진다. 따라서 사용하는 컴퓨터만 보안이 잘 되어 있다면 당할 일이 없는 기법이란 것이다. 하지만 많은 사람들이 그렇게 보안에 철저하지 않으므로 은행에서도 메모리 저장 내용 암호화 하는.. 2014. 10. 24.
[해킹기법] 워터링홀(Watering Hall) 기법 신종 해킹기법중 하나로, 상당히 지능적인 절차로 이루어져 있다. 우선 해킹 대상을 선정한다. 공공기관 직원, 대기업 직원 등. 그런 후에는 그 특정 직원들의 생활 패턴을 파악해야 한다. 자주 접속하는 사이트, 자주 방문하는 장소 등을 파악한다. 자주 방문하는 카페나 지역에 무료 WAP를 설치하여 정보를 빼가기도 하고 광고 메세지를 통해 쿠키 절도를 시도하기도 한다. 그렇게 자주 방문하는 웹 사이트 여러 곳이 파악 될 경우 그 중 가장 보안이 취약한 사이트를 찾는다. 예를 들면 공공기관 직원들이 자주 방문하는 사회단체의 웹 사이트가 보안에 취약하다면 그 웹 사이트를 해킹하여 악성 코드를 감염시키는 것이다. 이렇게 하면 공공기관의 여러 직원들을 감염시킬 수 있고 그 직원들이 공공기관의 망에서 작업을 할 경우.. 2014. 10. 24.
[해킹기법] RLO(Right to Left Override) 유니코드를 이용한 확장자 변조 이 기법은 exe실행 파일을 다른 확장자인것 처럼 보이게 하여 사용자로 하여금 실행하게 만드는 해킹 기법이다. UNICODE는 전세계의 다양한 언어를 표현할 수 있도록 하고 있다. 대부분의 나라에선 좌측에서 우측으로(Left to Right) 글자를 쓰지만 몇몇 나라에서는 반대로 우측에서 좌측(Right to Left)으로 글자를 쓴다. 유니코드에선 이런 나라의 표현 방식까지도 사용할 수 있게 해 준다. 따라서 HEX단위로 파일을 조작 할 경우 파일 명의 일부는 Right to Left로 작정 되도록 할 수 있다. 그럼 이를 어떻게 해킹에 활용하는 것일까? invocpwh.exe 라는 파일이 있다. 누가 봐도 명백한 실행 파일이다. 그런데 이 파일의 마지막 7글자 pwh.exe에 RLO를 적용하면 inv.. 2014. 10. 24.
디스크 스케쥴링 알고리즘 Head Pointer = 53Request : 98, 183, 37, 122, 14, 124, 65, 67Range : 0 ~ 199 FCFS : First Come First Served가장 먼저 들어온놈 부터 처리한다. 차례대로 차를 다 더하면 된다.(98 - 53) + (183 - 93) + (183 - 37) + (122 - 37) + (37 -14) + (124 - 14) + (124 - 65) + (67 - 65) = 640 SSTF : Shortest Seek Time First가장 가까운놈 부터 처리한다. 바로 앞에서 처리한 값과 가장 가까운 값의 차를 모두 더한다.(65 - 53) + (67 - 65) + ... + 생략. 답은 236 SCAN (Elevator Algorithm)시작점.. 2014. 10. 17.
분산 데이터베이스의 목표와 장단점 분산 데이터베이스의 목표 위치 투명성 (Location Transparency) 액세스하려는 데이터베이스의 실제 위치를 알 필요없이 단지 데이터베이스의 논리적인 명칭만으로 액세스할 수 있음 중복 투명성 (Replication Transparency) 동일 데이터가 여러 곳에 중복되어 있더라도 사용자는 마치 하나의 데이터만 존재하는 것처럼 사용하고, 시스템은 자동으로 여러 자료에 대한 작업을 수행함 병행 투명성 (Concurrency Transparency) 분산 데이터베이스와 관련된 다수의 트랜잭션들이 동시에 실현되더라도 그 트랜잭션의 결과는 영향을 받지 않음 장애 투명성 (Failure Transparency) 트랜잭션, DBMS, 네트워크, 컴퓨터 장애에도 불구하고 트랜잭션을 정확하게 처리함 분산 데.. 2014. 10. 17.
DAS, SAS, NAS, SAN 서버 대용량 스토리지 DAS : Directed Attached Storage 서버와 전용 케이블로 연결된 외장형 저장장치이다. 쉽게 생각하면 하드 여러개를 묶어서 서버와 연결 해 놓은 것으로 PC의 외장 하드와 비슷한 형태로 생각하면 된다. SAS : Serial Attached Storage DAS와 같은 형태이지만 병렬이 아닌 직렬 연결방식을 이용하여 속도를 대폭 개선한 방식이다. NAS : Network Attached Storage 네트워크를 이용해 연결되는 저장 장치이다. 무선 연결이다 보니 속도는 많이 느리다. Linux나 Windows같은 범용 OS가 아닌 스토리지 전용 고기능성의 OS가 탑재되어 있습니다. SAN : Storage Area Network 호스트의 종류와 무관하게 분산되어 있는 스토리지 디바이스.. 2014. 10. 17.
소팅 알고리즘 정리 (Bubble, Quick, Insert, Select, Heap) 본 글을 위 소팅 알고리즘을 한번 씩은 다뤄 본 사람들을 대상으로 기억을 되살리기 위해 적은 글이므로, 처음 보는 사람들은 좀 더 자세하게 포스팅된 글을 참고하기 바란다.설명의 편의를 위해 모든 정렬은 오름차순을 기준으로 한다. 1. Bubble Sort (버블 소트)구현하기가 가장 편해 정말 작은 input이 들어오거나, 효율성이 필요 없거나, 개발을 빠르게 해야 할 때 사용한다. 첫 번째와 두 번째 열을 비교하여 두 번째 열이 첫 번째 열 보다 작다면 두 열을 swap한다. 그 다음 두 번째 열과 세 번째 열을 비교하고, 그 다음은 세 번째, 네 번째를 비교하며 마찬가지 과정을 거친다. 이렇게 하면 가장 큰 값이 가장 마지막으로 이동되게 된다. 이젠 가장 뒷 열을 제외하고 나머지 열을 상대로 이런 과.. 2014. 10. 17.
[C언어 소스] 완전이진트리 순회(Complete Binary Tree Traversal) 본 예제는 트리가 Complete Binary Tree일때만 사용 할 수 있는 예제이다. Complete Binary Tree란 Level을 기준으로 최하단을 제외한 모든 노드가 두개의 자식노드를 가지면서, 최 하단 또한 좌측 순서대로 2개씩 모두 차 있는 트리를 이야기 한다. 책에서는 어떻게 정의 하는지 모르겠으나, 대충 아래의 그림을 보면 이해 할 수 있을 것이다. 트리가 완전 이진 트리일 경우 모든 노드들은 수학적인 규칙을 가진다. 레벨 순으로 1 2 3 4 5 6 이렇게 번호를 매길 경우, 왼쪽 자식 노드 번호 = (부모 노드 번호) * 2오른쪽 자식 노드 번호 = (부모 노드 번호) * 2 +1 이라고 할 수 있다. 이런 규칙 덕분에 실제 형태는 트리 형태이더라도 표현은 1차원 배열로 표현이 가.. 2014. 10. 15.
TCP 타이머 TCP에는 4가지 타이머가 있다. Retransmission : 재전송 타이머로 segment 1개당 하나가 할당된다. Persistence : 나머지 3개는 모두 연결당 1개가 할당된다. Keepalive Time-waited 1. Persistence timer 상대방 TCP로 부터 rwnd = 0 을 통보 받을 경우 더이상 데이터를 보낼 수 없게 된다. 상대방 TCP에서 흐름재개를 위해 rwnd > 0 을 통보하는 ACK를 다시 보냈으나 그 ACK가 소실 될 수도 있다. 이렇게 되면 두 TCP가 서로 상대방을 무한정 기다리는 deadlock 상태가 되게 된다. 이런 교착상태를 타개하기 위한 타이머가 Pertistence timer이다. (1) 상대방 TCP에서 rwnd = 0을 보낼 경우 persi.. 2014. 6. 12.
[컴퓨터망] TCP에서의 Karn's Algorithm 같은 세그먼트가 두번 송신되고 하나의 ACK를 받을 경우, 원래 세그먼트에 대한 ACK인지 재전송 세그먼트에 대한 ACK인지 여부 판단이 모호하다.다른 새로운 세그먼트를 전송하고 그에 대한 ACK를 받을 때에만 RTT를 갱신한다. 즉, 불확실한 정보는 반영을 하지 않음으로써 시간 추정의 정확도를 향상시킨다. 2014. 6. 12.
[컴퓨터망] 6 ACK Rules 1. 데이터를 보낼 때는 항상 ACK정보를 첨부한다. 트래픽이 오가는 것을 최소화 하는 것이다.2. 데이터 세그먼트를 1개 수신한 이후 500ms이 지난 후에 Explicit ACK를 전송한다. 이 또한 트래픽 감소용이다.3. 수신한 데이터의 세그먼트가 2개가 누적되면 500ms를 기다리지 않고 즉각 Explicit ACK를 보낸다.4. 순서가 맞지 않는 세그먼트가 먼저 도착 할 경우 즉각 Explicit ACK을 전송한다.5. 분실 세그먼트를 받을 경우 즉각 Explicit ACK를 전송한다.6. 중복 세그먼트를 받을 경우 즉각 Explicit ACK를 전송한다. 2014. 6. 12.
[컴퓨터망] TCP의 특징 Connection-oriented : 연결지향적이다. - 연결 설정, 데이터 전송, 연결 해제의 3단계를 거친다. Reliable data transfer : 신뢰성 있는 전송 - 상위 계층의 응용 프로그램에게 완전 무결한 전송 서비스 보장 - 오류제어, 흐름제어, 혼잡제어 메커니즘 제공 In-order byte stream : 순서가 있는 스트림 - byte단위(octet)로 순서가 부여된다 Full deplex data : 동일 연결상에 두개의 길이 존재 - 양방향 연결 두개를 동시에 만든다. - Maximum Segment Size 또한 각 방향마다 따로 설정된다. Point to point : 일대일 연결 - 하나의 수신측, 하나의 송신측 - 프로토콜상에서 멀티캐스트를 제공하지 않는다. 2014. 6. 11.
[데이터통신] ISDN과 B-ISDN/ATM (광대역 ISDN) ISDN은 통합된(Intergrated) 서비스(Service)를 디지털(Digital)로 제공하는 통신망(Network) 이다.컴퓨팅, 교환, 디지털 전송장치 간의 구분이 없어지고, 음성, 데이터 및 이미지 전송에 동일한 디지털 기술이 적용된 통합 시스템이다. - 음성(비음성) 서비스를 포함한 광범위한 서비스를 제공한다. - 음성 신호과 컴퓨터 단말기에서 사용되는 신호, 그리고 텔레비전의 영상 신호 등을 하나의 통신망으로 연결하는 것이 가능하다. - 데이터베이스나 정보 처리 기능의 이용 범위가 넓어지게 되어 통신의 이용 가치를 높이게 한다. - ISDN의 채널은 B, D, E등이 있다. - 통신망의 교환접속 기능에는 회선 교환 방식과 패킹 교환 망식이 있다. - 64Kbps 1회선 교환 서비스가 기본이.. 2014. 5. 25.
[데이터통신] HDLC(High-level Data Link Control) - 점대점 링크 및 멀티포인트 링크를 위하여 개발되었다. - 반이중 통신과 전이중 통신을 모두 지원한다. - 에러 제어를 위해 Go-Back-N ARQ를 사용한다. - 슬라이딩 윈도우 방식에 의해 흐름 제어를 제공한다. 6단계 프레임 구성 순서 - 플래그 -> 주소부 -> 제어부 -> 정보부 -> 검사부 -> 플래그 * 플래그(Flag) : 프레임의 시작과 끝을 나타내는 고유한 패턴(01111110)이다. * 제어부 : 제이부에 따라 프레임의 종류가 결정된다. * 주소부 : 브로드캐스트는 11111111, 시험용(No Station)은 00000000 * 프레임의 목적은 각 통화로의 혼선 방지 3가지 프레임의 종류 - 정보 프레임 : 사용자 데이터 전달, 데이터 확인응답 - 감독 프레임 : 제어부가 10.. 2014. 5. 25.
X.25 프로토콜 DTE와 DCE간의 인터페이스를 제공, 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 절차 *DTE(데이터 터미널 장치, Data Terminal Equipment)*DCE(데이터 회선 종단장치, Data Circuit-terminating Equipment) TCP/IP와는 또 다른 프로토콜이다. TCP/IP와 비슷하지만 TCP/IP보다 느리다. 느린 대신 안정성과 보안성이 뛰어나다. 예전에는 금융권 내부망에서는 TCP/IP를 쓰지 않고 X.25를 사용하는 경우가 많았으나 요즘은 대부분 TCP/IP로 통일되고 있다. 통신 프로토콜이 다르면 하드웨어나 소프트웨어도 그에 맞춰야 하는데 TCP/IP가 대세가 되고 하드웨어, 소프트웨어도 다 TCP/IP를 기준으로 출시가 되니 이에 따르는 것이다. 그리.. 2014. 5. 25.
[소프트웨어공학] FTR(Formal Technical Review)의 지침사항 정형 기술 검토의 지침사항은 아래와 같다. - 제춤의 검토에만 집중하라 - 의제를 제한하여 진행하라 - 논쟁과 반박을 제한하라 - 문제의 영역을 명확히 표현하라 - 해결책과 개선책에 대해 논하지 마라 - 참가자의 수를 제한하라 - 체크 리스트를 개발하라 - 자원과 시간 일정을 할당하라 - 의미있는 훈련을 행하라 - 검토자들의 메모를 공유하라 - 검토 과정과 결과를 재검토하라 (정보처리기사 기준으로 취합) 정리하자면 아래와 같다. 1. 제한된 범위에 대해 문제점만 활발히 검토될 수 있도록 한다. 2. 논쟁이나 반박도 없고, 해결책이나 개선점 논의도 없이 문제점만 이야기 한다. 하는 것 - 자원과 시간 일정 할당 - 문제 영역 설정 - 체크리스트 개발 - 제품의 검토 및 재검토 - 의미있는 훈련 제한하는 것.. 2014. 5. 25.
[소프트웨어공학] 화이트박스 테스트와 블랙박스 테스트 화이트박스 테스트 코드를 오픈 시킨 상태에서 논리적인 모든 경로를 검사하여 검사 사례를 설계한다. - 기초 경로 검사(Basic path test) - 제어 구조 검사 : 조건 검사, 루프 검사, 데이터 흐름 검사 블랙박스 테스트(기능 검사) 소프트웨어가 수행할 기능을 중심으로 기능이 완전히 작동되는 것을 입증하는 검사 - 동치 분할 검사 - 경게값 분석 - 원인-효과 그래프 검사 - 오류 예측 검사 - 비교검사 2014. 5. 25.
[데이터통신] CSMA/CD (Carrier Sence Multiple Access/Collision Detection) 채널의 사용권을 서로 경쟁하여 확보하는 방식으로 노드 간의 충돌을 허용하는 네트워크 접근 방식이다. CSMA/CD의 의미Carrier Sense, 회선의 상태에 따라 Multiple Access, 누구든 동시에 접근할 수 있는 Collision Detection, 충돌을 검사할수 있는 통신 방식 CSMA/CD가 중요한 이유우리가 사용하는 Ethernet이 CSMA/CD방식을 사용한 LAN이다. 지금 당장 우리가 쓰고 있는 방식이란 뜻. - 전송 중에 충돌이 감지되면 패킷의 전송을 즉시 중단하고 충돌이 발생한 사실을 모든 스케이션들이 알 수 있도록 간단한 통보신호를 송신한다. - 스테이션의 수가 많아지면 충돌이 많아져서 효율이 떨어진다. - 어느 한 기기에 고장이 발생하여도 다른 기기의 통신에 전혀 영향을.. 2014. 5. 25.
반응형