[00:16] <autowiz> 안녕하세요
[00:16] <autowiz> ldap db 말씀하시는거지요?
[00:18] <Work^Seony> 테스트 사이트는 루비온레일즈에 mysql이에요
[00:18] <Work^Seony> 근데 레일즈 이거 취약점을 전혀 찾을 수가 없네요
[00:19] <autowiz> 모의 해킹인가요? ㅎㅎ
[00:21] <autowiz> OS 자체취약점보다는 웹 앱 취약점이 위험한 경우가 많은데 ... 그냥 sql 인젝션 만 테스트 해보실려는건지
[00:21] <Work^Seony> 모의해킹이라고 봐야겠죠 ㅎㅎ
[00:21] <Work^Seony> 그러니까,
[00:21] <Work^Seony> 현재 저희는 교수진 논문자료가 ldap에 보관되어있거든요
[00:22] <Work^Seony> 근데 개발자들이 ldap 사용을 불편해하니까,
[00:22] <Work^Seony> 어떤 개발자 하나가 이걸 ldap에서 db로 옮겨오는게 어떻겠냐고 제안을 했어요
[00:22] <Work^Seony> 그래서 얘길하다가 어쩌다보니 sqlmap까지 얘기가 나오게 됐어요...
[00:22] <Work^Seony> 제가 이거 해서 뚫으면, 아마 db로 옮겨가는거 취소할지도 몰라요 ㅎㅎ
[00:23] <autowiz> 해커 써니 ~ 이러면서 기사 실리는거 아닐까 싶은 ㅎㅎ
[00:24] <Work^Seony> ㅎㅎ 뭐 그 정도까진 아닌데요, sql injection의 무서움과 sqlmap의 강력함을 얘기하다보니 그리됐죠
[00:25] <autowiz> 언어들이 다들 그렇지만
[00:26] <autowiz> sql 인젝션이나 파일 업로드 취약점 관련해서 프로그래머 들이 코딩 몇줄로 보호를 하고는 있습니다.
[00:26] <Work^Seony> 로그인 화면에서 보여주는 폼이랑 post, 헤더값으로 쿼리를 날려보는데,
[00:26] <autowiz> 그 코드의 헛점을 찾아내거나 새로운 취약점을 찾아야 할지도 모르겠습니다.
[00:26] <Work^Seony> 취약점은 커녕 디비가 뭔지도 알아내질 못하네요
[00:27] <autowiz> 웹서버 베너 변조하고 그런기본적인 작업들이 잘 되 있는건지도 모르겠네요
[00:28] <autowiz> 로그인은 했는데
[00:29] <Work^Seony> 일단, 외부에서는 로그인이 안되는 사이트라서, 걍 제3자의 입장으로 취약점을 스캔 중이거든요
[00:29] <autowiz> 다른 부분에서 취약점이 있다는 ... 예를들면 로컬 사용자가 부당한 권한을 취득할 수 도 있다는 ... 그런쪽 테스트는 어떨까요?
[00:29] <autowiz> 보통 이게 더 쉬운경우가 많지 않을까 싶은데요
[00:29] <Work^Seony> 아뇨 그럴 걱정은 없어요
[00:30] <Work^Seony> 어차피 교직원 외에는 로그인이 안되는 사이트거든요
[00:30] <autowiz> 교직원중 하나가 악의적인 마음으로 다른사람의 자료를 지운다는 ㅜㅜ  가정까지도 하게 되는지라
[00:30] <autowiz> (나쁜 오즈 ㅠㅠ )
[00:31] <Work^Seony> ㅎㅎ 뭐 그런 가능성이야 당연히 충분하겠지만, 보통 그런 경우는 저희는 고려하지 않고 있어요
[00:31] <autowiz> 제가 sqlmap 공부하고 와서 도와드리겠습니다. ㅎㅎ
[00:32] <Work^Seony> 저희 사이트 주소 알려드릴테니 여기로 테스팅 해보세요
[00:32] <Work^Seony> 인젝션은 하지마시고, 그냥 디비 구조 테이블 구조가 보이는 정도까지만 되면 충분합니다 ㅎㅎ
[00:32] <autowiz> 쿼리로 ㅎㅎ
[00:36] <autowiz> 서니님 일하시는곳이 하와이 주립대 중에서 제일 큰곳인가요? ㅎㅎ
[00:37] <Work^Seony> 제일 큰 것까진 잘 모르겠는데, 큰 편이에요
[00:37] <Work^Seony> 교직원이 400명이거든요
[00:41] <autowiz> 도메인이 멋지네요 ㅎㅎ
[00:41] <Work^Seony> kapa요?
[00:41] <Work^Seony> 하와이어일 거에요...
[00:41] <Work^Seony> 이 동네는 이상하게 서브도메인을 하와이어로 짓는 습관이 있거든요..
[00:43] <autowiz> 아니요 coe.hawaii.edu  면 college of engineering 일꺼같고
[00:43] <Work^Seony> 아...
[00:44] <Work^Seony> 보통 그렇게들 예상하는데, 저희가 공대보다 서브도메인을 먼저 선점했습니다 ㅎㅎ
[00:44] <autowiz> hawaii.edu 니까 하와이 에서 하나 밖에 없을 도메인을 사용하고 계시는거니 ㅎㅎ
[00:44] <Work^Seony> 글쵸 주립대는 주에 하나뿐이니깐요
[00:44] <autowiz> college of education ?
[00:44] <Work^Seony> College Of Education이죠
[00:44] <Work^Seony> 네 ㅎㅎ
[00:45] <autowiz> 저희도 대학교 사이트들이 많아서 가끔 학과들 약어로 서브도메인을 만드는데
[00:45] <autowiz> 서로 이걸 해야겠다고 싸우는경우도 있고 ㅋㅋ
[00:45] <Work^Seony> 서브도메인이야 한 번 임자 맡으면 끝이지 않아요?
[00:46] <autowiz> 전체적인 대세라는게 있으니까요
[00:46] <Work^Seony> 저희 같은 경우는, coe.hawaii.edu를 저희가 쓰니까, 저희쪽 내부 부서에서는 서브도메인을 하나 더 붙여주거든요.  kapa-demo.coe.hawaii.edu 이런 식으로요...
[00:46] <autowiz> 간혹 쌍방합의로 바뀌는경우도 있습니다.
[00:47] <Work^Seony> 음... 말씀하신 김에 생각나서 공대는 서브도메인 뭔가 봤더니 eng네요 ㅎㅎ
[00:47] <Work^Seony> 엥?  바뀌면 해깔리게 되잖아요..
[00:47] <autowiz> 예를들어 다른 대학들은 공대가 coe 를 쓰는데 우리 대학만 어쩌다보니 eng 를 쓰고 있다 이런경우
[00:47] <Work^Seony> 도메인 서버 설정 전부 다 바꿔야되고...
[00:48] <Work^Seony> 음... 다른 대학들이 어떻게 쓰는지 볼 필요가 있나 싶네요.  한국이라 그런가...
[00:48] <autowiz> 그래서 어지간해서는 안바뀌는데 아주 간혹은 있습니다. 정 안되면 사이트 개편할때 라던가 도메인이 개편? 될때
[00:49] <autowiz> 다른 대학 사이트 들어가보면 서브도메인이 뭔지는 알아볼 수 있잖아요
[00:49] <ipeter_> 네
[00:49] <autowiz> 저희는 희안하게 도메인이 바뀔때가 종종 있습니다.
[00:49] <Work^Seony> 헐 그렇군요.
[00:49] <autowiz> 근래에는 대학 통폐합도 많았던 편이고
[00:49] <Work^Seony> 여기서는 절대 일어날 수 없는 일입니다
[00:51] <autowiz> 예를들면 UbuntuUniversity.ac.kr 에서 uu.ac.kr 로 바껴버리는거지요
[00:51] <autowiz> 추가가 된다고 하는게 맞을지도 모르겠습니다.
[00:52] <Work^Seony> 너무 길어서 줄이는건 좀 이해는 되네요 ㅎㅎ
[00:53] <autowiz> 아 배고파서 컵라면이라도 하나 먹어야 겠습니다. ㅠㅠ
[00:54] <Work^Seony> 음... 스캔이 안되는건지 내가 못하는건지..
[00:54] <Work^Seony> 미팅 가서 "사이트 조낸 튼튼합니다" 이러기도 거시기하고
[00:54] <autowiz> 미팅은 언제이신가요?
[00:56] <Work^Seony> 담주 목요일이에요
[00:57] <autowiz> 로그인 페이지는 정말 빡시게 짤려고 하면 간단하니까능
[00:57] <autowiz> 내용이 가단하고 짧으니까 빡시게 짜는게 가능할것도 같은 ㅠㅠ
[01:06] <autowiz> authenticity_token 를 써서
[01:07] <autowiz> 단순 무식한 접속시도는 막고 있네요 역시 외국물이 좋긴 좋습니다.
[01:07] <autowiz> 한국에선 이런사이트 보기가 힘들어서 ㅋㅋ
[01:07] <Work^Seony> 그렇군요
[01:07] <Work^Seony> 근데 이게 어떤 식으로 운영되는건지는 잘 모르겠어요
[01:07] <Work^Seony> 걍 랜덤 스트링 만들어서 세션에 넣는 건가요?
[01:08] <autowiz> js 중에 뭔가 처리하는부분이 있지 않을까 싶습니다.
[01:08] <autowiz> 로그인 페이지 위쪽에 보면
[01:09] <Work^Seony> 말씀하신 단순무식한 접속시도 차단 같은건 보통 어떤 형태로 구현하는 거에요?
[01:09] <autowiz> 음...제가 생각했던거랑조금 다르네요 ㅋㅋ
[01:10] <autowiz> 뭐 그래도 막을 수 는 있습니다.   상단에 meta 태그로 넘겨주는
[01:10] <autowiz> authenticity_token 값하고 폼 안에 있는 authenticity_token 값이 어떤 쌍을 이루게 서버쪽에 프로래밍 되어 있을거구요
[01:11] <Work^Seony> 아... 뭐 결국 서버 측에 뭔가를 남겨서 대조하는 거군요...
[01:11] <autowiz> 폼데이터를 전송하면서 authenticity_token 가 없거나 하나로 고정된경우
[01:11] <Work^Seony> phpmyadmin도 그렇고 보통 랜덤문자열 생성해서 세션에 넣고 대조하는 거야 일반적이니...
[01:11] <autowiz> 페이지 상단의(세션의) meta tag 에 있는 authenticity_token 랑 맞지 않으니까 허용이 안되게 해놓았을껍니다.
[01:12] <autowiz> 간단한 스캐너의 경우 POST 만 그냥 주구장창 쏘아대잖아요
[01:12] <autowiz> 그러면 저 페이지는 100% 걸러버리겠지요
[01:13] <autowiz> 98% 일려나?
[01:13] <Work^Seony> 아 그렇겠군요
[01:15] <autowiz> 웹스캐너가  홈페이지 소스를 전부 정상 처리하면서 동작해야 할거 같습니다만
[01:16] <autowiz> 다시 생각해보니 제가 틀렸을 가능성도 있을거 같습니다. ㅋㅋ
[01:16] <autowiz> 와이어샥으로 떠봐야겠네요 ㅋㅋ
[01:16] <Work^Seony> ㅎㅎ 넵
[01:29] <JasonJang> 어유~ 죽겠다. 지난 밤, 아니 오늘 새벽까지 너무 달렸더니...ㅠㅠ
[02:39] <Work^Seony> sqlmap으로 아는 동생이 만든 웹사이트 한 번 돌려봤는데,
[02:40] <Work^Seony> 디비 구조에서 시작해서 테이블 구조, 데이터, 덤프, 다 나오는데다
[02:40] <Work^Seony> 심지어 쉘 커맨드까지 날릴 수 있네요
[02:40] <autowiz> mysql 직접접속한거랑 같네요 그정도면 ㅎㅎ
[02:42] <Work^Seony> 쉘커맨드는 다 가능한 것 같진 않네요
[02:44] <autowiz> db 사용자 권한이라서 그럴 수 도 있구요
[02:46] <Work^Seony> 서버사이트 언어가 뭔지 물어봐서, 거기서 php라고 적어주니까 쓰기가능한 디렉토리를 불러달라네요
[02:46] <Work^Seony> 아마 쓰기가능한 디렉토리에 명령어를 직접 써서 실행하는 거 같아요
[02:51] <autowiz> 음... system 같은걸로 일일이 실행하는거보다 sh 파일 하나 만들어서 system 명령으로 그 쉘을 실행하는걸 수 도 있겠네요. 어쩌면
[02:51] <autowiz> 특정 문자열 검출기능을 피하기 위함 일 수 도 있구요
[02:52] <Work^Seony> sqlmap 이거 무섭네요 ㅎㅎ
[02:52] <autowiz> 파일로 시스템 커맨드를 저장할려고 할때 실제 명령어를 파일에 쓰기 직전까지 인코딩해서 네트웍으로 전송한다음
[02:52] <autowiz> 서버단에서 디코딩 할 수 있다면
[02:53] <autowiz> DB 에서 시스템 명령어 내리는 옵션은 운영 DB 에서는 필히 꺼야 할거 같습니다. ㅠㅠ
[02:54] <Work^Seony> 저는 select, insert, update, delete만 키긴 하거든요
[02:54] <Work^Seony> 근데 사실 저 4개도 이미 위험하죠 ㅎㅎ
[02:55] <Work^Seony> 로그인할 때 사용하는 디비 계정을, select만 가능하게 하고
[02:55] <autowiz> 사용자한테 실행가능한 명령어 지정하는거 말고도 DB 설정 자체에서 system 명령어를 빼버리는게 있었던거 같습니다.
[02:55] <Work^Seony> 로그인 이후에는 4개 모두 실행이 가능한 유저를 만들어서 쓰는 식이면 괜찮을까요?
[02:55] <autowiz> 네 DB 사용자 계정도 가능하면 세분화 해서 select , update 따로 두는것도 필요하지요
[02:56] <autowiz> 종종 있는 일인데 얼마전에도 모 대학 신규서버 들어가면서
[02:57] <autowiz> 여러 업체에서 원격작업해야하는 상황이 생겼는데 귀찮다고 방화벽에서 IP 를 all 로 열어버렸더군요
[02:57] <autowiz> 거기까지는 뭐 그랬는데 , 하필이면 패스워드를 root123 이나 root!@# 으로 해놔서
[02:57] <autowiz> 1주일 예정된 작업 이틀만에 뻥~
[02:57] <autowiz> OS 재설치 ㅋㅋ
[02:58] <Work^Seony> 헐 ㅎㅎ
[02:58] <autowiz> fail2ban 이것도 OS 기본설치에 포함되야 한다고 봅니다 ㅋㅋ 귀찮거나 잘 모르는 엔지니어들을 위해서
[03:00] <ircCloud^Seony> 엥?  기본 아닌가요? ㅎㅎ
[03:01] <autowiz> 우분투 서버는 기본이었던거도 같네요
[03:01] <autowiz> 저희 회사 어떤분이 자꾸 centos 를 신봉하셔서
[03:01] <ircCloud^Seony> 아뇨 그게ㅜ아니라
[03:01] <ircCloud^Seony> 서버 설치하면 당연히 설치해야하는 필수품...
[03:01] <autowiz> 저런게 있는지도 모르는 사람들하고 일하느라 힘들어요 ㅋㅋㅋㅋ
[03:02] <ircCloud^Seony> 근데 방화벽이 귀찮을게 뭐 있어요
[03:02] <ircCloud^Seony> 몇개만 막으면 될걸
[03:03] <autowiz> 해당업체한데 IP 를 받고 열거나 VPN 연결 혹은 프록시 기능 있는 접속 솔루션을 쓰고 있긴 하는데
[03:03] <ircCloud^Seony> Ssh도 포트를 바꾸는 것만으로도 접속시도 엄청나게 줄어드는데
[03:03] <autowiz> 해당 업체 엔지니어들이 사무실에서 일할지 집에서 일할지 몰라서 그랬다는거 같기도 하고
[03:03] <ircCloud^Seony> pfSense에 기본 탑재된 기능이네요 ㅎㅎ
[03:05] <ircCloud^Seony> 아번에 sqlmap 써보고 느낀게, 저희처럼 폐쇄적인 사이트는 해킹이 정말 어렵고, 조금만 개방되면 쫄딱 털릴 수 있다는 거네요 ㅎㅎ
[03:07] <autowiz> 기본세팅으로돼있는경우 훌러덩 다 털리지요
[03:07] <autowiz> HK 찡
[03:07] <autowiz> 방가방가
[03:15] <autowiz> form 뒤에 뭔가 있는지도 모르겠고 ㅎㅎ
[03:15] <autowiz> form 도 토큰이랑 몇몇 기능으로 보안해놓았네요
[03:16] <autowiz> 공부하고 다시 봐야겠습니다. ㅋㅋ
[03:29] <HolyKnight> ㅎㅇㅇ
[05:56] <PotatoGim> 안녕하세요~
[06:03] <HolyKnight> ㅎㅇㅇ
[06:05] <PotatoGim> ㅎㅎ 오늘도 IRC를 굳건히 지키고 계시는군요.
[06:24] <HolyKnight> 데헷
[06:34] <PotatoGim> 간만에 라면 2개를 먹었더니 엄청 배가 부르네요;
[06:42] <sungyo> ...
[06:42] <PotatoGim> 안녕하세요~
[06:42] <sungyo> ~(_ _    )~(  _  _ )~ 꾸벅...
[06:42] <sungyo> 안녕하세요.
[06:42] <sungyo> [444101.258642] zentyal-firewall drop IN=eth0 OUT= MAC=ff:ff:ff:ff:ff:ff:40:8d:5c:15:13:92:08:00 SRC=175.194.198.63 [More Information] DST=175.194.198.255 [More Information] LEN=123 TOS=0x00 PREC=0x00 TTL=128 ID=19108 PROTO=UDP SPT=9006 DPT=9006 LEN=103 MARK=0x1
[06:43] <sungyo> 서버 로그를 살피면, 드랍 로그가 항상 쌓이는데 원래 그런건가요?
[06:43] <sungyo> 이걸 항상 모니터링 하고 있어야 하는지도 궁금하네요.
[06:43] <PotatoGim> iptables 설정에서 추가하셨나보네요.
[06:44] <PotatoGim> 같은 출발지에서 지속적으로 접근 거부가 발생하는 경우에는 크래킹을 시도하는 경우가 많습니다.
[06:44] <sungyo>  인풋 기본 정책이 드랍이긴 해요.
[06:46] <PotatoGim> 개인용으로 편하게 쓰시는 시스템이고 보안이 중요하지 않다면 -j LOG만 빼주셔도 되긴 할텐데...
[06:46] <sungyo> iptables 로그 설정에서요?
[06:46] <PotatoGim> 가능하면 별도의 로그로 빠지도록 syslog를 설정해주시는게 좋지 않을까 싶습니다.
[06:47] <PotatoGim> 네, iptables의 정책 중에 드롭에 대해 -j LOG로 준게 있을 것 같네요.
[06:48] <sungyo> 드랍 패킷은 많이 발생해도  서버 과부화까지 올라가기가 어렵나요?
[06:49] <PotatoGim> 전체 거부 루틴이 어떻냐에 따라 다르겠지만 서비스에 영향을 미치기는 참 쉽습니다.
[06:50] <sungyo> 최전방 라우터가 타버릴 수도 있겠네요?
[06:50] <PotatoGim> 그걸로 인해 화재가 발생했다는 이야기는 아직까지 못 들어봤으나..ㅎㅎ
[06:50] <PotatoGim> 서비스에는 불이 납니다.
[06:50] <sungyo> 아...타버릴 수 있다는게..
[06:50] <JasonJang> ㅎㅎㅎ
[06:51] <sungyo> 제이슨님 꾸벅...
[06:51] <JasonJang> 오랜만요~ 선교님
[06:51] <sungyo> 네..
[06:51] <PotatoGim> 안녀항세요~
[06:51] <PotatoGim> 윽.. 오타..
[06:51] <sungyo> 항세 하니 '항생제'가 떠오르는데, 실제 우리나라 항생제 투여율이 전체 국가별로 비교해서 낮은편이라고 하더라구요.
[06:53] <PotatoGim> 음... 항생제 투여율이 높아야 좋은건가요?
[06:54] <sungyo> 실제로  ddos로 개인서버가 타버렸다는 이야기를 가끔씩 듣기는 했어요.
[06:54] <PotatoGim> 무지하다보니..ㅜ
[06:54] <sungyo> 낮아야 좋다고 들었어요.
[06:54] <sungyo> 높으면 나중에 잘 안든데요.
[06:54] <PotatoGim> 아하... 치료를 목적으로 사용되는 항생제 투여율인가보네요.
[06:54] <sungyo> 가만히 생각해보면.. 한국사람들이 항생제가 잘 안듣는건 복용하는 항생제 때문에 아니라 우유에 포함된 항생제때문일런지도 모르겠어요.
[06:55] <sungyo> 네.
[06:55] <PotatoGim> 우유에도 항생제가 포함되어 있군요;
[06:55] <PotatoGim> 이틀에 큰거 한통씩은 비우는데..
[06:57] <sungyo> 쫌 그런 말이 있더라구요.
[06:58] <PotatoGim> 이래저래 과하면 안 좋다는 말은 들었었는데 대체할만한 요기거리가 없네요..ㅜ
[06:58] <sungyo> 음, 의사선생님이 잘 아실텐데 오늘은 안보이시네요.
[06:58] <PotatoGim> 주말이라...ㅜㅜ
[07:04] <sungyo> 궁금한게 생겼는데, 혹시  ubuntulo12를 대화차단하면 우분투서버측에 로그가 안쌓이는건가요?
[07:04] <sungyo> ㅎㅎ
[07:08] <PotatoGim> 음.. 아마도 그러지 않을까요?ㅎㅎ
[07:08] <PotatoGim> 근데 차단하면 내가 쓰는 말도 상대에게 안보여지나요?
[07:08] <PotatoGim> ubuntulo12가 볼 수 없다면 뭐가 됐든지 기록되진 않을  것 같은데...
[07:24] <HolyKnight> http://blog.synapsoft.co.kr/427
[07:25] <HolyKnight> http://blog.synapsoft.co.kr/m/post/426
[15:50] <PotatoGim> https://www.indiegogo.com/projects/wuvo-spot-the-global-lost-found-tracker#/