{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** ๐ฌ [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** ๐ฆ [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}
{% embed url="https://websec.nl/" %}
# Basic Information
**Trivial File Transfer Protocol (TFTP)**๋ **UDP ํฌํธ 69**์์ ์ฌ์ฉ๋๋ ๊ฐ๋จํ ํ๋กํ ์ฝ๋ก, ์ธ์ฆ ์์ด ํ์ผ ์ ์ก์ ํ์ฉํฉ๋๋ค. **RFC 1350**์ ๊ฐ์กฐ๋์ด ์์ผ๋ฉฐ, ๊ทธ ๋จ์์ฑ์ผ๋ก ์ธํด ์ฃผ์ ๋ณด์ ๊ธฐ๋ฅ์ด ๋ถ์กฑํ์ฌ ๊ณต์ฉ ์ธํฐ๋ท์์์ ์ฌ์ฉ์ด ์ ํ์ ์
๋๋ค. ๊ทธ๋ฌ๋ **TFTP**๋ **VoIP ํธ๋์
**๊ณผ ๊ฐ์ ์ฅ์น์ **๊ตฌ์ฑ ํ์ผ** ๋ฐ **ROM ์ด๋ฏธ์ง**๋ฅผ ๋ฐฐํฌํ๋ ๋ฐ ํจ์จ์ ์ด๊ธฐ ๋๋ฌธ์ ๋๊ท๋ชจ ๋ด๋ถ ๋คํธ์ํฌ์์ ๊ด๋ฒ์ํ๊ฒ ์ฌ์ฉ๋ฉ๋๋ค.
**TODO**: Bittorrent-tracker์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ์ญ์์ค (Shodan์ด ์ด ํฌํธ๋ฅผ ํด๋น ์ด๋ฆ์ผ๋ก ์๋ณํฉ๋๋ค). ์ด์ ๋ํ ์ถ๊ฐ ์ ๋ณด๊ฐ ์์ผ๋ฉด [**HackTricks ํ
๋ ๊ทธ๋จ ๊ทธ๋ฃน**](https://t.me/peass) ๋๋ [PEASS](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite)์์ GitHub ์ด์๋ก ์๋ ค์ฃผ์ญ์์ค.
**๊ธฐ๋ณธ ํฌํธ:** 69/UDP
```
PORT STATE SERVICE REASON
69/udp open tftp script-set
```
# Enumeration
TFTP๋ ๋๋ ํ ๋ฆฌ ๋ชฉ๋ก์ ์ ๊ณตํ์ง ์์ผ๋ฏ๋ก `nmap`์ ์คํฌ๋ฆฝํธ `tftp-enum`์ ๊ธฐ๋ณธ ๊ฒฝ๋ก๋ฅผ ๋ฌด์์๋ก ์๋ํฉ๋๋ค.
```bash
nmap -n -Pn -sU -p69 -sV --script tftp-enum
```
## ๋ค์ด๋ก๋/์
๋ก๋
Metasploit ๋๋ Python์ ์ฌ์ฉํ์ฌ ํ์ผ์ ๋ค์ด๋ก๋/์
๋ก๋ํ ์ ์๋์ง ํ์ธํ ์ ์์ต๋๋ค:
```bash
msf5> auxiliary/admin/tftp/tftp_transfer_util
```
```bash
import tftpy
client = tftpy.TftpClient(, )
client.download("filename in server", "/tmp/filename", timeout=5)
client.upload("filename to upload", "/local/path/file", timeout=5)
```
## Shodan
* `port:69`
{% embed url="https://websec.nl/" %}
{% hint style="success" %}
AWS ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
GCP ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
HackTricks ์ง์ํ๊ธฐ
* [**๊ตฌ๋
๊ณํ**](https://github.com/sponsors/carlospolop) ํ์ธํ๊ธฐ!
* **๐ฌ [**Discord ๊ทธ๋ฃน**](https://discord.gg/hRep4RUj7f) ๋๋ [**ํ
๋ ๊ทธ๋จ ๊ทธ๋ฃน**](https://t.me/peass)์ ์ฐธ์ฌํ๊ฑฐ๋ **Twitter** ๐ฆ [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**๋ฅผ ํ๋ก์ฐํ์ธ์.**
* **[**HackTricks**](https://github.com/carlospolop/hacktricks) ๋ฐ [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) ๊นํ๋ธ ๋ฆฌํฌ์งํ ๋ฆฌ์ PR์ ์ ์ถํ์ฌ ํดํน ํ์ ๊ณต์ ํ์ธ์.**
{% endhint %}