Posts tagged Ruby

Jekyll feed.xml 최소화하기

Jekyll feed.xml 최소화하기

RSS는 매우 오래된 기술이지만, 아직까지도 많은 웹 서비스에서 지원하고 사용되는 기술입니다. 일반 사용자가 리더를 통해 쉽게 글 목록을 받아서 읽...

Check logic vulnerability point using GET/HEAD in Ruby on Rails

최근에 Github OAuth flow bypass 취약점이 공개되었습니다. 이 취약점은 Rails 앱의 특성을 이용한 취약점이고, Github만의...

Rails에서 HTTP Basic Auth 적용하기(How to add HTTP basic auth on Rails)

HTTP Basic Auth는 HTTP에서 기본적으로 사용되는 인증 방식이고, ID/PW를 Base64로 인코딩해서 Auth 헤더에 넣어 서버가 신...

HTTP Request(ZAP, Burp) Parsing on Ruby code (Method , Headers, etc...)

https://github.com/hahwul/XSpear/issues/10XSpear 관련해서 이런 건의사항이 하나 있었습니다. Burp, ZAP...

Displaying cli base table at ruby application on terminal

I Simply write it (for note). It is easy to develop using terminal-table.How to In...

Ruby on Rails Double-Tap 취약점(CVE-2019-5418, CVE-2019-5420)

간만에 취약점 리뷰해봅니다. 올 봄에 정리한번하고 최근에 추가로 정리했던거라 머리속에서 날아가기 전에 블로그 글로 남겨보아요.우선 올 해 3월 정도...

Rails에서 Routing parameters(:action, :controller)와 동일한 이름의 파라미터 처리하기

Rails에서 파라미터 값은 params를 통해 받아옵니다. 이 과정 중 레일즈에서 기본으로 설정한 값이 있어 읽어오지 못하는 경우가 있습니다. 이...

How to resolve duplicate mail transmission in Rails ActionMailer(중복 메일 전송 해결 방법)

Rails에서 ActionMailer를 이용하면 쉽게 메일 송/수신 로직을 처리할 수 있습니다.그래서 ActionMailer로 여러가지 구성해서 사...

Send Gmail using Rails ActionMailer Class (ActionMailer를 이용하여 Gmail 전송하기)

Rails는 기본적으로 Mail 송/수신이 가능한 객체를 가지고 있습니다. 보통 웹에서 많이 사용하는 기능이기 때문에 미리 구현되어 있는 상태인데요...

Rails App 시작 시 특정 코드 실행하기(How to startup code on Ruby on Rails with initialize)

Rails 앱 구동 시 특정 작업이나 로직을 수행하고 싶을 때 어떻게 할까? 고민을 예전에 했었는데, 그때 initialize로 해결했던 기억이 있...

Rails crono를 이용하여 스케줄링하기(Scheduling with crono on Rails)

보통 유닉스 기반 PC에선 스케줄링을 위해 crontab 또는 at를 사용하고, 윈도우에선 서비스에 등록하는식으로 사용합니다.이를 위해선 시스템에서...

