brunch

You can make anything
by writing

C.S.Lewis

by SKKRYPTO Dec 12. 2019

[Skkrypto X Luniverse] Skkvote

안녕하세요 Skkrypto Skkvote팀의 정선웅입니다. 이번주는 개발 막바지 단계로 루니버스에서 제공하는 보안 측정 서비스(Security Assessment)를 사용해 보겠습니다. 루니버스 유저 가이드(guide.luniverse.io/docs)에 보시면 자세한 설명이 나와있지만 간략하게 보안 측정 서비스에 대해 설명 드리겠습니다.


일반적으로 소프트웨어 개발에서 보안 측정이란 개발 결과물에 대하여 보안상으로 취약한 부분이 없는지 보안 전문가에게 검수 받는 과정을 의미합니다. 하지만 일반적인 보안 측정은 시간적, 정책적, 비용적, 전문지식의 한계와 같은 어려움들이 존재하는데요.

루니버스에서는 편리하면서도 안전한 보안서비스인 Security Assessment를 제공하고 있습니다. 개발자가 원할 때 빠르게 보안 검수를 진행할 수 있으며 코드 유출 방지를 위한 암호화 기능 제공, 합리적인 가격으로 이용 가능하며 보안 지식이 없더라도 쉽게 수정 가능합니다.



우선 저는 루니버스 콘솔상에서 보안 측정 서비스를 이용해 보겠습니다.


상단 탭에서 Security Assessment를 들어가면 다음과 같은 화면이 나옵니다.




Assessment List에서 Create Assessment를 클릭하면 다음과 같은 세가지 옵션이 나옵니다

1.     Paste Code는 소스를 직접 입력하는 것입니다

2.     Upload Project는 솔리디티 소스 파일을 업로드 하는 것입니다

3.     Upload Hashed Project는 소스코드를 암호화하여 올리는 것입니다.

저는 암호화하는 방식인 Hashed 방식을 사용해 보겠습니다. 우선 운영체제에 맞는 프로그램을 다운 받습니다.







 Sooho라는 파일을 받았습니다. Command에 대한 설명과 사용법이 나와있습니다.


우선 Sooho를 최신버전으로 업데이트 하겠습니다



처음에 그냥 encrypt를 했더니 성공은 했지만 필요한 aegis파일이 생성되지 않았습니다. 그래서 사용법을 다시 참고하여 명령어를 추가했습니다


그랬더니 aegis파일이 생성되었고 이를 콘솔상에 업로드하였습니다.


시간이 얼마 지나지 않아 루니버스에서 컨트랙트의 취약점을 평가해주었습니다.



다행히도 저희 파일에는 취약점이 없다고 나왔습니다!!

만약 취약점이 존재할 경우에는 (vulnerability) 해당 컨트랙트의 보안수준과 파일에서 발견된 취약점수를 등급별로 표시한 리스트를 확인할 수 있습니다

(루니버스 유저가이드 참조)


취약점이 발견될 경우에는 Issue Type과 Top 3 vulnerability, Security level, 취약점 설명 등의 내용으로 상세 레포트가 발행됩니다. 개발하면서 잡아내지 못했던 취약점을 루니버스에서 대신 해결해 주어서 개발하기 정말 편할 것 같습니다.





(루니버스 유저가이드 사진 참조)


또한 Atom 상에서도 Create Audit 버튼을 통해 Audit을 진행할 수 있습니다


루니버스 security assessment 기능을 통해 컨트랙트의 취약점까지 잡아내는 마지막 단계까지 끝이 났습니다. 사용하기도 간편하고 시간도 얼마 걸리지 않아 정말 좋은 기능인 것 같습니다.

다음주에는 최종 시연과 느낀점으로 마무리를 짓겠습니다. 감사합니다


“위 글은 람다 256 루니버스의 Dev Plan을 무료로 제공받아 작성하였습니다”


작성자: 정선웅(wpdlsksh94@gmail.com)

매거진의 이전글 [Skkrypto X Luniverse] Skkvote
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari