본문 바로가기

[PCMC의 기록]

(84)
Bot Detection / 크롤러 차단 / 크롤러 우회 #2 디버깅의 필요성2 계속 차단되는 포인트가 뭘까.. 여러가지 시도를 해봤다. 일단 구글링과 StackOverflow를 뒤져가면서 알아낸 사실은 1. Selenium Webdriver의 Preference는 Runtime 중에 (Webdriver가 Instance로 만들어진 상태)는 변경할 수 없다. 2. Proxy IP 또한 마찬가지로 바꿀 수 없다. Firefox의 경우 webdriver에서 about:config로 접속해서 바꿀 순 있긴 하지만, 영 찜찜.. 1번의 경우는 header의 User-Agent 필드 값을 사전에 List로 정의해서 연결할 때마다 다른 User-Agent를 갖도록 위장하기 위해서 시도했었는데, Selenium을 사용하는 경우 불가능하다고 한다. 2번의 경우도 마찬가지, 크롤링..
Bot Detection / 크롤러 차단 / 크롤러 우회 #1 에이, 너가 그런거 아니지? 그냥 좋은 로직으로 크롤링만 하면 만사인줄 알았는데, 고비가 하나 더 있었다. CLI 환경에서 죽어라 크롤러를 돌리는데 자꾸 이상한 타이밍에서 Response를 못받아오거나, Connection Refuse가 발생해서 크롤러가 죽는 경우가 있었다. 내가 웹사이트 구조를 잘 이해하지 못해서 어디선가 Exception이 발생하는 건가.. 했지만, try / catch로 잡아보려고 해도 Exception은 발생하지 않았다. URL 문제인가? 라고 생각하면서 주소창에 여러가지 주소를 빠르게 넣어보며 웹페이지를 돌아 다니던 중, 갑자기 리다이렉션된 페이지. 정말 흠칫했는데 동시에 아차 싶었다. 지금까지 연습해온 크롤링은 정말 소규모에 불과했고, ..
dpkg: error: parsing file install의 늪요번에 pcapy를 설치하던 중에 엄청나게 고생했는데.. 다름아닌 dpkg 때문에.. pcapy를 apt-get 같은 패키지 설치관리자가 아니라 수동으로 git hub 에서 받아오다보니, 여러 의존성 문제가 발생했다. 중간에 pcap가 설치가 안된 것을 보고 설치하려 했다.apt-get install libpcap-dev그런데, 에러가 하나 발생했다.dpkg was interrupted you must manually run "sudo dpkg --configure -a " ....시키는대로 하면 되겠지하고 sudo dpkg --configure -a 를 터미널에 입력하자,dpkg: error: parsing file '/var/lib/dpkg/updates/0001' near line..
[190222] 모의해킹 환경구성 갑분칼로그 분석과 관련해서 평소에 흥미를 두고 있었는데.. suricata나 snort같은.. 막상 써보고 싶어도 분석할 로그를 못찾겠어서 계속 어떻게 해야되나 생각만해왔다. 근데 모의침투환경을 내가 만들면 되는 것 아닌가 싶어서.. VMware로 우분투와 Kali를 설치했다. 설치 가이드 같은 포스팅은 아니고.. 그냥 기록일 뿐이니 Kali 설치와 한글 설정 등에 대한 내용은 다음 블로그에서 매우 잘 기술해 주셨다. (https://gmyankee.tistory.com/125) MsfvenomKali에 있기도 하고 취약점 분석 툴로 대표적인 Metasploit을 이용해서 snort 로깅 테스트를 해보자. linux 환경에서 실행될 reverse_tcp 바이너리를 하나 만들어줍니다. msfvenom 즉 ..
RF Receiver & Transceiver / 스마트키 해킹 ※ 개인이 임의로 소유한, 허가받지 않은 무선 송출 장치에의한 전파 송출은 위법이 될 수 있음을 사전에 알려드립니다. 스마트키 해킹 얼마전에 뒤늦게서야 본 스마트키 해킹 관련 소식.. 핵심은 자동차 스마트키의 원리 였는데, 스마트키의 버튼이 눌릴 때 마다 특정 주파수 대역의 신호를 송출하고, 자동차에 내장된 센서는 이 신호가 자신의 범위 안에서 감지되면 자동차 잠금을 해제하는 방식으로 구성되어 있다. 당연한 이야기지만 제조된 스마트키들은 짝을 이루는 자동차와 고유한 값을 기반으로 만들어진 주파수를 송출하는 것으로 보인다. 이 주파수의 대략적인 대역은 제조사마다 상이하다. 문제는 아직도 존재하는 취약점 제기된지 꽤 오래된 문제임에도, 아직 특별한 대책은 나오지 않고 있다. 자신의 신호가 유출되는 것을 막으..
[190212] Chegg study 환불 환불을 해주지 않는 건 미국식 마인드인건가라며 나의 Subscription과 My Page를 들락거리며 정말 환불이 안되는건가 왜 구독 중지밖에 없지.. 말도 안되는 상상을 할 때 쯤, 뭔가 Chegg는 음지에서 사용하는 그런 느낌이었는데 (해설을 본다는 이유에서인가..?) 생각보다 많은 사람들이 환불하는 방법을 몰라서 헤매고 있었다. 어디에나 고객센터는 존재했고 한국사이트가 아니라서 그런가 고객센터를 통해서 상담한다는 걸 생각 조차 못했다. 결론은 고객센터로고객센터로 가서 구구절절 변명과 설명을 할 필요조차 없다.. 상담원의 매우 빠른 처리에 깜짝놀랐을 뿐.. 환불하는 방법은 아래에 순서대로 적어 놓았다. 프로필 아이콘을 누르면 위와 같이 "Help" 항목이 나온다. "Help"를 누르면 여러가지 많이..
[190125] performance in selenium / 셀레니움에서 성능 향상과 관련하여 Selenium BeautifulSoup은 웹페이지가 로딩된 후 동적으로 불러들여지는 요소 (javascipt)에 대해서는 적절하게 대응을 할 수 없는 것 같다. 자바스크립트가 없는 페이지는 없으며, (내가 스크래이핑을 원하는 웹페이지 중에는) 결국 이에 대응할 수 있는 Selenium은 불가피했다. 뭔가 지금까지 코딩을 해오면서의 감으로 인한 것일까, Selenium의 속도부터 걱정됐다. 어쨌든 깔아서 코드에 적용해봤고, 역시나 느렸다. 너무 많이... Selenium Browser 언제나 그렇듯 우리의 선배 개발자분들 께서 다져놓은 길이 있다. Selenium또한 성능향상을 꾀할 수 있다는 것. 일단 기본적으로 Selenium은 브라우저가 필요하다. Chrome, Firefox 등 코드가 실행되는 과..
[190119] requests In Python BeautifulSoup를 이용해서 원하는 데이터를 긁어올 수 있는 것은 참 멋진데, 보통 내가 원하는 양질의 데이터들은 단순히 HTML에 툭툭 나열되어있는 것이 아니라, 특정 카테고리를 선택해야 한다던가, 특정 키워드를 검색해서 양질의 데이터를 제공한다. 그 말인 즉, 스크래이퍼가 마치 사람인양 요청을 해야한다는 것이다. 예를 들어서, 주택청약정보를 담고있는 아파트투유 홈페이지 ("https://www.apt2you.com/") 에는 보통 사람들이 많이 관심을 갖는 주택분양 경쟁률이나 결과가 업로드된다. 여러가지 필터링을 통해서 원하는 지역의 주택을 검색하고 해당 주택의 청약 경쟁률이나 공급현황, 이미 공고가 끝났다면 평균 가점, 최저/고 가점 등을 참고할 수 있다. 한마디로, 원하는 지역의 정보를 스..