코퍼스의 블로그

Sources

Posts

5 posts

nmap 7.70 update

코퍼스의 블로그|2018년 4월 11일

최근에 nmap이 업데이트되었는데, 역시, ubuntu에서는 apt upgrade가 지원안되어서 source로 인스톨하였다. 혹시, 보안관련 체크일이 필요한 분들이라면, nmap을 업그레이드하기를 권한다.nmap의 기본 기능만으로도 유익하기는 하지만, 다양한 nse script를 사용하는 편리함도 있는데, 이전 nmap에서는 실행이 되지 않는 스크립트들이 있다. 찾아보니, 최신의 NSE(Nmap Script Engine) script에서 lua 5.3에서 부터 지원되는 operator('//')를 쓰는 경우가 있는데, 이게 old versin nmap에서는 안된다.nmap은 lua interpreter를 nmap 내부에 내장한걸 쓰기 때문에, 시스템의 lua를 업데이트하는 것만으로는 적용이 되지 않기 때

Devel::REPL 환경 꾸미기

Devel::REPL 환경 꾸미기

코퍼스의 블로그|2018년 3월 23일

Devel::REPL은 Perl에서 인터렉티브한 쉘환경을 제공하기 위해 나온 모듈이다. Lua, Python, Ruby 처럼 언어 자체에서 지원하는 것이 아닌, 외부 모듈로 제공되고 최근에 나온 것이지만,그 만큼 여러 편리한 기능들이 제공되기도 한다. 관련 설명을 더 알고 싶으면, 걍 아래 링크를 참고.Devel::REPL로 하는 심장이 좋아지는 개발 쉽게 얘기하면, 관련 모듈을 불러서 자신만의 필요 설정을 추가한 작은 스크립트 파일(보통 re.pl이라 불리며, 해당 모듈을을 인스톨하면 sample script도 같이 깔린다)을 실행해서자신만의 interactive perl 개발/테스트 환경을 쓸 수 있다는 것. 여기서 쓸 내용은, 플러그인 외에, 자신만의 여러 설정을 추가하는 법이다.(예를 들어,

modern perl 스타일로 한글 자르기

코퍼스의 블로그|2018년 3월 23일

Perl Cookbook 2nd edition에서 유니코드 핸들링 참고 use v5.14;use Encode; my $kor = decode 'utf-8', "안녕하세요 Hello";say encode 'utf-8', $kor; my @lx = $kor =~ /(\X)/g;say "length is " . scalar(@lx);say encode 'utf-8', $lx[0]

Lua 5.3.4 를 임베디드 시스템에 포팅하면서 느낀 점

코퍼스의 블로그|2018년 3월 23일

최근에 문서작업을 많이 한 탓에 데어서 그런지, 나이 들수록 게을러 지는 건지.. 글 쓰기가 점점 더 싫어지지만,뭔가 작업이 끝났을 때, 느낀 감상과 경험들을 글로 남겨두니 많은 도움이 되니.. 귀찮음을 무릅쓰고 글로 남긴다. . Lua 자체는 포팅이 매우 쉬운 언어이다. 사이즈도 작고, 빌드 환경도 Makefile 밖에 없으니 더더욱 쉽다. . 그런데, Lua 5.1 만 해도, Makefile에서 CC 를 target h/w에 맞는 컴파일러로만 맞춰주고, make posix 해주면 되던데, 지금은 좀 까다로워졌다. 터미널의 입력 키에 관해 편리한 기능(history 기능이 강화됨)이 들어갔는데, 이게 readline library를 이용하는 것이더라 그래서, target 머신에 맞게 미리 빌드된 r

15년여만의 Web Crawler(웹크롤러) 리뷰

코퍼스의 블로그|2018년 1월 16일

요새 'crawler' 관련 강좌가 눈에 많이 띄기도 하고, 아주 가~끔 써먹기도 해서요즘에 소개되는 웹크라울러 소개 내용이나 Tip들을 리뷰해보았다. 원래는 PPT 자료로 만들어서 slideshare 등에 올릴까 하다가, 주말지나고 나서 의욕이 사라졌지만,최소한의 것 정도는 기록에 남기려고 적는다.(웹.알.못인 주제에 아주 살짝 훑어보고, 테스트 해 본 거라 잘못된 것이 당연히 있을 수 있다.) . 요즘에 소개되는 crawler 강좌 들은 엄밀히 말해서, crawler를 만든다기 보다는 Web automation or web scraping 에 관련된 tip 들이더라. 제대로 된 웹크라울러를 만들려면, 하이퍼텍스트 다큐먼트들간의 네트워크 구조에 대한 고려(알고리즘 설계)와 시스템 프로그래밍(분산처