본문 바로가기

전체 글

WPA Key Cracking WPA 키 크래킹 아무리 많이 잡아도 랜덤하게 생성되기 때문에 유추할 수 없다. 하지만 다른 단점으로 자체 알고리즘, 시스템에 대한 문제는 없지만, WPA핸드폰으로 된 방식이 붙어있으면 다른 공격자가 실제 IP를 할당하지 않아도 중간에 오고 가는 패킷들을 잡아 볼 수 있다. 주변에 WIFI를 모두 검색할 수 있어서 무선AP에 실제 인증되어 있는 목록까지 볼 수 있다. IP할당 없이 커넥션을 이루지 않아도 가능하다. 캡쳐된 패킷을 사전파일로 만들어서 사용한다. WPA 키 크래킹 원리 - death패킷을 보내서 다시 인증하는 패킷을 잡아서 사전파일로 비교하여 패스워드를 크랙킹한다. 좋은 사전파일을 갖고 있는 것이 중요하다. deauth패킷을 보내면 인증을 새로하려고 하는데 패킷을 통화 몇 비트 사용하는지 알.. 더보기
WEP Password Cracking WEP 패스워드 크래킹 -> 많은 패킷을 잡아서 그것을 분석하는 방법을 이용 VM 안에 있는 KaliLinux에서 "USB 무선랜카드"를 사용해야 하는 이유 노트북(유선/무선 랜카드) ---> VMware(유선 랜카드) ---> VM(유선 랜카드(리눅스)) 노트북(USB 무선 랜카드 ) ---> VMware(USB 무선랜카드) ---> VM(무선 랜카드(리눅스)) /* 하나의 VM에서만 사용할 수 있다. 공통으로 read/write하면 문제가 생기므로 vmware가 lock이 걸어버린다. 칼리리눅스에서 사용하면 윈도우에서 사용하지 못한다. 그래서 윈도우에 드라이버를 설치하지 않는다. 칼리리눅스는 범용드라이버가 미리 들어있어서 인식이 된다. 결론은 자원은 한 군데에서만 사용한다. ① USB 방식의 무선랜(.. 더보기
Wireless Hacking 무선 해킹 -> quick system information툴을 사용하여 핸드폰으로 정보를 검색해보자. basic information부분에서 네트워크부분에서 SSID, BSSID, MAC주소, IP주소, Gateway주소 등을 볼 수 있다. -> 192.168.0.1의 Gateway주소를 확인하고 접속하면 관리용 페이지를 볼 수 있다. -> 고급설정 -> 무선랜관리 -> 무선 설정/보안 -> SSID, 네트워크 키 등을 확인할 수 있다. -> 고급설정 -> 무선랜관리 -> 멀티 무선네트워크 -> securityhacker2를 선택하면 암호화방식, 키 등을 확인할 수 있다. -> 고급설정 -> 보안기능 -> 공유기 접속 관리 -> IP주소를 등록해서 접속가능한 사용자 필터링 할 수 있다. -> 고급설정 .. 더보기
Wireless Hacking summary 무선 해킹(Wireless Hacking) 목적 - Tool을 만드는 것이다. 칼리리눅스에다 무선랜카드를 설치하고 프로그램을 실행하면 주변 WIFI를 점검해서 그중에서 가장 강도가 높은것을 잡고, ID/PW걸려있는 것을 풀고 접속할 수 있도록 하는 Tool을 제작하는 것이다. ■ 무선(Wireless) - WIFI(Wireless Fidelity: /*무선 데이터 전송 시스템) 데이터통신으로 많이 사용한다. - NFC(근거리 무선 통신) /* 결제시스템, 단순한 메시지 교환에 사용 - 블루투스(Bluetooth) /* 기기간에 통신에서 모바일과 모바일의 주변기기들이 통신하거나 M2M으로 점대점 통신에서 사용. - 기타 ■ WIFI 전파나 적외선 전송 방식을 이용하는 근거리 통신망. 보통 ‘무선 랜(LAN.. 더보기
[War Game] FTZ Level 17 ■ Level17 풀이 level8 사용자 로그인 -> ID/PASS : level17/ $ cat hint void shell() { setreuid(3097,3097); system("/bin/sh"); } void printit() { printf("Hello there!\n"); } main() { int crap; void (*call)()=printit; char buf[20]; fgets(buf,48,stdin); call(); } => shell함수가 권한 상을을 시켜주는 수단이 될 수 있다는걸 알 수 있다. => 실행을 시켜보면 printi함수가 실행되고 shell함수를 변조하면 된다. $ cp /home/level16/hint /home/level16/tmp/shell.c $ cp /h.. 더보기
[War Game] FTZ Level 16 ■ Level16 풀이 level8 사용자 로그인 -> ID/PASS : level16/about to cause mass $ cat hint void shell() { setreuid(3097,3097); system("/bin/sh"); } void printit() { printf("Hello there!\n"); } main() { int crap; void (*call)()=printit; char buf[20]; fgets(buf,48,stdin); call(); } => shell함수가 권한 상을을 시켜주는 수단이 될 수 있다는걸 알 수 있다. => 실행을 시켜보면 printi함수가 실행되고 shell함수를 변조하면 된다. $ cp /home/level16/hint /home/level16/.. 더보기
산업 IoT에 최적화…‘SAP 레오나르도’ 출시 SAP가 기존 자사 사물인터넷(IoT) 솔루션을 하나로 묶은 ‘SAP 레오나르도(SAP Leonardo)’를 출시했다. 제조업이나 유통회사 등 제품 생산관리를 하는 곳에서 IoT를 통해 제품 생산과 예측을 쉽게 할 수 있게 돕는다. 보통 IoT 하면 스마트홈을 떠올리기 쉽다. 스마트폰 앱으로 청소기나 조명을 제어하고, 원격으로 집 밖에서 집 안에 있는 로봇 청소기나 에어컨을 관리하는 모습 말이다. 그러나 IoT는 집뿐만 아니라 공장이나 제조 설비 라인 등 다양한 산업 영역에서 활용할 수 있다. 애플과 구글, 페이스북 등이 가정 내 IoT를 주목했다면, SAP는 공장 등 산업환경에서 IoT를 활용해서 편리함을 얻을 수 없을까 집중했다. SAP는 지난해 9월 ‘2020년까지 사물인터넷 분야에 총 20억유로를.. 더보기
IDC, “2016년 IoT 지출 규모 약 866조원” 사물인터넷(IoT) 관련 시장이 빠르게 성장하고 있다. IT 시장 분석 및 컨설팅 기관인 IDC의 최근 연구보고서 ‘전세계 사물인터넷 반기 지출 가이드‘에 따르면, IoT 관련 하드웨어, 소프트웨어, 서비스 및 커넥티비티에 대한 투자가 많이 증가한 것으로 나타났다. 지난해 전세계 IoT 지출 규모는 전년 대비 17.9% 성장한 7370억달러다. 우리돈으로 약 866조원이 조금 넘는 금액이다. IDC는 전세계 IoT 지출은 2015-2020년 예측 기간 동안 연평균(CAGR) 15.6% 성장세를 보이며, 2020년 1조2900억달러 규모에 달할 것으로 전망했다. IDC는 지난해 12월 발표한 같은 보고서에서는 2015-2019년 예측 기간 동안 전세계 IoT 지출은 연평균(CAGR) 17% 성장세를 보이며.. 더보기
[용어로 보는 IT] APT 공격 (블로터) 트위터나 페이스북 같은 사회관계망서비스(SNS)를 이용하는 직장인 ㄱ씨는 어느날 자신이 평소 애용하던 음악 서비스와 관련해 e메일을 받았다. 즐겨찾는 서비스인 탓에 ㄱ씨는 별다른 의심 없이 e메일을 열어봤다. 그로부터 약 3개월 뒤, ㄱ씨가 다니는 회사의 고객 정보가 대규모 유출되는 보안 사고가 발생했다. 해커가 음악 서비스 관련 e메일로 위장해 ㄱ씨의 컴퓨터에 침입했던 것. 잠복하면서 때를 기다리던 해커는 적당한 시점이 되자 고객 정보를 모두 빼내갔다. 이처럼 다소 황당해 보이는 공격이 실제로 우리 주변에서 발생하고 있다. 해외에서는 ‘룰즈섹’이나 ‘어노니머스’ 같은 해커 단체가 FBI, CIA, 소니와 같은 특정 조직을 겨냥해 개인정보나 기밀을 유출한 사례가 보고됐다. 비슷한 시기에 국내에서는 인터넷.. 더보기
15_Level15 -> Level16[FTZ] 루틴 분기 키값의 이해 2 ■ Level15 -> Level16 ■ 목적 루틴 분기 키값에 대한 이해 2 메모리 값을 바꾸는 것과 메모리에서 가리키는 주소의 값을 바꾸는 것에 대한 차이점 이해 ■ Level15 풀이 level8 사용자 로그인 -> ID/PASS : level15/guess what $ cat hint #include main() { int crap; /* crack 변수 선언 */ int *check; /* *check 포인터 변수 선언 */ char buf[20]; /* buf[20] 배열 선언 */ fgets(buf,45,stdin); /* 키보드로 입력받은 문자열을 buf[20]에 할당 */ if (*check==0xdeadbeef) /* check 포인터가 0xdeadbeef 문자열을 가리키는지 확인 */.. 더보기