Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
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
Tags
more
Archives
Today
Total
관리 메뉴

dohki

Internetwache CTF 2016: Code 50 - A numbers game 본문

Hacking/CTF write up

Internetwache CTF 2016: Code 50 - A numbers game

dohki 2016. 2. 26. 01:41

Description


People either love or hate math. Do you love it? Prove it! You just need to solve a bunch of equations without a mistake.







Write-up


어떤 자연수 a와 b에 대해서 어떤 사칙연산을 한 결과를 알려 주는데, 알맞은 a를 보내 주면 되는 문제이다. 다음 code를 실행했다.


from pwn import *

p = remote('188.166.133.53', 11027)

cnt = 0 
while 1:
  cnt += 1
  print cnt 

  if cnt == 101:
    data = p.recv()
    print data
    exit(0)

  data = p.recvuntil('\n')
  print data
  data = p.recvuntil('\n')
  print data

  idx_plus = data.find('+')
  idx_minus = data.find('-')
  idx_multi = data.find('*')
  idx_div = data.find('/')

  idx_oper = idx_plus + idx_minus + idx_multi + idx_div + 3 
  idx_equal = data.find('=')

  a = int(data[idx_equal + 2:])
  b = int(data[idx_oper + 2 : idx_equal - 1]) 

  if idx_plus != -1: 
    p.send(str(a - b)) 
  elif idx_minus != -1: 
    p.send(str(a + b)) 
  elif idx_multi != -1: 
    p.send(str(a / b)) 
  elif idx_div != -1: 
    p.send(str(a * b))


100번 맞추니 flag를 줬다.



Flag


IW{M4TH_1S_34SY}

Comments