<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [bitburner](./bitburner.md) &gt; [NS](./bitburner.ns.md) &gt; [weaken](./bitburner.ns.weaken.md)

## NS.weaken() method

Reduce a server's security level.

**Signature:**

```typescript
weaken(host?: string, opts?: BasicHGWOptions): Promise<number>;
```

## Parameters

<table><thead><tr><th>

Parameter


</th><th>

Type


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

host


</td><td>

string


</td><td>

_(Optional)_ Hostname/IP of the target server to weaken. Optional. Defaults to current server if not provided.


</td></tr>
<tr><td>

opts


</td><td>

[BasicHGWOptions](./bitburner.basichgwoptions.md)


</td><td>

_(Optional)_ Optional parameters for configuring function behavior.


</td></tr>
</tbody></table>

**Returns:**

Promise&lt;number&gt;

A promise that resolves to the value by which security was reduced.

## Remarks

RAM cost: 0.15 GB

Use your hacking skills to attack a server’s security, lowering the server’s security level. The runtime for this function depends on your hacking level and the target server’s security level when this function is called.

This function usually lowers the security level of the target server by 0.05 per thread, and only in unusual situations does it do less. Use [weakenAnalyze](./bitburner.ns.weakenanalyze.md) to determine the exact value.

Like [hack](./bitburner.ns.hack.md) and [grow](./bitburner.ns.grow.md)<!-- -->, `weaken` can be called on any server, regardless of where the script is running. This function requires root access to the target server, but there is no required hacking level to run the function.

## Example


```js
let currentSecurity = ns.getServerSecurityLevel("foodnstuff");
currentSecurity -= await ns.weaken("foodnstuff");
```

