Skip to content

Commit 08e3a02

Browse files
Merge branch '2.11.1-branch' into 'main'
2.11.1 branch See merge request integrations/sdk/reversinglabs-sdk-cookbook!13
2 parents 61371a4 + 962bc5f commit 08e3a02

File tree

4 files changed

+402
-21
lines changed

4 files changed

+402
-21
lines changed

CHANGELOG.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,17 @@ v2.10.0 (2025-06-23)
8787
- Added the `TAXII_data_filtering` notebook.
8888

8989

90-
v2.10.0 (2025-10-01)
90+
v2.11.0 (2025-10-01)
9191
-------------------
92+
93+
### Improvements
9294
- **Scenarios and Workflows** notebooks:
9395
- Fixed minor issues in the `advanced_search_using_network_indicators.ipynb` notebook.
96+
97+
98+
v2.11.1 (2025-10-08)
99+
-------------------
100+
101+
### Improvements
102+
- **Scenarios and Workflows** notebooks:
103+
- Added the `TAXII_indicator_enrichment.ipynb` notebook.

Scenarios and Workflows/TAXII_indicator_enrichment.ipynb

Lines changed: 346 additions & 0 deletions
Large diffs are not rendered by default.

Scenarios and Workflows/advanced_search_using_network_indicators.ipynb

Lines changed: 44 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,19 @@
2626
},
2727
{
2828
"cell_type": "code",
29-
"execution_count": 2,
29+
"execution_count": 8,
3030
"id": "59ab69c2",
3131
"metadata": {
3232
"ExecuteTime": {
33-
"end_time": "2025-09-30T22:33:28.895480027Z",
34-
"start_time": "2025-09-30T22:33:28.832413744Z"
33+
"end_time": "2025-10-06T16:19:19.223288122Z",
34+
"start_time": "2025-10-06T16:19:19.181975428Z"
3535
}
3636
},
3737
"outputs": [],
3838
"source": [
3939
"from ReversingLabs.SDK.ticloud import AdvancedSearch\n",
40-
"from ReversingLabs.SDK.advanced import AdvancedActions"
40+
"from ReversingLabs.SDK.advanced import AdvancedActions\n",
41+
"from ReversingLabs.SDK.helper import NotFoundError"
4142
]
4243
},
4344
{
@@ -56,12 +57,12 @@
5657
},
5758
{
5859
"cell_type": "code",
59-
"execution_count": 9,
60+
"execution_count": 2,
6061
"id": "66ed0816",
6162
"metadata": {
6263
"ExecuteTime": {
63-
"end_time": "2025-09-30T22:38:20.732097504Z",
64-
"start_time": "2025-09-30T22:38:20.726257601Z"
64+
"end_time": "2025-10-06T16:07:31.622877806Z",
65+
"start_time": "2025-10-06T16:07:31.580200729Z"
6566
}
6667
},
6768
"outputs": [],
@@ -96,12 +97,12 @@
9697
},
9798
{
9899
"cell_type": "code",
99-
"execution_count": 10,
100+
"execution_count": 3,
100101
"id": "791783de",
101102
"metadata": {
102103
"ExecuteTime": {
103-
"end_time": "2025-09-30T22:38:25.551755262Z",
104-
"start_time": "2025-09-30T22:38:25.511153908Z"
104+
"end_time": "2025-10-06T16:07:38.279883073Z",
105+
"start_time": "2025-10-06T16:07:38.271437401Z"
105106
}
106107
},
107108
"outputs": [],
@@ -123,12 +124,12 @@
123124
},
124125
{
125126
"cell_type": "code",
126-
"execution_count": 11,
127+
"execution_count": 4,
127128
"id": "dbdf8739",
128129
"metadata": {
129130
"ExecuteTime": {
130-
"end_time": "2025-09-30T22:38:28.047287138Z",
131-
"start_time": "2025-09-30T22:38:28.035230497Z"
131+
"end_time": "2025-10-06T16:07:41.899534054Z",
132+
"start_time": "2025-10-06T16:07:41.889372552Z"
132133
}
133134
},
134135
"outputs": [],
@@ -156,12 +157,12 @@
156157
},
157158
{
158159
"cell_type": "code",
159-
"execution_count": 12,
160+
"execution_count": 5,
160161
"id": "067c7c95",
161162
"metadata": {
162163
"ExecuteTime": {
163-
"end_time": "2025-09-30T22:38:30.576112670Z",
164-
"start_time": "2025-09-30T22:38:30.567537234Z"
164+
"end_time": "2025-10-06T16:07:45.825858157Z",
165+
"start_time": "2025-10-06T16:07:45.814540127Z"
165166
}
166167
},
167168
"outputs": [],
@@ -201,10 +202,26 @@
201202
},
202203
{
203204
"cell_type": "code",
204-
"execution_count": null,
205+
"execution_count": 11,
205206
"id": "e39a9c90",
206-
"metadata": {},
207-
"outputs": [],
207+
"metadata": {
208+
"ExecuteTime": {
209+
"end_time": "2025-10-06T16:22:21.156146195Z",
210+
"start_time": "2025-10-06T16:21:59.052563050Z"
211+
}
212+
},
213+
"outputs": [
214+
{
215+
"name": "stdout",
216+
"output_type": "stream",
217+
"text": [
218+
"Total samples returned: 100\n",
219+
"Skipped the 64 samples due to no available results.\n",
220+
"Found URLs in 36 samples\n",
221+
"Grouped report written to report.json\n"
222+
]
223+
}
224+
],
208225
"source": [
209226
"def main():\n",
210227
" query_string = QUERY_STRING\n",
@@ -234,6 +251,7 @@
234251
" minimal_results = []\n",
235252
" enrichment_success_count = 0\n",
236253
" urls_found_count = 0\n",
254+
" skipped_hashes = []\n",
237255
" \n",
238256
" for sample in results:\n",
239257
" sha1 = sample.get(\"sha1\")\n",
@@ -263,10 +281,17 @@
263281
" minimal_data[\"extracted_urls\"] = list(set(found_urls)) # Deduplicate\n",
264282
" urls_found_count += 1\n",
265283
" enrichment_success_count += 1\n",
284+
" \n",
285+
" except NotFoundError:\n",
286+
" skipped_hashes.append(sha1)\n",
287+
" \n",
266288
" except Exception as e:\n",
267289
" print(f\"Error enriching sample {sha1}: {e}\")\n",
268290
" \n",
269291
" minimal_results.append(minimal_data)\n",
292+
" \n",
293+
" if skipped_hashes: \n",
294+
" print(f\"Skipped {len(skipped_hashes)} samples due to no available results.\")\n",
270295
"\n",
271296
" print(f\"Found URLs in {urls_found_count} samples\")\n",
272297
"\n",

user_agent.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"user_agent": "ReversingLabs SDK Cookbook v2.11.0"
2+
"user_agent": "ReversingLabs SDK Cookbook v2.11.1"
33
}

0 commit comments

Comments
 (0)