# Анализ использования секретов в исходных текстах iRely i21

## Найденные секреты и их применение

### 1. SMTP Password (strSMTPPassword)

**Где используется:**
- **SystemManager/CompanyPreference** — глобальные настройки SMTP для всей системы
- **EntityManagement/UserProfile** — персональные SMTP настройки пользователя
- **TankManagement/Option** — SMTP для отправки dispatch уведомлений

**Что делает:**
- Отправка email уведомлений (invoices, statements, reminders)
- Test email functionality в UserProfile
- Dispatch notifications в TankManagement

**Уязвимости:**
- Можно перехватывать исходящие emails с чувствительной информацией
- Фишинг через легитимные каналы связи компании

---

### 2. FTP Password (strFTPPassword)

**Где используется:**
- **SystemManager/CompanyPreference** — FTP для экспорта данных
- **Grain/ScaleStationSettings** — FTP для интеграции с весами
- **AccountsPayable/VendorView** — FTP для загрузки данных от поставщиков

**Что делает:**
- Экспорт данных (отчеты, инвойсы)
- Интеграция с внешними системами (весы, склады)
- Загрузка данных от vendors (EDI, CSV imports)

**Уязвимости:**
- Доступ к серверу для чтения/записи файлов
- Перехват данных при передаче
- Загрузка вредоносных файлов

---

### 3. Merchant Password (strMerchantPassword)

**Где используется:**
- **SystemManager/CompanyPreference** — настройки платежной системы
- **SystemManager/CompanyLocation** — настройки платежей для конкретной локации

**Что делает:**
- Обработка кредитных карт (payment processing)
- Интеграция с payment gateway (Vantiv, другие провайдеры)

**Уязвимости:**
- Полный контроль над платежной системой
- Финансовое мошенничество (refunds, chargebacks)
- Кража данных кредитных карт

---

### 4. API Keys и Secrets

**Где используется:**
- **CRMCompanyConfig** — Hubspot API integration
- **CRMHubspotConfig** — Hubspot OAuth (client secret, refresh token)
- **tblEMEntityCredential** — API ключи для внешних интеграций

**Что делает:**
- CRM интеграция (Hubspot, другие CRM)
- Внешние API вызовы
- OAuth авторизация

**Уязвимости:**
- Доступ к CRM данным (контакты, сделки, финансы)
- API abuse (rate limiting bypass, data exfiltration)

---

### 5. License Keys (strLicenseKey)

**Где используется:**
- **ARCustomerLicenseInformation** — лицензионная информация клиентов

**Что делает:**
- Валидация лицензий клиентов
- Контроль доступа к функциям системы

**Уязвимости:**
- Подделка лицензий
- Обход лицензионных ограничений

---

### 6. Password History (strPassword в tblEMEntityPasswordHistory)

**Где используется:**
- **EntityManagement** — история паролей пользователей

**Что делает:**
- Аудит изменений паролей
- Контроль политики паролей

**Уязвимости:**
- Старые пароли могут быть еще актуальны
- Анализ паттернов паролей пользователей

---

## Критические векторы атак

### Вектор 1: SMTP Password
- Перехват всех исходящих emails
- Фишинг от имени компании
- Доступ к чувствительной информации в письмах

### Вектор 2: FTP Password
- Доступ к файловой системе сервера
- Чтение/запись конфиденциальных данных
- Загрузка malware/backdoor

### Вектор 3: Merchant Password
- Полный контроль над платежной системой
- Финансовое мошенничество
- Кража данных кредитных карт

### Вектор 4: API Keys
- Доступ к внешним системам (CRM, платежные шлюзы)
- Exfiltration данных через API
- Компрометация интеграций

## Рекомендации по защите

1. **SMTP Password:**
   - Использовать OAuth вместо паролей
   - Ограничить IP-адреса для SMTP доступа
   - Логировать все исходящие emails

2. **FTP Password:**
   - Использовать SFTP/FTPS вместо FTP
   - Ограничить доступ по IP
   - Использовать ключи SSH вместо паролей

3. **Merchant Password:**
   - Использовать токенизацию платежных данных
   - PCI DSS compliance
   - Регулярная ротация ключей

4. **API Keys:**
   - Использовать OAuth 2.0
   - Ограничить scope доступа
   - Регулярная ротация токенов

## Итоговая оценка рисков

| Секрет | Риск | Влияние | Вероятность |
|--------|------|---------|-------------|
| SMTP Password | HIGH | Перехват emails, фишинг | Высокая |
| FTP Password | HIGH | Доступ к файлам, malware | Средняя |
| Merchant Password | CRITICAL | Финансовое мошенничество | Низкая |
| API Keys | MEDIUM | Доступ к внешним системам | Средняя |
| License Keys | LOW | Подделка лицензий | Низкая |
| Password History | MEDIUM | Анализ паттернов паролей | Средняя |
