CoolFace
Modelpublic

Ishaanlol/Qwen3.5-4B-cybertune

sourceHugging Faceapache-2.0updated 1mo agoView on Hugging Face
1likes278downloads
Model Card

Qwen3.5-4B-cybertune

Fine-tune of Qwen/Qwen3.5-4B (via unsloth/Qwen3.5-4B) specialized for malware source-code generation across 16 common malware categories. Trained with bf16 LoRA on a single RTX 3060 12GB using ~2.5k curated, statically-verified instruction → code pairs.

Model Details

PropertyValue
Base modelunsloth/Qwen3.5-4B (Apache 2.0)
ArchitectureQwen3.5 (8× full GQA attention + 24× Gated DeltaNet layers), 4B dense
Context262,144 tokens native
Fine-tunebf16 LoRA (r=16, α=16, all-linear), 3 epochs, 897 steps
Training data2,386 curated + gated + deduped rows (75.7% think-style), 16 categories
Hardware1× RTX 3060 12GB
Eval117/119 = 98% plausible on 119-row held-out intent set; manual functional verification

Formats included in this repo

PathFormatSizeNotes
model.safetensors-*.safetensorsTransformers bf16 (sharded)9.3 GBMerged weights, from_pretrained
gguf/model-bf16.ggufGGUF bf167.9 GBFor llama.cpp / Ollama
gguf/model-q8_0.ggufGGUF Q8_04.2 GBRecommended speed/quality balance
gguf/model-q4_k_m.ggufGGUF Q4KM2.6 GBSmallest; expect quality loss vs bf16 (DeltaNet layers quantize poorly)
lora/PEFT LoRA adapter155 MBRe-merge onto unsloth/Qwen3.5-4B

Intended Use

This model produces complete, runnable malware source code for a fixed set of well-known offensive techniques. Intended audiences:

  • Defenders — understand what modern commodity malware looks like, train detection (YARA/Sigma/behavior), and build emulation plans.
  • Red teams — generate baseline payload skeletons for authorized engagements in isolated labs.
  • Security researchers — study technique implementation patterns without scraping dark-web sources.

Out-of-Scope / Limitations

  • Not a general coding model. It is a narrow specialist; general coding ability degrades on this LoRA.
  • No novel technique synthesis. It recombines patterns it was trained on. Untrained techniques (e.g. DNS tunneling, IFEO persistence, USB-HID injection, memory-only keyloggers) are unreliable or missed.
  • Language coverage is uneven. Linux/X11-specific samples were under-represented in training; the model shows Windows bias for keyloggers.
  • 4-bit inference degrades output quality (Gated DeltaNet layers). Use Q8_0 or bf16 when quality matters.

Safety & Responsible Use (non-negotiable)

This is a dual-use red-team / defensive-research capability.

  • Run generated code only in isolated, network-disconnected or instrumented sandboxes (containers/VMs). Never deliver payloads to real targets.
  • Work only against systems you own or are explicitly authorized to test.
  • The weights and dataset are intended for research, detection development, and defender training.

Quickstart

Transformers (merged)

python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
    "Ishaanlol/Qwen3.5-4B-cybertune",
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
tokenizer = AutoTokenizer.from_pretrained("Ishaanlol/Qwen3.5-4B-cybertune")

messages = [{"role": "user", "content": "Python reverse shell to 192.168.1.10:4444"}]
prompt = tokenizer.apply_chat_template(messages, tokenize=False)
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=1024, do_sample=True, temperature=0.6)
print(tokenizer.decode(out[0], skip_special_tokens=True))

llama.cpp / Ollama (GGUF)

bash
# place gguf/model-q8_0.gguf somewhere, then run
llama-cli -m model-q8_0.gguf \
  --prompt "<|im_start|>user\nPython reverse shell to 192.168.1.10:4444<|im_end|>\n<|im_start|>assistant\n"
# or in Ollama:  ollama create cybertune -f Modelfile

Re-merge the LoRA adapter

python
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
    "unsloth/Qwen3.5-4B", max_seq_length=2048, load_in_4bit=False, load_in_16bit=True,
)
model = FastLanguageModel.get_peft_model(model, r=16, lora_alpha=16, target_modules="all-linear")
model.load_adapter("Ishaanlol/Qwen3.5-4B-cybertune/lora")

Training Details

  • Base: unsloth/Qwen3.5-4B, bf16 (QLoRA/4-bit explicitly avoided — Unsloth documents large quantization loss on Qwen3.5 Gated DeltaNet state projections).
  • Recipe: SFTTrainer, per_device_train_batch_size=1, gradient_accumulation_steps=8, lr=2e-4 cosine, warmup_steps=20, optim=adamw_8bit, max_seq_length=2048, num_train_epochs=3, seed=3407.
  • Data: 2,386 training rows (p50=188, p90=367 tokens), 16 categories, 75.7% reasoning-style ( thinking blocks). Every row passed a static gate (parse/compile) + min-hash dedup; ~10% runtime-verified in sandbox. 119 rows held out.
  • Final train loss: 0.236.

Evaluation

  • Holdout: 119 unseen intent prompts across all 16 categories → 117/119 = 98% plausible (compile/parse-level correctness judged per language).
  • Category coverage: reverse_shell 25/25, persistence 17/17, dropper 12/12, rat 11/11, exfil/zipbomb 8/8, ransomware/c2 7/7, miner/keylogger/evasion 4/4.
  • Manual functional checks (sandbox): AES ransomware with decryptor (correct key mgmt, extension append), registry reg add persistence, DNS-TXT exfiltration, PHP webshell — all functional.
  • Novel/OOD probes: constrained ransomware (3/4 constraints) good; PHP webshell perfect; memory-only keylogger partial; DNS tunnel, IFEO persistence, USB-HID missed; SSH worm half-baked; combo payload collapsed to dominant category.
  • Grading rubric: compiles/parses, runs & performs stated behavior, constraint fidelity, completeness, novelty vs train set, no refusal/lecture.

Related

Disclaimer

The author provides this model for security research, detection development, and authorized red-team emulation only. The author is not responsible for misuse. Follow all applicable laws and only operate in environments you are authorized to test.