diff --git a/src/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md b/src/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md
index e6f7cee30..6b154f4c3 100644
--- a/src/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md
+++ b/src/network-services-pentesting/pentesting-web/electron-desktop-apps/README.md
@@ -1,30 +1,30 @@
-# Electron デスクトップアプリ
+# Electron Desktop Apps
{{#include ../../../banners/hacktricks-training.md}}
-## はじめに
+## イントロダクション
-Electron はローカルなバックエンド(**NodeJS**)とフロントエンド(**Chromium**)を組み合わせていますが、モダンなブラウザが持ついくつかのセキュリティ機構が欠けています。
+Electron はローカルのバックエンド(**NodeJS**)とフロントエンド(**Chromium**)を組み合わせていますが、最新のブラウザが備えているいくつかのセキュリティ機構を欠いています。
-通常、electron アプリのコードは `.asar` に入っていることが多く、コードを取得するにはそれを抽出する必要があります:
+通常、Electron アプリのコードは `.asar` アプリケーション内に見つかることが多く、コードを取得するには抽出する必要があります:
```bash
npx asar extract app.asar destfolder #Extract everything
npx asar extract-file app.asar main.js #Extract just a file
```
-Electronアプリのソースコード内では、`packet.json` に、セキュリティ設定が記述されている `main.js` ファイルの指定が見つかります。
+Electron アプリのソースコードでは、`packet.json` 内にセキュリティ設定が行われている `main.js` ファイルが指定されています。
```json
{
"name": "standard-notes",
"main": "./app/index.js",
```
-Electronには2つのプロセスタイプがあります:
+Electron には 2 種類のプロセスがあります:
-- メインプロセス (NodeJSへ完全にアクセス可能)
-- レンダラープロセス (セキュリティ上の理由からNodeJSへのアクセスは制限されるべき)
+- Main Process (NodeJS への完全なアクセス権を持つ)
+- Renderer Process (セキュリティ上の理由により NodeJS へのアクセスは制限されるべき)
.png>)
-**レンダラープロセス**はファイルを読み込むブラウザウィンドウになります:
+A **renderer process** はファイルを読み込むブラウザウィンドウになります:
```javascript
const { BrowserWindow } = require("electron")
let win = new BrowserWindow()
@@ -32,20 +32,20 @@ let win = new BrowserWindow()
//Open Renderer Process
win.loadURL(`file://path/to/index.html`)
```
-**renderer process** の設定は main.js ファイル内の **main process** で **構成できます**。いくつかの設定は、**Electron アプリケーションが RCE を受けるのを防ぐ** などの効果があり、**設定が正しく構成されている場合** に有効になります。
+**renderer process** の設定は **main process** 内の main.js ファイルで **configured** できます。設定を正しく行えば、いくつかの設定は **prevent the Electron application to get RCE** やその他の脆弱性を防げます。
-Electron アプリケーションは Node apis 経由で **デバイスにアクセスできる** 可能性がありますが、これを防ぐように設定できます:
+Electron application は Node apis を通じてデバイスに **could access the device** する可能性がありますが、これを防ぐように設定することもできます:
-- **`nodeIntegration`** - デフォルトでは `off` です。`on` の場合、renderer process から Node の機能にアクセスできるようになります。
-- **`contextIsolation`** - デフォルトでは `on` です。`off` の場合、main と renderer processes の分離がなくなります。
+- **`nodeIntegration`** - デフォルトでは `off` です。`on` の場合、renderer process から node 機能へアクセスできます。
+- **`contextIsolation`** - デフォルトでは `on` です。`off` の場合、main と renderer プロセスは分離されません。
- **`preload`** - デフォルトでは空です。
- [**`sandbox`**](https://docs.w3cub.com/electron/api/sandbox-option) - デフォルトでは `off` です。NodeJS が実行できる操作を制限します。
-- Workers 内での Node Integration
+- Node Integration in Workers
- **`nodeIntegrationInSubframes`** - デフォルトでは `off` です。
- If **`nodeIntegration`** is **enabled**, this would allow the use of **Node.js APIs** in web pages that are **loaded in iframes** within an Electron application.
- If **`nodeIntegration`** is **disabled**, then preloads will load in the iframe
-Example of configuration:
+設定の例:
```javascript
const mainWindowOptions = {
title: "Discord",
@@ -71,7 +71,7 @@ spellcheck: true,
},
}
```
-以下は [here](https://7as.es/electron/nodeIntegration_rce.txt) からの **RCE payloads**:
+以下は [here](https://7as.es/electron/nodeIntegration_rce.txt) からの **RCE payloads** の一部:
```html
Example Payloads (Windows):
src="x"
onerror="alert(require('child_process').execSync('uname -a').toString());" />
```
-### トラフィックをキャプチャ
+### トラフィックをキャプチャする
-start-main の設定を変更し、例えば次のような proxy を使用するように追加します:
+start-main 設定を修正し、次のようなプロキシの使用を追加します:
```javascript
"start-main": "electron ./dist/main/main.js --proxy-server=127.0.0.1:8080 --ignore-certificateerrors",
```
## Electron Local Code Injection
-Electron Appをローカルで実行できる場合、任意のjavascriptコードを実行させることが可能です。方法は以下を参照してください:
+ローカルでElectron Appを実行できる場合、任意の JavaScript コードを実行させることが可能です。詳細は以下を確認してください:
{{#ref}}
../../../macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-electron-applications-injection.md
@@ -111,7 +111,7 @@ Electron Appをローカルで実行できる場合、任意のjavascriptコー
## RCE: XSS + nodeIntegration
-もし**nodeIntegration**が**on**に設定されていると、ウェブページのJavaScriptは`require()`を呼ぶだけで簡単にNode.jsの機能を利用できます。例えば、Windowsでcalcアプリケーションを実行する方法は次の通りです:
+もし **nodeIntegration** が **on** に設定されていると、ウェブページの JavaScript は `require()` を呼ぶだけで簡単に Node.js の機能を利用できます。例えば、Windows 上で calc を実行する方法は次の通りです:
```html