인공지능 썸네일형 리스트형 webhacking.kr [문제 24번] 24번 문제를 풀어보겠다. 해당 문제의 배점은 100point이며, 다소 쉬운 문제로 예상된다. 군말없이 클릭해보자. 현재 접속 클라이언트의 IP주소가 보여지며, Wrong IP!라는 메세지를 보여준다. 무언가 적절한 아이피 주소로 변경한다면, 해당 문제를 풀 수 있을 것 같다. 소스코드 또한 확인해보자. 소스코드에 눈에 띄는 부분이 있다. index.phps 를 제공하고 있다. 의심의 여지없이 확인해보자. 다음과 같은 소스코드를 보여주며, 해당 소스코드를 분석하여, 공격방법을 생각해보자. 코드 분석) 분석에 주석을 구체적으로 달아놓았으니 참고하자. 여기서 눈여겨 봐야할 부분이 '12'와 '7.' '0.'을 공백으로 대체한다는 것이다. 만약 112277..00..00..1 해당 문자열을 대입했을 경우, .. 더보기 webhacking.kr [문제 23번] 23번 문제를 풀어보겠다. 해당 문제의 배점은 200point이다. 23번 문제를 접속해보니, 입력 폼 한가지가 있고, 힌트로는 를 인젝션하라고 한다. 그럼 한번 해당 스크립트를 인젝션해보자. 당연히 이렇게 쉽게 될리가 없다. 특정 문자들이 필터링 되어 있는 것으로 확인된다. 어떤 문자열들이 필터링 되어 있는지 체크해보자. 해당 문자열을 토큰 단위로 쪼개어 체크해보았다. 1) 4) alert 5) ( 6) 1 7) ) 8) ; 9) / 해당 필터링 된 문자들을 확인해보면, 각 특수문자들을 필터링 되어있지 않지만, 'script'와 'alert'문자열들은 필터링 되어있는 것으로 확인됬다. 그렇다면 해당 문자열을 이루고 있는 문자들도 필터링 될까? 다행이 아닌 것으로 확인되었다. 그렇다면 해당 문자들을 nu.. 더보기 webhacking.kr [문제 22번] 오늘은 22번 문제를 풀어보겠다. 사실은 며칠전에 풀었지만, 포스팅하지 못하였다. 해당 문제의 배점은 500point이며, 점수 배점이 높은거로 봤을 때, sql injection문제가 아닐까 조심스레 예상해본다. 해당 페이지 접속시, 다음과 같은 로그인 폼이 보인다. 힌트에 유의해야 할 부분이 있는 데, if($id=='admin') echo("good! Password is $solution"); 해당 부분에서 로그인한 아이디($id)가 'admin'이면 패스워드를 출력하는 것으로 확인된다. 먼저 해당 입력폼의 임의의 아이디를 넣고 로그인해보자. 역시나 Wrong! 이라는 메세지를 보여주면서 로그인 실패한다. 한번 회원가입해볼까? username은 'lidron'으로 password는 'crack'으.. 더보기 문장의 해당 언어 판별하기 이 포스팅은 서적 '머신러닝, 딥러닝 실전개발 입문'을 참고한 포스팅입니다. 고대 바빌로니아 인들의 신에 대한 도전(?)으로 인한 바벨탑이 무너지게 되었고, 21세기는 수많은 사람들이 수많은 민족과 국가라는 프레임의 나뉘어 서로 다른 언어를 사용하고 있다. 이러한 소통의 문제는 생각보다 인류의 발전에 큰 걸림돌이 되고 있다. 만약 컴퓨터 소프트웨어를 이용해서 어떤 언어이든지 내가 이해할 수 있는 언어로 번역하여주는 완벽한 번역기를 개발한다면 인류의 발전에 크게 도모할 것으로 예상된다. 만약 스마트 글래스의 동적 문장 번역 기능을 추가한다고 하면 특정 문장을 보고 내가 해당하는 국가의 언어로 동적으로 번역하여 준다는 가정하에 문장을 번역하기전에 어떤 언어에서 어떤 언어로 번역할 것인지를 정해주어야 하는 데.. 더보기 웹 상의 정보를 추출하기 이 포스팅은 서적 '머신러닝, 딥러닝 실전개발 입문'을 참고한 포스팅입니다. 이전 포스팅에서 우리는 머신러닝을 하기 위한 양분 데이터의 중요성을 알아보았다. 그렇다면 웹상에 돌아다니는 무수히 많은 정보를 얻어야 우리는 머신러닝을 구현하지 않을까? 실제로 웹 상의 데이터를 구하는 방법을 작성하겠다. 파이썬에서는 웹 사이트에 있는 데이터를 추출하기 위해 "urllib 라이브러리"를 사용한다. 해당 라이브러리를 이용하면 HTTP 또는 FTP를 사용해 데이터를 다운로드 할 수 있다. 그렇다면 웹상의 이미지를 실제로 추출하여 보자. # 라이브러리 읽어 들이기 --- (※1) import urllib.request # URL과 저장 경로 지정하기 url = "http://uta.pw/shodou/img/28/214.. 더보기 머신러닝의 양분, 빅데이터(BigData)와 활용 이 포스팅은 서적 '머신러닝, 딥러닝 실전개발 입문'을 참고한 포스팅입니다. 컴퓨터가 개발된 이래로 우리는 컴퓨터를 이용하여 무수히 많은 데이터를 양산해오고 있다. 1991년 2월 26일 팀 버너스리의 WWW(World Wide Web)의 개발이후로 더욱 가속화되었으며, 스마트폰 보급 및 개인 SNS의 확산은 폭발적인 데이터의 양산을 촉매시켰고 현재 이 포스팅을 작성하는 것도 하나의 데이터의 양산으로 볼수있다. 그렇다면 머신러닝에 있어서 무수히 많은 데이터들이 어떠한 역할을 할까 생각해볼 필요가 있다. 머신러닝이란 인간의 뇌가 자연스럽게 수행하는 "학습"이라는 능력을 컴퓨터로 구현하는 방법이다. 조금더 구체적으로 말하자면 "수많은 데이터를 학습시켜 거기에 있는 패턴(규칙성)을 찾아내는 것"이다. 패턴(규.. 더보기 인공지능, 머신러닝 그리고 딥러닝 2016년 3월 인류에게 있어서 잊지못할 하나의 사건이 발생했다. 알파고와 이세돌 9단과의 바둑 경기에서 이세돌 9단이 승리할 것이라는 모두의 예상과는 달리 알파고(AlphaGo)의 불계승으로 경기는 종료되었다. 과연 인공지능이라는 것이 무엇이기에, 사람의 지혜와 경험을 넘어서는 인류최고의 발명품이라고 불리는 것일까. 그동안의 바둑이라는 스포츠는 컴퓨터가 인간을 뛰어넘을 수 없는 창의적 사고활동이라는 말이 있었다. 이유를 구체적 살펴보면 컴퓨터는 전기 신호를 이용하기 때문에 계산이 엄청나게 빠르지만 그래도 바둑의 모든 경우의 수를 전수조사하기 위한 한계가 있다. 네덜란드의 컴퓨터 과학자 존 트럼프는 바둑판의 격자가 2x2인 경우부터 착수 경우의 수와 해당하는 착수 비를 계산하였다. 결과는 다음과 같았다... 더보기 이전 1 다음