본문 바로가기
python/python

[python] 서버와 통신하는 방법(pwn)

by ilp 2024. 6. 18.
반응형

https://iloveprogramming.tistory.com/206

 

[python] remote

 

iloveprogramming.tistory.com


데이터 보내기

'send'

  • 문자열 또는 바이트서버로 직접 전송한다.
  • 데이터 끝에 줄바꿈을 추가하지 않는다.
# 문자열 'hello'를 서버로 전송
p.send(b'hello')

 

'sendline'

  • 'send'와 유사하지만, 데이터 에 자동으로 줄바꿈('\n')추가한다.
# 'hello' 뒤에 줄바꿈을 추가하여 서버로 전송
p.sendline(b'hello')

조건부 데이터 보내기

'sendafter'

  • 함수는 서버로부터 특정 문자열을 받고 데이터를 전송한다.
  • 먼저 서버로부터 지정된 문자열이 나타날 때까지 기다리고 문자열을 전송한다.
# 서버로부터 'Username:' 문자열을 받고, 'admin'을 전송
p.sendafter(b'Username:', b'admin')

 

'sendlineafter'

  • 'sendafter'와 비슷하지만 데이터 전송 후줄바꿈을 한다.
# 서버로부터 'Password:' 문자열을 받고, 'password123' 뒤에 줄바꿈을 추가하여 전송
p.sendlineafter(b'Password:', b'password123')

데이터 받기

'recv'

  • 서버로부터 지정된 수의 바이트를 받는다.
  • 데이터를 받을 때까지 블로킹 될 수 있다.
# 서버로부터 1024 바이트를 받음
data = p.recv(1024)
print(data)

 

'recvline'

  • 서버로부터 한 줄을 받는다.
  • 줄바꿈 문자를 만날 때까지 서버로부터 데이터를 받는다.
# 서버로부터 한 줄을 받음
line = p.recvline()
print(line)

반응형