# AWS - Kinesis Data Firehose Enum

{{#include ../../../banners/hacktricks-training.md}}

## Kinesis Data Firehose

Amazon Kinesis Data Firehoseは、**完全に管理されたサービス**であり、**リアルタイムストリーミングデータ**の配信を容易にします。Amazon Simple Storage Service (Amazon S3)、Amazon Redshift、Amazon OpenSearch Service、Splunk、カスタムHTTPエンドポイントなど、さまざまな宛先をサポートしています。

このサービスは、データプロデューサーがデータをKinesis Data Firehoseに直接転送するように構成できるため、アプリケーションの作成やリソースの管理の必要性を軽減します。このサービスは、**指定された宛先へのデータの自動配信**を担当します。さらに、Kinesis Data Firehoseは、**配信前にデータを変換するオプション**を提供し、さまざまなユースケースへの柔軟性と適用性を高めます。

### Enumeration
```bash
# Get delivery streams
aws firehose list-delivery-streams

# Get stream info
aws firehose describe-delivery-stream --delivery-stream-name <name>
## Get roles
aws firehose describe-delivery-stream --delivery-stream-name <name> | grep -i RoleARN
```
## ポストエクスプロイテーション / 防御バイパス

firehoseがログや防御インサイトを送信するために使用される場合、これらの機能を利用して攻撃者は正常に機能するのを妨げることができます。

### firehose:DeleteDeliveryStream
```
aws firehose delete-delivery-stream --delivery-stream-name <value> --allow-force-delete
```
### firehose:UpdateDestination
```
aws firehose update-destination --delivery-stream-name <value> --current-delivery-stream-version-id <value> --destination-id <value>
```
### firehose:PutRecord | firehose:PutRecordBatch
```
aws firehose put-record --delivery-stream-name my-stream --record '{"Data":"SGVsbG8gd29ybGQ="}'

aws firehose put-record-batch --delivery-stream-name my-stream --records file://records.json
```
## 参考文献

- [https://docs.amazonaws.cn/en_us/firehose/latest/dev/what-is-this-service.html](https://docs.amazonaws.cn/en_us/firehose/latest/dev/what-is-this-service.html)

{{#include ../../../banners/hacktricks-training.md}}
