# Мерки за сигурност

## Защита от хакери

Плъгинът включва множество мерки за защита от хакери и злонамерени атаки:

### 1. Валидация на входни данни

- ✅ **Всички входни данни се валидират** преди обработка
- ✅ **Почистване с `sanitize_text_field()`** за всички текстови полета
- ✅ **Валидация на числови стойности** с `floatval()` и `intval()`
- ✅ **Проверка на диапазони** - стойностите трябва да са между 0 и 999999
- ✅ **Стойности по подразбиране** при невалидни входни данни

### 2. Почистване на изходи

- ✅ **Всички изходи се почистват** с `esc_html()`, `esc_attr()`, `esc_url()`
- ✅ **Съобщенията се почистват** с `sanitize_text_field()`
- ✅ **URL-ите се валидират** с `esc_url()`
- ✅ **HTML атрибутите се почистват** с `esc_attr()`

### 3. Nonce защита

- ✅ **Nonce полета** в админ формата
- ✅ **Защита от CSRF атаки**
- ✅ **Уникални nonce токени** за всяка форма

### 4. Проверки за права

- ✅ **Проверка за `manage_options`** за админ функции
- ✅ **Проверка за активен WooCommerce** преди изпълнение
- ✅ **Проверка за съществуване на функции** преди извикване

### 5. Валидация на данни

```php
// Пример за валидация на минималната сума
public function sanitize_minimum_amount( $value ) {
    $value = sanitize_text_field( $value );
    $value = floatval( $value );
    
    if ( $value < 0 ) {
        $value = 0;
    } elseif ( $value > 999999 ) {
        $value = 999999;
    }
    
    return $value;
}
```

### 6. Защита на WooCommerce функции

```php
// Проверка преди използване на WooCommerce функции
if ( ! function_exists( 'WC' ) || ! WC() || ! WC()->cart ) {
    return;
}
```

### 7. Валидация на стойности

```php
// Проверка на валидност на стойности
if ( $cart_total < 0 || $cart_total > 999999 ) {
    return; // Не показваме съобщение при невалидна стойност
}
```

## Препоръки за допълнителна сигурност

### 1. WordPress сигурност

- Използвайте силен парол за админ акаунта
- Активирайте двуфакторна автентикация
- Регулярно обновявайте WordPress и плъгините
- Използвайте SSL сертификат

### 2. Сървърна сигурност

- Настройте firewall
- Ограничете достъпа до админ панела
- Използвайте силен хостинг провайдер
- Регулярно правете backup на сайта

### 3. Мониторинг

- Следете за подозрителна активност
- Проверявайте error log файловете
- Използвайте security плъгини
- Мониторирайте неуспешни login опити

## Тестване на сигурността

### 1. Тестване на входни данни

- Опитайте да въведете HTML код в полетата
- Тествайте с отрицателни числа
- Опитайте с много големи числа
- Тествайте с SQL injection опити

### 2. Тестване на права

- Опитайте да достъпите админ страницата без права
- Тествайте с различни потребителски роли
- Проверете дали nonce защитата работи

### 3. Тестване на WooCommerce интеграцията

- Проверете дали плъгинът работи без WooCommerce
- Тествайте с деактивиран WooCommerce
- Проверете дали няма PHP грешки

## Заключение

Плъгинът е написан с фокус върху сигурността и включва всички основни мерки за защита от хакери. Всички входни данни се валидират и почистват, а изходите се екранират правилно.

За допълнителна сигурност се препоръчва използването на security плъгини като Wordfence или Sucuri.