Rails에서 kaminari를 이용하여 Pagination 구현하기(How to make pagination on rails(with kaminari)

Rails에서 페이지(Pagination)를 쉽게 구현할 수 있는 라이브러리는 kaminari, will_paginate 등이 있습니다. 그중에서 ...

Rails에서 SuckerPunch를 이용한 비동기 Thread 처리(single-process Ruby asynchronous processing library)

Rails 구동중에 쓰레드 처리 시 아래처럼 원래 루비 구문인 Thread로 처리할 수 있습니다.Thread.new do Rails.applica...

루비에서 string-similarity로 문자열 퍼센트로 비교하기(Comparing string-similarity percent in Ruby)

한 두달? 정도전에 루비 라이브러리중에 괜찮은거 하나 봐둔게 있었느데, 이제서야 글로 작성하네요.문자열 비교 라이브러리인데, 매칭률을 퍼센트로 뽑을...

[ Rails on Heroku ] 자주 사용하는 heroku 명령어 정리

[ Rails on Heroku ] 자주 사용하는 heroku 명령어 정리(https://www.hahwul.com/2019/04/what-is-h...

[ Rails on Heroku ] 간단한 루비 레일즈 앱 구성 및 Heroku에 배포하기

[ Rails on Heroku ] 자주 사용하는 heroku 명령어 정리(https://www.hahwul.com/2019/04/what-is-h...

[ Rails on Heroku ] Heroku란? 빠르게 환경 구성하기

[ Rails on Heroku ] 자주 사용하는 heroku 명령어 정리(https://www.hahwul.com/2019/04/what-is-h...

Rails app에서 public 하위 파일을 읽어오지 못할 때(Rails not serving static files in public dir)

Rails App내 /public은 레일즈 동작과 별개로 static 한 html,css,js 등을 표현할 수 있는 디렉토리입니다.저는 보통 sta...

Task manager app with Ruby on Rails(할일 관리 도구 만들기)

할일 관리 도구? 가 필요해서 뭐 쓸까 고민하다 걍 rails로 만들고 있는데, 별건 아니지만 그냥 글로 남겨둡니다.https://gph.is/XG...

IntelliJ(RubyMine) 에디터 수정이 불편한 문제(IdeaVim Plugin)

새해 첫 포스팅은 가볍게 트러블슈팅으로 시작해봅니다. (연초인데 왜이리 정신없을까아...)원래 골수 vim 유저인데, RubyMine으로 개발 ID...

Ruby gem 만들기(Make ruby gem)

요즘 좀 정신없이 지내다보니 벌써 10월이네요.. 써놓은 글도 마침 없는 상태인지라 이번에도 간략한 글 작성할까 합니다. (아 10월의 첫글이 메모...

Ruby IDB(iOS App 보안분석 도구) Select App 시 죽는 현상 해결 방법(iOS10, Error downloading file)

예전에 idb라는 iOS 분석도구를 공유드린적이 있습니다(https://www.hahwul.com/2018/02/hacking-ios-app-idb...

Arachni 코드단에서 JSON Method 사용하기 (undefined method `parse' for Arachni::Element::JSON:Class 해결)

arachni 코드 수정 중 json 사용이 불가능한 경우가 있었습니다. [ Code ]require ‘json'JSON.parse(data)[ E...

Ruby에서 Cookie 값을 JSON 포맷으로 변환하기(Cookie format to JSON with hash!)

테스트하던 코드 생각나서 정리해둡니다. Ruby에서 Cookie format의 데이터를 JSON으로 변환하기 위해선 hash를 이용해서 간단하게 만...

JRuby Burp suite 확장 기능 개발 중 발생한 에러(failed to coerce [Lburp.IHttpRequestResponse; to burp.IHttpRequestResponse)

글 좀 쓰고 자려했는데, 잡다한 일이 꼬여.. 글은 패스하고 간단하게 메모 하나만 작성해둡니다.어제 Burp 확장 기능을 만들던 중 이상한 에러를 ...

Crystal - Ruby와 비슷하며 빠른 프로그래밍 언어(Fast a C, Slick as Ruby)

올 초쯤에 Crystal이란 언어에 대해 잠깐 이야기들은적이 있습니다. Ruby 문법과 유사하다는 것만 듣고 드디어.. 조금 더 살펴봤네요. 어떤 ...

tracer을 이용한 ruby code tracing(코드 흐름 분석)

루비 코드 분석을 하던 중 흐름 추적(?), code tracing을 하기 위해 알아보다가 찾은 라이브러리 공유드립니다.새로운 툴은 언제나 환영이야...

Rubocop auto correct를 이용한 루비 코드 정리하기(리팩토링)

최근에 루비 프로그래밍 스타일 가이드 관련해서 글을 하나 작성했었는데요, 이어서 그떄 잠깐 소개드렸던 rubocop을 이용해서 코드를 교정하는 과정...

Ruby Limit to number of thread in loop(반복문에서 제한된 갯수의 쓰레드 돌리기)

보통 쓰레드는 개별단위의 처리 수행이나 고 성능의 작업(요청을 엄청나게 전송한다는 둥, 빠른 계산이 필요한다는 둥)이 필요할 때 동일한 코드로 공유...

Awesome 루비 프로그래밍 스타일 가이드(Awesome ruby programming style guide) and rubocop

오늘은 루비 개발 관련해서 좋은 가이드가 있어 공유드릴까 합니다. (우선 공유해주신 tommy 정말 감사합니다)정말 정리가 잘 되어있습니다. 천천히...

Ruby on Rails(ROR) 에서 SAML IdP(Identity Provider) 구현하기(SSO)

최근에 뜻밖에 SAML 관련 공부를 하고 있는지라, 몇가지 내용 메모/공유할겸 포스팅 작성해봅니다.오늘은 Ruby on Rails에서 SAML Id...

inquirer 라이브러리를 이용한 커맨드라인 기반 체크박스 만들기(Ruby/Python)

recon-raven 개발 중 커맨드라인 기반 체크박스(모듈같은거 고를 수 있도록..) 구성해보면 어떨까 해서 학생때 커맨드라인 기반 게임 만든 기...

Ruby에서 Exception 처리( begin-rescue-else-ensure-end )

벌써 7월이네요.. 오늘은 매번 코드 작성할때마다 귀찮지만, 뺴먹을 수 없는 중요한 친구에  Exception, 즉 예외처리에 이야기할까 ...

JRuby를 이용한 Ruby & Java 간 크로스 개발

Burp suite extender 개발 needs 가 있어 간만에… 만들어볼까 합니다.예전에 깨작깨작 할땐 Java로 했었늗네.. 이번엔 경험삼아...

Rails의 라우팅과 constraints를 이용하여 IP기반 ACL 만들기

Rails Application에서 접근제어를 하는 방법은 여러가지가 있습니다. 예전에 포스팅하기도 헀고, 튜토리얼에서도 기본적으로 이야기되는 HT...

Rails development 환경에서 error 정보 줄이기

rails application은 기본적으로 application 실행 시 development, test, production와 같이 실행 환경을...

Ruby language에서의 Symbol(심볼)이란?

언어 자체에 대한 글을 쓰는건 굉장히 오랜만인 것 같습니다.오늘은 루비의 심볼에 대한 이야기를 하려합니다.루비러라면 잘 아시겠지만, 루비는 모든것이...

MITM Proxy server in Ruby (evil-proxy와 rails를 이용한 WASE 트래픽 수집 구간 만들기)

WASE를 만들면서 MITM Proxy로 트래픽을 수집하는 서버를 만들었는데요, 이 과정에서 알아봤던거랑 기반(?)이 되었던 심플한 저의 코드 관련...

Ruby on Rails - submodel, subclass or subcontroller 만들기(references type)

우선 기준이 스케폴드로 CRUD 모델을 하나 만들어줍니다.#> rails new log#> cd log#> rails g scaff...

PostgreSQL FATAL: Peer authentication failed for user Error 해결하기

rails의 db를 postgresql로 바꾸고 하는중에 이런 에러가 발생했습니다.root@cherry:/home/cherry/cherry_web#...

website capture를 위한 ruby gem (feat PhantomJS)

이번 주말엔 딱히 쓸 글이 없네요.. (시간이 ㅜㅜ)간략하게 ruby library를 이용한 웹 페이지 캡쳐 관련해서 글 작성해봅니다.어제 저녁쯤에...

[HACKING] Bug Bounty를 위한 WASE(Web Audit Search Engine) 만들기 [2] - Burp suite와 Elastic search 연동하기

우선 burp bapps에 올라와 있는 extension 으로는 2가지가 있습니다. elastic burp와 report to elastic 입니다...

[HACKING] Bug Bounty를 위한 WASE(Web Audit Search Engine) 만들기 [1] - Elastic search와 ruby-rails

요즘들어 버그바운티에 대한 생각이 조금 깊어졌습니다. 일을 하는 것 이외에도 무언가 가치를 만들 수 있겠다라는 생각 때문이죠.(그냥 돈을 더 벌고싶...

[ROR] Ruby on Rails "cannot load such file -- [package]" 해결 방법

왜그런진 잘 모르겠지만 오늘 업데이트 이후에  rails 서버 시작 시 에러가 발생합니다.내용을 보자니.. mime/types를 찾을 수 ...

[RUBY] nokogiri install/update 에러 해결하기(An error occurred while installing nokogiri (1.8.2), and Bundler cannot continue.)

간만에 레일즈 떔에 루비 가지고 놀던 중 nokogiri가 고장났습니다. (대체로 부팅과 함께 패키지 업데이트를 하는데, 그게 문제였죠..)Usin...

[CODING] vim 개발을 위한 최소한의 plugin 설정(language plugin, CtrlP, airline)

매번 느끼지만 글로 작성하지 않은 내용들은 나중에 다시 세팅하거나, 참고해야할 때 참 불편합니다. 꼭 필요할 때 보면 없다죠..최근에도 vim 세팅...

[RUBY] 클립보드에 데이터를 복사하자! clipboard gem

예전에 python의 tkinter 라이브러리를 이용해서 clipboard 제어하고 간단한 프로그램 만드는 이야기를 했었습니다.(http://www...

[RUBY] ROR DB Column 추가하기(Add column from Ruby on Rails Database)

메모할겸 작성합니다.rails에서 이미 만들어진 db 스키마를 바꾸기 위해선 migration 으로 가능합니다.#> rails g migrat...

[RUBY] RQRCode를 이용한 QR코드 생성하기

메모할겸 RQRCode에 대해 작성할까 합니다. RQRCode는 Ruby에서 QR코드를 다룰 수 있는 라이브러리입니다.  간단한 코드로쉽게...

[RUBY] Cuntom column sort function on Two-dimensional array

루비로 코딩하던 중 귀찮은 일이 있었습니다. 바로 array에 대한 정렬 중 2차원 이상 배열에서는 제가 지정한 열을 기준으로 정렬할 수 있는 함수...

[RUBY] ROR(Ruby on Rails)를 이용한 Web Develope part2 - Create Blog Application and Security

지난 포스팅에서는 Rails 설치 및 기초적인 사용방법에 대해 보았다면오늘은 아주아주 간단한 페이지 만드는법과 테스트 페이지의 보안을 위해서 HTT...

[RUBY] ROR(Ruby on Rails)를 이용한 Web Develope part1 - About/Install Rails

제 주력 코딩 언어는 Ruby 입니다. (솔직히 언어개념 없어요.. 그냥 쓸 수 있으면 되는거죠 뭐.. 난 개발자 아니니깐)그래서 예전에 관심있어하...

[RUBY] Writing a Web Crawler with Ruby and Nokogiri(nokogiri를 이용한 웹 크롤러 만들기)

지난 포스팅에선 nokogiri를 이용한 parsing 을 했다면 이번에는 조금 더 발전 시켜서 간단한 크롤러를 만들어볼까합니다. 물론, 훨씬 좋은...

[RUBY] Nokogiri library를 이용한 Web(HTML/XML) Parsing

프로그래밍에서 많이 활용되는 코드는 어떤것들이 있을까요?제 생각에는 대표적으로 소켓통신, DB 연결 코드 등이 있을 것 같고 오늘의 주제로 선정한 ...

[RUBY] 루비에서 Process/command 실행하기(Execute Process and command)

C언어부터 ruby, python 등등 여러가지 언어 중 하나라도 해보셨다면 정말 반가운 함수가 있습니다.바로 system() 함수(C언어 기준)인...

[RUBY] WEBrick::mount_proc 메소드를 이용한 WEBrick 서버 내 Ruby 처리부분 만들기

WEBRick 클래스의 mount_proc 메소드를 사용하면 단순 웹 디렉토리 링크가 아닌 직접 웹접근 시 서버단에서 제어를 할 수 있게 됩니다. ...

[RUBY] WEBrick을 이용한 간단 Ruby 웹 서버 만들기(Writing Web Server Code whit Ruby WEBrick)

예전에 Ruby on Rails를 다루면서 알게된 webrick 웹서버 모듈입니다.이 모듈은 쉬운 방법으로 웹 서버를 구성할 수 있도록 지원하는 좋...

[RUBY] Ruby에서 MySQL 연동하기(DB Connection 및 SQL Query 전송)

아주 간단하고 금방 작성할 수 있는 부분이지만, 항상 그렇듯이 필요할땐 기억이 나지 않는게 코드인 것 같습니다. 짧게 메모해둘까 합니다.일단 기본적...

[RUBY] OCRA를 이용하여 Ruby 스크립트(.rb File) exe(Win Format) 포팅

ocra 설치(Install OCRA)#gem install ocraocra를 이용하여 ruby script(.rb) -> exe(Win Ex...

[RUBY] HexDump Ruby Code(루비로 헥스 정보 출력하기)

[RUBY] HexDump Ruby Code(루비로 헥스 정보 출력하기)실행 인자값으로 받을 값(파일명) 을 hexdump라는 함수를 통해 hex값...

ruby로 간단한 웹 서버 만들기(build simple web server - ruby)

socket 라이브러리 로드 후 TCPServer 를 이용하여 쉽게 생성이 가능하다.(C랑 다르게 간략하게 코드 구성이 가능하다)  re...

Debian Wheezy 에서 Ruby Version Upgrade(1.9 > 2.1) #Metasploit 업그레이드, rvm,rbenv

오랜만에 노트북에서 Metasploit 업데이트를 하였더니 패키지 하나가 의존성 문제가 걸리더군요.. gem 으로 설치하려 했으나, 발생하는 건 r...