Gumagana ang iyong trading bot sa pamamagitan ng iisang interface: ang exchange API. Bawat order, bawat balance check, bawat position query ay dumadaan sa API credentials na ginawa mo. Kung ang mga credential na iyon ay maling na-configure, na-kompromiso, o hindi naunawaan nang tama, ang mga kahihinatnan ay mula sa hindi awtorisadong trade hanggang sa ganap na pagkaubos ng account.
Lumalampas ang gabay na ito sa mga pangunahing security hygiene (na tinalakay sa aming foundational security guide) at sumisisid sa operational security framework na naghihiwalay sa mga propesyonal na bot operator sa mga baguhan. Tinatalakay namin ang permission architecture, network-level access controls, credential lifecycle management, paghawak sa pagkabigo ng exchange, at isang kumpletong incident response playbook.
Mahahalagang Punto
- May apat na permission level ang API keys — read, spot trade, futures trade, at withdrawal. HINDI DAPAT KAILANMAN i-enable ang withdrawal para sa mga koneksyon ng bot.
- Ginagawang walang silbi ng IP whitelisting ang mga ninakaw na API key. I-configure ito sa bawat exchange — sinusuportahan ito ng Binance, Bybit, at OKX.
- I-rotate ang API keys tuwing 90 araw gamit ang zero-downtime procedure: gumawa ng bagong key → i-update ang bot → i-verify → burahin ang lumang key.
- Nililimitahan ng subaccount isolation ang blast radius: ang isang na-kompromisong bot ay makaaapekto lamang sa kapital ng subaccount, hindi sa buong portfolio mo.
- Kapag bumagsak ang exchange habang nasa gitna ng trade, nananatili ang open orders sa order book, at kailangang i-reconcile ng bots ang state matapos mag-reconnect.
- Ang paglabag sa rate limit (Binance: 1,200/min, Bybit: 120/5sec) ay nagreresulta sa pansamantalang IP ban — kailangang mag-throttle ng requests ang bots nang proaktibo.
Mga Permission Level ng API Key: Ang Prinsipyo ng Least Privilege
Ang bawat malaking exchange ay may granular na permission system para sa API keys. Simple ang prinsipyo: ibigay lamang ang eksaktong permission na kailangan ng bot at wala nang iba pa. Narito ang kinokontrol ng bawat level:
Permission Architecture
| Permission Level | Ano ang Pinapayagan | Kailangan ba ng Bot? | Panganib Kung Na-kompromiso |
|---|---|---|---|
| Read-Only | Tingnan ang balances, order history, market data | ✅ Palagi | Mababa — nakikita ng attacker ang data ng account |
| Spot Trade | Maglagay at magkansela ng spot market/limit orders | ✅ Para sa spot bots | Katamtaman — kayang mag-execute ng trades ang attacker |
| Futures Trade | Magbukas/magsara ng leveraged positions, mag-set ng margin | ✅ Para sa futures bots | Mataas — posible ang leveraged na pagkalugi |
| Withdrawal | Maglipat ng pondo sa external wallets | ❌ KAILANMAN | Kritikal — ganap na pagkawala ng pondo |
| Internal Transfer | Maglipat ng pondo sa pagitan ng subaccounts | ⚠️ Bihira | Katamtaman — muling paglalaan ng pondo |
Bakit ang Withdrawal Permission ang Kill Switch
Kapag naka-disable ang withdrawal, ito ang pinakamalalang senaryo mula sa isang na-kompromisong API key: naglalagay ng masasamang trade ang attacker. Tumatama ang kapital mo, pero nananatili ito sa exchange. Puwede kang makabawi.
Kapag naka-enable ang withdrawal, ang pinakamalalang senaryo ay ganap na pagkawala. Inuubos ng attacker ang account mo papunta sa wallet nila sa loob ng ilang segundo. Hindi na mababawi ang mga crypto transaction. Walang chargeback, walang recovery.
Malinaw ang matematika. Sabihin nating may $50,000 ka sa Binance:
- Naka-disable ang withdrawal, na-kompromiso ang key: Naglalagay ng paba-baang trade ang attacker. Realistikong pagkalugi: $2,000–$10,000 sa slippage at masasamang fill bago mo mapansin at ma-revoke ang key. Natitirang kapital: $40,000–$48,000.
- Naka-enable ang withdrawal, na-kompromiso ang key: Nagpapadala ang attacker ng $50,000 sa wallet nila. Natitirang kapital: $0.
Walang lehitimong bot platform — kabilang ang Freya Finance — ang kailanman ay humihingi ng withdrawal permission. Kung may platform na humihingi nito, ang platform na iyon ay hindi kompetente o malisyoso. Umalis ka agad.
Setup ng Permission na Partikular sa Bawat Exchange
Binance: Pumunta sa Account → API Management → Create API. Sa ilalim ng "API restrictions," i-enable lamang ang "Enable Spot & Margin Trading." Iwanan na hindi naka-check ang "Enable Withdrawals" at "Enable Internal Transfer." Para sa futures bots, i-check din ang "Enable Futures."
Bybit: Pumunta sa Profile → API Management → Create New Key. Sa ilalim ng permissions, i-enable ang "Read-Write" para sa Spot lamang (o Derivatives kung kailangan). Ang "Withdraw" toggle ay dapat manatiling OFF.
OKX: Pumunta sa Profile → API Keys → Create API Key. Sa ilalim ng "Permissions," piliin ang "Trade" lamang. Nangangailangan ang OKX ng karagdagang passphrase para sa API authentication — itago ito sa iyong password manager kasama ng key at secret.
IP Whitelisting: Network-Level Access Control
Ang IP whitelisting ang pinakaepektibong solong depensa laban sa mga ninakaw na API key. Kahit makuha ng attacker ang API key at secret mo, hindi nila magagamit ang mga ito — tinatanggihan ng exchange ang anumang request na hindi galing sa isang whitelisted IP address.
Paano Gumagana ang IP Whitelisting
Your Bot Server (IP: 34.85.123.45) → Exchange API → ✅ Whitelisted → Order Executed
Attacker's Server (IP: 192.168.0.99) → Exchange API → ❌ Not Whitelisted → Request Rejected
Nagpapanatili ang exchange ng allow-list ng mga IP address para sa bawat API key. Ang source IP ng bawat papasok na API request ay sinusuri laban sa listahang ito bago iproseso ang anumang aksyon. Tinatanggihan ang requests mula sa hindi whitelisted na IP na may authentication error, kahit pa valid ang API key at signature.
Bakit Hindi Ito Maipagkakait
Kung walang IP whitelisting, sinumang makakuha ng iyong API credentials ay magagamit ang mga ito mula sa kahit saan sa mundo. Sa IP whitelisting, kailangan pang ma-kompromiso ng attacker ang server infrastructure ng iyong bot platform — isang mas mahirap na target.
Setup na Partikular sa Bawat Platform
Binance:
- Sa API Management, piliin ang key mo at i-click ang "Edit restrictions"
- Sa ilalim ng "IP access restrictions," piliin ang "Restrict access to trusted IPs only"
- Ilagay ang bawat IP address sa hiwalay na linya (sumusuporta ang Binance ng hanggang 30 IP kada key)
- I-save at kumpletuhin ang 2FA verification
- Tandaan: Nagpapatupad ang Binance ng 5-minutong propagation delay matapos ang pagbabago sa IP whitelist
Bybit:
- Sa API Management, i-edit ang API key mo
- Sa ilalim ng "IP Access," i-click ang "Modify"
- Ilagay ang mga server IP ng platform mo (sumusuporta ang Bybit ng hanggang 20 IP)
- Ang mga key na walang IP restriction ay awtomatikong nag-e-expire matapos ang 90 araw sa Bybit
- Kumpletuhin ang 2FA verification para makapag-save
OKX:
- I-edit ang API key mo sa API management panel
- Idagdag ang mga IP address sa "IP Address" field (sumusuporta ang OKX ng hanggang 20 IP)
- Mariing inirerekomenda ng OKX ang whitelisting — mas mababa ang rate limit ng mga key na walang restriction
- I-save at kumpirmahin gamit ang 2FA
Ipinapakita ng Freya Finance ang mga server IP address nito habang nasa API key connection flow. Kopyahin ang mga ito nang direkta sa IP whitelist ng iyong exchange. Kung magbabago ang mga IP ng platform (bihira, kadalasan sa panahon ng infrastructure migration), makakatanggap ka ng notification na may bagong address.
Mga Karaniwang Pagkakamali sa IP Whitelisting
| Pagkakamali | Kahihinatnan | Solusyon |
|---|---|---|
| Paggamit ng home IP mo sa halip na IP ng bot server | Gumagana ang key mula sa laptop mo pero hindi mula sa bot | Gamitin ang mga na-publish na server IP ng platform |
Pag-whitelist ng 0.0.0.0 o malalawak na range | Walang tunay na proteksyon — tumatanggap ng kahit anong source | Gamitin lamang ang mga tiyak na IP |
| Pagkalimot mag-update matapos ang platform migration | Tahimik na humihinto ang bot sa pag-trade | Bantayan ang connection errors, panatilihing updated ang mga IP |
| Pagdagdag ng mga VPN IP na nagro-rotate | Paulit-ulit na pagkabigo | Gamitin ang static IPs o ang mga IP ng platform |
API Key Rotation: Ang 90-Araw na Lifecycle
Dapat ituring ang API keys tulad ng password: may buhay ang mga ito. Kapag mas matagal na nabubuhay ang isang key, mas mataas ang posibilidad na na-expose na ito sa pamamagitan ng log files, support tickets, screenshots, o memory dumps. Nagro-rotate ang mga propesyonal na operator ng key sa nakatakdang iskedyul.
Inirerekomendang Cadence ng Rotation
| Senaryo | Dalas ng Rotation |
|---|---|
| Normal na operasyon | Tuwing 90 araw |
| Matapos ang anumang pinaghihinalaang kompromiso | Agad |
| Matapos ang security incident ng platform | Agad |
| Matapos i-revoke ang access mula sa isang platform | Agad |
| Matapos umalis ang isang team member | Agad |
Zero-Downtime Rotation Procedure
Hindi dapat maging sanhi ng pagkaantala sa trading ang key rotation. Sundin ang pagkakasunod-sunod na ito:
Hakbang 1: Gumawa ng bagong API key sa exchange Gumawa ng bagong key na may kaparehong permission at IP whitelist settings ng luma. Lagyan ito ng label ng kasalukuyang petsa (hal. "Freya Bot — May 2026").
Hakbang 2: I-update ang iyong bot platform gamit ang bagong key Ilagay ang bagong API key at secret sa settings ng iyong bot platform. Pinapayagan ng karamihan sa mga platform ang pag-update ng credentials nang hindi ihininto ang bots.
Hakbang 3: I-verify ang connectivity Kumpirmahin na gumagana ang bagong key: tiyakin na nagpapakita ang platform ng matagumpay na koneksyon, tamang naipapakita ang balances, at nag-e-execute ang isang test trade (kung magagawa).
Hakbang 4: Burahin ang lumang key sa exchange Matapos lamang ma-verify na gumagana ang bagong key, burahin ang lumang key mula sa API management page ng iyong exchange.
Hakbang 5: I-dokumento ang rotation Itala ang petsa ng rotation, label ng bagong key, at kumpirmasyon ng matagumpay na paglipat.
Sa maikling panahon kung saan magkasabay na umiiral ang luma at bagong key (Hakbang 2–4), pareho silang valid. Kailangan ang overlap na ito para sa zero-downtime rotation at ligtas dahil binubura ang lumang key sa loob ng ilang minuto. Panatilihing kasing-ikli hangga't maaari ang panahong ito.
Subaccount Isolation: Paglilimita sa Blast Radius
Ang mga exchange subaccount ay hiwalay na trading account sa ilalim ng iyong main account. Ang bawat subaccount ay may sariling balance, sariling API keys, at sariling trading history. Ang mga ito ang katumbas sa exchange ng network segmentation sa cybersecurity.
Bakit Mahalaga ang Subaccounts
Isaalang-alang ang senaryong ito: nagpapatakbo ka ng tatlong bot — isang BTC DCA bot, isang ETH DCA bot, at isang SOL signal bot — lahat naka-koneksyon sa iyong main account na may kabuuang kapital na $30,000.
Nang walang subaccounts: Isang na-kompromisong API key ang naglalantad ng $30,000. Kayang ubusin ng isang malfunctioning na bot ang buong balance sa pamamagitan ng mabilis at paba-baang trade.
Sa subaccounts: Ang bawat bot ay gumagana sa sarili nitong subaccount na may $10,000. Ang na-kompromisong key ay naglalantad lamang ng $10,000. Ang malfunctioning na bot ay makaaapekto lamang sa kapital na inilaan dito. Hindi na mahahawakan ang natitirang $20,000.
Subaccount Setup sa Bawat Exchange
| Feature | Binance | Bybit | OKX |
|---|---|---|---|
| Max Subaccounts | 200 (depende sa VIP) | 20 (standard) | 5 (standard), mas marami sa VIP |
| Hiwalay na API Keys | ✅ Kada subaccount | ✅ Kada subaccount | ✅ Kada subaccount |
| Hiwalay na Balances | ✅ Isolated | ✅ Isolated | ✅ Isolated |
| Internal Transfer | ✅ Instant, libre | ✅ Instant, libre | ✅ Instant, libre |
| Hiwalay na Trading History | ✅ Buong isolation | ✅ Buong isolation | ✅ Buong isolation |
| KYC na Kailangan | Ginagamit ang KYC ng main account | Ginagamit ang KYC ng main account | Ginagamit ang KYC ng main account |
Inirerekomendang Subaccount Architecture
Para sa portfolio na $30,000 sa tatlong bot:
Main Account (Master)
├── Subaccount A: BTC DCA Bot — $10,000
│ └── API Key A (spot trade + read, IP whitelisted)
├── Subaccount B: ETH Grid Bot — $10,000
│ └── API Key B (spot trade + read, IP whitelisted)
├── Subaccount C: SOL Momentum Bot — $10,000
│ └── API Key C (spot trade + read, IP whitelisted)
└── Reserve: $0 (held in main, transferred as needed)
Ang bawat subaccount ay may sarili nitong API key, sarili nitong IP whitelist, at maa-access lamang ang sarili nitong pondo. Ang key ng main account — na walang trading permission — ang humahawak sa paglilipat ng pondo sa pagitan ng subaccounts ayon sa pangangailangan.
Kapag Bumagsak ang Exchange sa Gitna ng Trade
Nangyayari ang mga exchange outage. Ang Binance, Bybit, at OKX ay pawang nakaranas ng downtime — minsan planado (maintenance), minsan hindi planado (DDoS attacks, infrastructure failures, matinding market volatility na nagdudulot ng load spikes). Kailangang hawakan ito ng bot mo nang maayos.
Open Orders sa Panahon ng Outage
Ang open limit orders na inilagay mo ay nananatili sa order book ng exchange kahit hindi maabot ang API. Hiwalay ang matching engine sa API gateway. Patuloy na kayang ma-fill ang mga order mo sa panahon ng API outage.
Ang ibig sabihin nito: kung may limit buy ka sa $99,500 para sa BTC at bumagsak ang API, aktibo pa rin ang order na iyon. Kung bumaba ang BTC sa $99,500, mata-fill ka kahit hindi makapag-usap ang bot mo sa exchange.
Bot Reconnection at State Reconciliation
Kapag bumalik online ang API, kailangang i-reconcile ng isang maayos na disenyong bot ang internal state nito sa aktwal na state ng exchange. Kasama sa prosesong ito:
- Pag-query sa lahat ng open orders — Tingnan kung aling orders ang aktibo pa, alin ang na-fill, alin ang bahagyang na-fill, at alin ang nakansela
- Paghahambing sa internal records — Itugma ang state ng exchange sa inaasahan ng bot
- Pag-resolba ng mga pagkakaiba — I-update ang internal positions batay sa aktwal na fills
- Pagpapatuloy ng normal na operasyon — Ituloy ang pag-execute ng strategy mula sa na-reconcile na state
Awtomatikong hinahawakan ng Freya ang reconciliation na ito para sa iyo. Kung mawala ang koneksyon ng bot mo sa isang exchange at muling mag-reconnect, muling susuriin ng Freya ang iyong mga position laban sa exchange at itatama ang anumang drift na nangyari sa panahon ng outage, para magpatuloy ang strategy mo mula sa tumpak na state.
Partial Fills
Nangyayari ang partial fills kapag isang bahagi lamang ng order mo ang na-execute bago ang outage (o dahil sa kakulangan sa liquidity). Halimbawa:
- Naglagay ka ng limit buy para sa 0.5 BTC sa $100,000 ($50,000 na order)
- Na-fill ang 0.3 BTC bago madiskonekta ang API ($30,000)
- Kapag nag-reconnect ang bot, nadiskubre nitong may 0.3 BTC sa posisyon at 0.2 BTC na bukas pa
Hinahawakan ito ng isang matibay na bot sa pamamagitan ng:
- Pagkilala sa partial fill at pag-update sa laki ng posisyon
- Pagpapasya kung ipagpapatuloy na aktibo ang natitirang 0.2 BTC na order o kanselahin ito
- Pag-adjust ng take-profit at stop-loss levels batay sa aktwal na laki ng posisyon (0.3 BTC, hindi ang inaasahang 0.5 BTC)
Ano ang Dapat Mong Gawin sa Panahon ng Exchange Outage
| Sitwasyon | Aksyon |
|---|---|
| Inanunsyong planadong maintenance | I-pause ang bots bago ang maintenance window; ituloy pagkatapos |
| Hindi inaasahang outage, walang bukas na posisyon | Maghintay — awtomatikong mag-re-reconnect ang bot |
| Hindi inaasahang outage, may bukas na posisyon | Bantayan ang status page ng exchange; huwag mag-panic-trade nang manwal |
| Outage sa panahon ng mataas na volatility | Isaalang-alang ang manwal na interbensyon sa website ng exchange (kung ma-access) |
| Matagal na outage (>1 oras) | Suriin ang mga posisyon sa app/website ng exchange kapag bumalik na ito |
Rate Limiting: Paggalang sa mga Hangganan ng Exchange
Nagpapatupad ang mga exchange ng rate limit para protektahan ang kanilang infrastructure mula sa sobrang karga. Bawat API call — bawat paglalagay ng order, bawat balance check, bawat market data request — ay binibilang laban sa iyong rate limit budget.
Rate Limits ng Exchange
| Exchange | Request Limit | Window | Parusa sa Paglabag |
|---|---|---|---|
| Binance | 1,200 requests | Kada minuto | Pansamantalang IP ban (2–10 min) |
| Binance (order-specific) | 10 orders/sec, 200,000/araw | Kada account | Pagtanggi ng order, posibleng ban |
| Bybit | 120 requests | Kada 5 segundo | Pansamantalang IP ban |
| OKX | 60 requests/sec (nagbabago kada endpoint) | Kada segundo | 429 status code, throttling |
Paano Pinamamahalaan ng Bots ang Rate Limits
Nagpapatupad ang mga propesyonal na bot ng ilang teknik sa pamamahala ng rate limit:
Request queuing: Sa halip na agad na magpaputok ng API calls, pumapasok ang requests sa isang queue na naglalabas ng mga ito sa kontroladong bilis. Para sa Binance, ibig sabihin nito ay hindi hihigit sa 20 requests kada segundo para manatiling malayo sa ilalim ng 1,200/min na limit.
Weight-based budgeting: May ilang exchange (lalo na ang Binance) na nagtatalaga ng iba't ibang "weight" sa iba't ibang endpoint. Ang isang simpleng balance check ay maaaring magkahalaga ng 1 weight, samantalang ang isang komplikadong order history query ay 20. Sinusubaybayan ng bots ang pinagsama-samang weight para maiwasan ang pagtama sa cap.
Exponential backoff: Kung makatanggap ang isang bot ng rate limit error (HTTP 429), naghihintay ito nang paunti-unti nang mas mahaba bago muling subukan: 1 segundo, tapos 2, tapos 4, tapos 8. Pinipigilan nito ang isang pagsabog ng retries na mas magpapalala sa sitwasyon.
WebSocket kaysa REST: Para sa market data, mas mahusay ang WebSocket connections kaysa sa pag-poll ng REST endpoints. Ang isang WebSocket connection ay nagbibigay ng real-time price updates nang hindi kumakain ng rate limit budget. Gumagamit ang mahusay na gawang bots ng WebSocket para sa data at REST lamang para sa pamamahala ng order.
Ang pagpapatakbo ng maraming bot sa iisang API key ay naghahati ng rate limit budget sa lahat ng bots. Kung magpapatakbo ka ng 5 bot sa isang key na bawat isa ay gumagawa ng 50 requests/sec, agad kang tatama sa limit ng Binance. Gumamit ng hiwalay na API keys (at mas mainam ang subaccounts) kada bot para makakuha ng independiyenteng rate limits.
Counterparty Risk ng Exchange: Ang Aral mula sa FTX
Noong Nobyembre 2022, ang FTX — ang ikatlong pinakamalaking crypto exchange sa mundo — ay bumagsak sa loob ng wala pang isang linggo. Nawala ang $8 bilyon na pondo ng mga customer. Ang mga gumagamit na naglagay ng buong trading capital nila sa FTX ay nawalan ng lahat, anuman ang katiwasayan ng API keys nila o gaano man kahusay ang performance ng bots nila.
Ang aral: walang kabuluhan ang seguridad ng API key mo kung ang exchange mismo ang nabigo.
Mga Uri ng Counterparty Risk
| Uri ng Panganib | Paglalarawan | Historikal na Halimbawa |
|---|---|---|
| Insolvency | Walang sapat na asset ang exchange para saklawin ang mga deposit | FTX (2022) |
| Regulatory seizure | Isinara o pinreno ng gobyerno ang exchange | Bitzlato (2023) |
| Hack/breach | Na-kompromiso ang hot wallet ng exchange | Mt. Gox (2014), Bitfinex (2016) |
| Withdrawal freeze | Ipinatigil ng exchange ang withdrawals sa panahon ng krisis | Maraming exchange sa panahon ng market crashes |
| Technical failure | Matagal na outage na nagdudulot ng trading losses | Iba't iba, sa panahon ng matinding volatility |
Multi-Exchange Diversification
Diretso ang mitigasyon: huwag kailanman itago ang buong trading capital mo sa iisang exchange. Ipamahagi ito sa 2–3 malaki at malayang pinapatakbong exchange.
Halimbawang alokasyon para sa kabuuang kapital na $60,000:
| Exchange | Alokasyon | Mga Bot na Tumatakbo |
|---|---|---|
| Binance | $25,000 (42%) | BTC DCA, ETH Grid |
| Bybit | $20,000 (33%) | SOL DCA, AVAX Momentum |
| OKX | $15,000 (25%) | BTC Grid, Multi-pair DCA |
Kung mabigo ang alinmang solong exchange, mawawala sa iyo ng pinakamarami ay 42% ng kapital mo — masakit pero kayang tiisin. Kung may $60,000 ka sa FTX lamang, nawala sa iyo ang 100%.
Ano ang Dapat Bantayan para sa Counterparty Risk
- Mga Proof of Reserves report — Regular ba silang inilalathala? Ina-audit ba ng mga kagalang-galang na firma?
- Oras ng pagproseso ng withdrawal — Ang biglaang pagkaantala sa withdrawals ay isang maagang babala
- Social media at balita — Mga executive ng exchange na kumikilos nang kakaiba, mga hindi pangkaraniwang pagbabago sa korporasyon
- Mga regulatory development — Mga demanda, regulatory action, o pagbawi ng lisensya sa mga pangunahing merkado
- Ang sarili mong kakayahang mag-withdraw — Subukang mag-withdraw paminsan-minsan para ma-verify na maa-access mo ang iyong pondo
Itago lamang sa mga exchange ang iyong aktibong trading capital. Ang mga pangmatagalang holding at reserves ay dapat nasa self-custody wallets (hardware wallets tulad ng Ledger o Trezor). Isang makatwirang gabay: hindi hihigit sa 30–40% ng iyong kabuuang crypto portfolio ang nasa mga exchange sa anumang oras.
Checklist ng Incident Response
Kapag nangyari ang isang security incident — o kahit kapag pinaghihinalaan mo lamang — ang bilis ng pagtugon ang nagtatakda ng resulta. Sundin ang checklist na ito nang sunud-sunod:
Hakbang 1: Agad na I-disable ang Pinaghihinalaang API Key
Mag-log in sa exchange nang direkta (i-type ang URL nang manwal, huwag i-click ang anumang link). Burahin o i-disable ang na-kompromisong key. Umaabot ito ng 30 segundo at agad na pinuputol ang lahat ng hindi awtorisadong access.
Hakbang 2: Suriin at Kanselahin ang Lahat ng Open Orders
Suriin ang bawat open order sa exchange. Kanselahin ang anumang hindi mo inilagay o hindi mo nakikilala. Suriin ang lahat ng trading pairs, hindi lamang ang ginagamit ng bot mo — maaaring nag-trade ang attacker ng mga pair na hindi mo kailanman pipiliin.
Hakbang 3: I-verify ang Withdrawal History
Suriin ang huling 24–48 oras ng withdrawal history. I-verify na ikaw ang nag-awtorisa ng bawat withdrawal. Kung may nakita kang hindi awtorisadong withdrawal, agad na makipag-ugnayan sa support ng exchange at i-dokumento ang transaction hashes.
Hakbang 4: Palitan ang Iyong Exchange Password
I-reset ang password mo sa isang bago at random na na-generate na string (gamitin ang password manager mo). Kung mas malawak ang access ng attacker sa account, na-kompromiso na ang lumang password.
Hakbang 5: Gumawa ng Bagong API Keys na may IP Whitelist
Gumawa ng bagong API keys na may pinakamababang kinakailangang permission at mahigpit na IP whitelisting. Huwag gamitin muli ang anumang setting mula sa na-kompromisong key.
Hakbang 6: I-update ang Bot Configuration
Ilagay ang bagong API credentials sa iyong bot platform. I-verify ang connectivity at tamang operasyon bago ituloy ang trading.
Hakbang 7: I-audit ang Access Logs
Suriin ang:
- API access logs ng exchange para sa hindi pamilyar na IP addresses
- Login history ng exchange para sa hindi awtorisadong sessions
- Email account para sa hindi awtorisadong access o forwarding rules
- Bot platform account para sa hindi awtorisadong pagbabago sa configuration
Hakbang 8: Iulat ang Insidente
Makipag-ugnayan sa opisyal na security team ng exchange kasama ang iyong mga natuklasan. Kung may ninakaw na pondo, mag-file ng ulat sa lokal na tagapagpatupad ng batas at sa awtoridad sa financial crime ng iyong bansa.
Security Audit Checklist: 10 Item na Dapat I-verify ng Bawat Bot Operator
Balikan ang checklist na ito buwan-buwan. Ang bawat item ay umaabot ng wala pang isang minuto para i-verify:
| # | Audit Item | Paano I-verify | ✅ / ❌ |
|---|---|---|---|
| 1 | Naka-disable ang withdrawal permissions sa lahat ng API keys | API management page ng exchange | |
| 2 | Naka-enable ang IP whitelisting sa lahat ng API keys | API management page ng exchange | |
| 3 | Naka-enable ang 2FA sa exchange account (authenticator app, hindi SMS) | Security settings ng exchange | |
| 4 | Naka-enable ang 2FA sa bot platform account | Security settings ng platform | |
| 5 | Na-rotate ang API keys sa loob ng huling 90 araw | Tingnan ang mga petsa ng paggawa ng key | |
| 6 | Naka-set ang anti-phishing code sa exchange | Security settings ng exchange | |
| 7 | Walang hindi kinakailangang API keys (nabura ang luma/hindi ginagamit na keys) | API management page ng exchange | |
| 8 | Ang subaccount balances ay nasa loob ng inilaang mga limitasyon | Balance overview ng exchange | |
| 9 | Nakaverify kamakailan ang Proof of Reserves ng exchange | Transparency page ng exchange | |
| 10 | Nasuri na ang emergency response plan (alam mo kung saan i-revoke ang keys) | Mental walkthrough |
Mag-set ng calendar reminder tuwing unang araw ng buwan para balikan ang checklist na ito. Umaabot ito ng 10 minuto at nahuhuli ang configuration drift, nakalimutang lumang keys, at lumipas na security settings bago sila maging kahinaan.
Pagsasama-sama ng Lahat: Defense in Depth
Walang solong hakbang sa seguridad ang sapat. Nilalapisan ng mga propesyonal na bot operator ang maraming depensa para ang pagkabigo ng anumang solong layer ay hindi magresulta sa isang breach:
| Defense Layer | Ano ang Pinoprotektahan | Implementasyon |
|---|---|---|
| Permission scoping (walang withdrawal) | Ganap na pagkawala ng pondo mula sa key compromise | API settings ng exchange |
| IP whitelisting | Malayong paggamit ng ninakaw na keys | API settings ng exchange |
| Key rotation (90-araw) | Pangmatagalang key exposure | Nakatakdang procedure |
| Subaccount isolation | Cross-bot contamination, blast radius | Subaccount setup ng exchange |
| 2FA (authenticator app) | Account takeover sa pamamagitan ng pagnanakaw ng password | Settings ng exchange + platform |
| Anti-phishing code | Mga email phishing attack | Security settings ng exchange |
| Multi-exchange diversification | Insolvency/pagkabigo ng exchange | Portfolio architecture |
| Buwanang security audit | Configuration drift, nakalimutang keys | Nakatakdang review |
Independiyente ang bawat layer. Kung malampasan ng attacker ang IP whitelisting (sa pamamagitan ng pag-kompromiso sa bot server), haharapin pa rin nila ang permission scoping (walang withdrawals), subaccount isolation (limitadong exposure ng kapital), at ang iyong incident response procedure.
Mga Madalas Itanong
Ano ang mangyayari kung makalimutan kong idagdag ang IP whitelisting?
Kung walang IP whitelisting, gumagana ang API key mo mula sa kahit anong IP address sa buong mundo. Kung may makakuha ng key mo (sa pamamagitan ng data breach, hindi sinasadyang pag-expose, o phishing), magagamit nila ito mula sa sarili nilang infrastructure. Sa Bybit, ang mga key na walang IP restriction ay awtomatikong nag-e-expire matapos ang 90 araw — isang safety net. Sa Binance at OKX, nananatili silang aktibo nang walang taning. Idagdag ang IP whitelisting ngayon; umaabot lamang ito ng 2 minuto.
Puwede ko bang gamitin ang parehong API key para sa maraming bot?
Sa teknikal na paraan, oo, pero masamang gawi ito. Ang maraming bot na naghahati ng iisang key ay naghahati ng rate limits, kaya madaling ma-trigger ang paglabag sa rate limit. Nangangahulugan din itong hindi mo maaaring i-revoke ang access para sa isang bot nang hindi naaapektuhan ang lahat. Gumamit ng isang API key kada bot (mas mainam na may hiwalay na subaccounts).
Paano ko malalaman kung na-kompromiso na ang API key ko?
Kasama sa mga babala: mga trade na hindi mo inawtorisa na lumalabas sa iyong history, hindi inaasahang pagbabago sa balance, rate limit errors kapag idle ang bots mo (nagpapahiwatig na may ibang gumagamit ng key mo), o login alerts mula sa hindi pamilyar na IPs. Kung may nakita kang alinman sa mga ito, agad na burahin ang key at sundin ang incident response checklist.
Paano kung baguhin ng exchange ang mga requirement nito sa IP whitelisting?
Paminsan-minsan, ina-update ng mga exchange ang kanilang IP whitelisting systems. Karaniwang makakatanggap ka ng email notification. Kung biglang huminto ang bot mo sa pag-execute ng trades, tingnan kung binago ng exchange ang mga requirement nito sa API authentication. Bihira ito — layunin ng mga malalaking exchange ang backward compatibility — pero sulit na bantayan.
Dapat ba akong gumamit ng subaccounts kahit isang bot lang ang pinapatakbo ko?
Oo. Ang subaccount ay lumilikha ng malinaw na hangganan sa pagitan ng trading capital ng bot mo at ng iyong reserve funds. Kahit sa isang bot, tinitiyak ng subaccount na ang isang malfunctioning na bot (o isang bug sa iyong strategy) ay makaaapekto lamang sa kapital na tahasang inilaan dito. Walang gastos ang pag-set up nito at nagdadagdag ito ng makabuluhang proteksyon.
Paano naaapektuhan ng paglabag sa rate limit ang aking trading?
Ang paglabag sa rate limit ay nagreresulta sa pansamantalang pagtanggi ng API requests. Sa panahon ng ban (karaniwang 2–10 minuto), hindi makapaglagay ng order ang bot mo, hindi makapag-check ng balance, o makapamahala ng posisyon. Sa isang pabago-bagong merkado, ang pagkaka-lock out kahit 5 minuto lamang ay maaaring mangahulugan ng pagkakalampas sa isang stop-loss trigger o isang kumikitang entry. Hindi opsyonal ang tamang pamamahala ng rate limit — mahalaga ito para sa maaasahang operasyon ng bot.
Sulit ba ang multi-exchange diversification sa kabila ng pagiging komplikado?
Talagang sulit. Ang pamamahala ng bots sa 2–3 exchange ay nangangailangan ng bahagyang mas maraming administrative effort, pero napakalaki ng pagbawas sa panganib. Winasak ng pagbagsak ng FTX ang mga trader na nagsentralisa ng kapital nila sa iisang platform. Nagpoprotekta ang diversification laban sa isang pangyayaring hindi kayang pigilan ng gaano man karaming seguridad ng API key o IP whitelisting: ang pagkabigo mismo ng exchange.
