기본 콘텐츠로 건너뛰기

11월, 2016의 게시물 표시

[bot] python에서 슬랙 연동 - slacker, slaclclient를 활용하여 각종 정보를 가져와 보자

원래는 python으로도 rtm을 활용하여 이벤트를 잡아보고 싶었는데 여러 검색을 해보니 생각보다 이런저런 API들이 많아 쓸만한 것들을 소개를 해보려고 한다. 우선 기본적으로 webclient처럼 메세지를 보내는 기능이 존재한다 근데 이게 모듈에 따라서 봇이 메세지를 보낼수도 있고, 특정 계정이 메세지를 보낼수도 있다. 2가지의 모듈을 소개를 하겠다 1.  s lacker $ pip install slacker 이 친구는 메세지를 날릴경우 봇이 메세지를 날려준다. 2.  s lackclient $ pip install slackclient 요 친구는 메세지를 날리면 특정 계정이 메세지를 날려준다. 1 2 3 4 5 6 7 8 9 10 11 12 13 from  slacker  import  Slacker from  slackclient  import  SlackClient token  =   '발급받은 API' slack  =  Slacker(token) slack.chat.post_message( 'channel_id' ,  'message' ) sc  =  SlackClient(token) user_list  =  api_call  =  sc.api_call( "users.list" ) channel_list  =  api_call  =  sc.api_call( "channels.list" ) print ( sc.api_call( "im.history" , channel = "channel_id" )) cs api을 호출하여 유저, 채널 리스트들과 해당 채널에서의 채팅 내역을들 불러올 수 있다.

[bot] javascript에서 슬랙 연동

slack이라는 메신저를 이용하여 봇을 만들어 보자. python과 javascript를 이용하여 각각 만들어 보겠다. 우선 슬랙 챗봇을 만들기 위해서는 API발급을 받아야 한다. https://api.slack.com/docs/oauth-test-tokens 발급 받은 API를 잘 보관을 해두자  j avascript javascript에서는 slack-client라는 모듈을 통해 slack과 연동이 가능하다. $ npm install -s slack-client #모듈 설치 slack과 연동을 할 때에는 슬랙에서 발생된 이벤트를 잡고, 슬랙으로 메세지를 보내는것 이 두가지만 해주면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 var  RtmClient  =  require( 'slack-client' ).RtmClient; var  WebClient  =  require( 'slack-client' ).WebClient; var  token  =   'xoxp-57134296533-58450905505-107647575157-0c9b2b4cd35b7ffdc28295fa60f4de41' ; var  web  =   new  WebClient(token); var  rtm  =   new  RtmClient(token, {logLevel:  'error' }); rtm.start(); var  RTM_EVENTS  =  require( 'slack-client' ).RTM_EVENTS; rtm.on(RTM_EVENTS.MESSAGE,  function  (message) {      var  channel  =  message.channel;      var

[kali linux] sql injection의 대표적인 툴인 sqlmap

위 내용은 자체 제작한 서버에서 테스트 함을 명시합니다.  절때 타 사이트에서 테스트를 금지합니다. sqlmap은 sql injection공격을 자동적으로 공격을 해주는 툴이다. 공격자 os : kali linux 1.0 IP : 192.168.1.165 피해자 OS : window 7 64bit 웹 서버 : x 프레임워크 : express 서버 : node.js DB 종류 : mysql 5.7.5 server ip : 192.168.1.169 db ip : 192.168.1.169:3000 (server localhost) 1 . 서버실행 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 var  express  =  require( 'express' ); var  mysql  =  require( 'mysql' ); var  app  =  express(); var  client  =  mysql.createConnection({     host: '127.0.0.1' ,     port: '3306' ,     user:  'root' ,     password:  '******' ,     database:  'test' }); app.get( '/' ,  function (req, res){   res.send( 'hello world' ); }); app.get( '/test' ,  function (

[kali linux] sqlmap - post요청 injection 시도

아래 내용은 직접 테스트 서버를 구축하여 테스트 함을 알립니다.  실 서버에 사용하여 얻는 불이익에는 책임을 지지 않음을 알립니다. sqlmap을 이용하여 get요청이 아닌 post요청에 대해서 injection공격을 시도하자. 뚀한 다양한 플래그를 이용하여 DB 취약점 테스트를 진행을 해보려고 한다. 서버  OS : windows 7 64bit Web server : X Server engine : node.js Framework : expresss Use modules : mysql Address : 172.30.1.30 Open port : 6000번 공격자 OS : kali linux 64bit use tools : sqlmap Address : 172.30.1.57 우선 서버측 부터  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 var  express  =  require( 'express' ); var  app  =  express(); var  mysql  =  require( 'mysql' ); var  ccc  =  mysql.createConnection({     host: '127.0.0.1' ,     user: 'root' ,     post: '3306' ,     password: '*********' ,     database: 'test' }) app.post(